得到了这个:
System.Security.SecurityException:请求类型的权限 'System.Security.Permissions.FileIOPermission,mscorlib, Version = 2.0.0.0,Culture = neutral,PublicKeyToken = b77a5c561934e089' 失败。 (在System.Security.CodeAccessSecurityEngine.Check(对象 需求,StackCrawlMark& stackMark,Boolean isPermSet)....
Web上有很多与此问题相关的引用,但它们都引用了ASP.NET应用程序,或者它们与某个程序集相关,这使得它在某种程度上“非法”进入GAC - 这不是我的问题。
我有一个本地驱动器D:\包含这个:
D:\APLData\T
D:\APLData\I
D:\APLData\M
D:\APLData\P
D:\APLData\Z
在某些时候,我有网络驱动器T,I,M,P和Z指向这些文件夹。换句话说,这两个路径都指向同一个文件:
D:\AplData\T\FlipDB_Dev\Test\ShareTest.DWS
T:\FlipDB_Dev\Test\ShareTest.DWS
现在,当我从网络驱动器(T)启动有问题的程序时,我收到错误。当我从本地驱动器(D)启动程序时,它比它工作。
任何想法如何解决这个问题?
启
答案 0 :(得分:0)
您是否已检查文件/文件夹的权限。特别是当链接到LAN共享上的文件时,ASP.NET不会自动拥有访问这些文件的权限,因为权限是在物理托管文件的计算机上设置的。
您可以尝试的一件事是为用户组“Everyone”设置完全权限,但是,一旦找到正确的权限级别,请不要忘记删除该权限。
更新: 查看此链接,可能会派上用场
http://www.codeproject.com/Articles/19830/How-to-Access-Network-Files-using-asp-net
答案 1 :(得分:0)
映射驱动器特定于用户。如果你有权限并且你正在运行应用程序,那么它应该可以工作,如果这是不同的帐户,那么你们都需要权限和相同的驱动器映射到相同的地方。为自己节省一点心痛并使用UNC。