Could not load file or assembly, PublicKeyToken=nu

2019-01-19 00:45发布

Could not load file or assembly 'NCrawler.GeckoProcessor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies.

When I call CrawlUsingGeckoProcessor.Run();

What does this mean? I can click "go to definition" and I can see the Run() method.

4条回答
贼婆χ
2楼-- · 2019-01-19 01:13

I experienced the same problem, and the reason was that I compiled my EXE and DLL on 32 bit machine for "x86", because it depends on C++\CLI library compiled for Win32. Then I tried to use this library on 64 bit machine from 64 bit process. Obviously 64 bit process can't load 32 bit libraries, so I got this error, which does not really help to understand the problem.

So the reason could be that you try to use 32 bit library from 64 bit process.

查看更多
叼着烟拽天下
3楼-- · 2019-01-19 01:17

try going to app advance settings .. Enable 32 bit processing .. if the app was built in .net 2.0 and current server is IIS 7

查看更多
姐就是有狂的资本
4楼-- · 2019-01-19 01:25

This error usually means that the assembly was not found. Try verifying that the file exists in the directory where your application is running.

If you still can't figure out which file fails loading, try using a tool such as Fusion Log Viewer (run fuslogvw.exe from the Visual Studio command prompt), to determine which files the CLR was trying to load and from where, so that you can see exactly what failed.

查看更多
淡お忘
5楼-- · 2019-01-19 01:28

Building over nogard answer, try setting the Solution Platform to x86

enter image description here

查看更多
登录 后发表回答