我们的应用程序将用户偏好保存在独立存储中。
然而,从我们的卸载程序中删除这些文件显然很棘手!
我可以枚举IsolatedStorage中的所有文件(使用MSDN示例代码),找到与我们的强名称密钥相关的文件,并尝试删除/删除它们。不幸的是,这就是崩溃的地方:
未为此商店定义MaxSize。 进行了一项操作 需要访问MaxSize。商店 使用枚举API获得的API不会 有一个明确定义的MaxSize,因为 部分证据用于打开 存储。
任何人都可以帮忙吗?我想我可以花几天时间试图伪造一些证据,让安装人员充当冒名顶替者,但必须有一个更好(更快,更清洁)的方式?!
如果没有,我想我正在回到旧的注册表。
答案 0 :(得分:2)
如果有人想知道答案......
似乎最好的解决方案可能是:
将Isolated Storage代码移动到一个单独的程序集中,该程序集可以从主应用程序和卸载程序中调用,以便它们都可以访问数据。
使用命令行标志添加执行主应用程序的方法,该标志指示它删除隔离存储文件并退出,然后从卸载程序中调用它。
或保存所有这些搞乱和完全放弃隔离存储