从文件共享运行 .NET 应用程序,无需代码签名
题
每当从文件共享运行 .NET exe 时,.NET 安全模型都会引发安全错误。从本地驱动器运行时不会出现该错误。有谁知道无需签署代码即可解决此问题的方法吗?
解决方案
其他提示
使用 caspol.exe 进行分配该文件共享足够的权限来运行您的程序。
您可能能够针对.net 3.5 sp1构建应用程序,此版本正在删除此安全设置。
为了解决这个问题,我们最终将.exe包装在一个批处理文件中。批处理文件将.exe复制到本地驱动器并从那里运行它。我确信有一种不那么黑的方式!
确保运行该软件的计算机上安装了.Net 3.5SP1。此版本消除了对从文件共享运行的应用程序的安全限制。它允许他们以完全信任的方式运行,而不是完全信任地运行。以前的模型将它们置于受限的环境中。
这是万斯关于该主题的博客文章的链接
您可以使用.Net配置向导来放松特定程序集及其位置的安全性,而这又可以通过组策略进行部署。你也可以像前面提到的那样使用caspol。
另一种选择是使用代码访问安全性。有一篇精彩的MSDN文章这里解释它。
第三种方法是使用clickonce部署,但是这仍然会在执行时创建程序集的本地实例。
您可以使用 Click Click deployment 来部署您的应用程序文件共享。
不隶属于 StackOverflow