网络中的.NET 3.5 SP1代码 - “系统找不到指定的文件。”

时间:2009-11-10 14:25:07

标签: .net-3.5

此问题与程序集是否已签名或是否已为共享网络文件夹运行caspol无关。显然,文件的位置是问题,但我找不到真正的问题。

我有一个引用5个dll的可执行文件。我可以毫无问题地从本地驱动器运行该应用程序。当我从网络共享运行应用程序时,我收到一条错误,指出“无法加载文件或程序集'本垒打,版本= 1.0.0.0,Culture = neutral,PublicKeyToken = null'或其依赖项之一。系统找不到指定的文件。“

如果所有文件都在同一个文件夹中,那真正告诉我的错误是什么?

我还应该注意使用的框架是3.5 SP1,它不需要更改代码访问策略。我无论如何都试过了,在这两种情况下都收到了同样的错误。

谢谢, DaMoose

3 个答案:

答案 0 :(得分:0)

答案 1 :(得分:0)

您基本上需要签署程序集。使用

生成私钥/公钥对
sn -k filename.snk

将在项目属性中指定filename.snk(右键单击项目,然后选择属性)。

如果您不对代码进行模糊处理,则可以使用此代码。如果这样做,则需要“延迟签名”程序集,即为新构建的可执行文件中的密钥保留空间。然后你需要打电话

sn -r filename.snk

在混淆后重新签名可执行文件。

答案 2 :(得分:0)

程序集是如何进入该网络共享的?你只是复制它们或其他什么?当我从自己的网络服务器下载自己的程序集时出现问题,并且资源管理器将“阻止”标志(ntfs流功能)添加到下载的文件中,基本上生成了FileNotFound Exceptions。