【问题标题】:Could not load file or assembly, PublicKeyToken=null无法加载文件或程序集,PublicKeyToken=null
【发布时间】:2011-10-22 12:44:22
【问题描述】:

无法加载文件或程序集 'NCrawler.GeckoProcessor, Version=3.0.0.0,Culture=neutral,PublicKeyToken=null' 或其之一 依赖关系。

当我打电话给CrawlUsingGeckoProcessor.Run();

这是什么意思?我可以点击“去定义”,我可以看到Run()方法。

【问题讨论】:

    标签: c# visual-studio .net-assembly


    【解决方案1】:

    此错误通常表示未找到该程序集。 尝试验证该文件是否存在于您的应用程序运行的目录中。

    如果您仍然无法确定哪个文件加载失败,请尝试使用 Fusion Log Viewer 等工具(在 Visual Studio 命令提示符下运行 fuslogvw.exe)来确定 CLR 尝试加载和从哪些文件加载在哪里,以便您可以准确地看到失败的原因。

    【讨论】:

    • ... 如果文件不在您的输出文件夹中并且您希望它在,请确保在“属性”窗口中为引用设置了“复制本地”true .
    • 我有同样的错误,但我验证了其中的文件,我将本地副本设置为 true,但错误仍然存​​在......
    【解决方案2】:

    我遇到了同样的问题,原因是我在 32 位机器上为“x86”编译了我的 EXE 和 DLL,因为它依赖于为 Win32 编译的 C++\CLI 库。然后我尝试从 64 位进程在 64 位机器上使用这个库。显然64位进程无法加载32位库,所以我得到了这个错误,这对理解问题没有帮助。

    所以原因可能是您尝试从 64 位进程中使用 32 位库。

    【讨论】:

    • 这句话解决了我过去 90 分钟的挫败感。它在我的另一个 32 位系统上运行良好!
    【解决方案3】:

    建立在 nogard 答案之上,尝试将解决方案平台设置为 x86

    【讨论】:

      【解决方案4】:

      尝试进入应用程序高级设置 .. 启用 32 位处理 .. 如果应用程序是在 .net 2.0 中构建的并且当前服务器是 IIS 7

      【讨论】:

        猜你喜欢
        • 2014-02-21
        • 1970-01-01
        • 2022-11-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-08-28
        • 1970-01-01
        相关资源
        最近更新 更多