我创建了一个可以保存本地驱动器和隔离存储数据的应用程序。然后我通过使用 FullTrust 的 ClickOnce 部署对其进行了测试。这工作正常,但是当我将其设置为 PartialTrust(Internet 区域)时,应用程序无法启动。
如何解决这个问题呢?
我尝试创建空窗体 Windows 应用程序,然后使用 PartialTrust 进行部署,运行应用程序时仍然出错。
我创建了一个可以保存本地驱动器和隔离存储数据的应用程序。然后我通过使用 FullTrust 的 ClickOnce 部署对其进行了测试。这工作正常,但是当我将其设置为 PartialTrust(Internet 区域)时,应用程序无法启动。
如何解决这个问题呢?
我尝试创建空窗体 Windows 应用程序,然后使用 PartialTrust 进行部署,运行应用程序时仍然出错。
ClickOnce 应用程序不需要完全信任权限即可写入隔离存储。但是,应用程序确实需要完全信任常规文件 I/O。所以我猜你的应用程序必须请求完全信任才能工作。
但是,我不确定为什么您的空应用程序无法在部分信任下工作。你得到什么错误信息?
你在使用 SaveFileDialog 吗?从内存中,这会为从 Internet 区域部署的部分信任 ClickOnce 应用程序引发 UIPermission 异常。如果发生这种情况,您需要更改应用部署以请求此特定权限。
更新:如果您进行调试构建,异常堆栈跟踪将给出导致安全异常的行号。