我有一个 C# 应用程序需要列出一个目录 ( Directory.GetFiles() ) 并且还需要访问其中一个返回的文件。如果我在本地运行应用程序,则访问网络位置或本地位置没有问题,如果我从网络共享运行它,则在访问共享时会抛出安全异常。
我发现了为什么会这样: http://blogs.msdn.com/shawnfa/archive/2003/06/20/57023.aspx
但是解决方案似乎...不切实际,除非我误解了它。
1) 我不能使用代码(几乎没有选择) 2) 签署程序集,然后让任何要使用它的人配置 .NET 策略以允许它? (这取决于将要使用它来更改他们的一项我没有发言权的政策的人??) 3) 更改策略以允许对 localintranet 上的所有内容进行完全信任(在我的情况下不推荐甚至不可能)
我在这里遗漏了什么吗,对于将独立应用程序推送到我没有发言权的网络来说,这些选择似乎都不是最佳选择。我本来想做一些相对简单的事情,比如从网络共享运行应用程序到列表目录中的文件不需要如此疯狂的循环才能使其正常工作。
有人知道我在这种情况下可以做什么吗?
最佳答案
我认为这些线程将回答您的问题:
此行为在 .NET Framework 3.5 SP1 中已更改,默认情况下允许程序在网络共享之外运行。
是的,感觉不太实用,但不幸的是,对此没有太多可做的......
关于c# - 我的 .net 应用程序在本地计算机上运行,但在从网络位置使用时失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/920542/