开发者

Why the assembly loader is not checkin the GAC for a C++/CLI mixed mode assembly?

开发者 https://www.devze.com 2023-02-08 04:16 出处:网络
I have a C# project that references a C++/CLI mixed mode assembly. That assembly is stored inside a folder into the PATH and it is also present at the GAC but when it is executed I get a:

I have a C# project that references a C++/CLI mixed mode assembly. That assembly is stored inside a folder into the PATH and it is also present at the GAC but when it is executed I get a:

System.IO.FileNotFoundException: Could not load file or assembly 'PcsSocketCommunications500, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null'

The version 0.0.0.0 is because the C++/CLI does not has an Assembly version class but as far as I know this shouldn't be a problem.

Running process m开发者_如何学Goonitor I've seen that the system just looks for the assembly at the same folder as the main process ... I'm not an expert of assembly loading but I expected to see at least some GAC searchs and 'maybe' some PATH searchs .. That's what I got (PcsSocketCommunication500.dll is the C++/CLI assembly and in black it's the working directory):

Why the assembly loader is not checkin the GAC for a C++/CLI mixed mode assembly?

Any idea about why the loader is not checking the GAC or the PATH?


PublicKeyToken=null

The assembly isn't strong named. That means it can't be located in the GAC, the CLR isn't going to look there. Not sure what you did to get in the GAC, but it shouldn't be possible as-is.

0

精彩评论

暂无评论...
验证码 换一张
取 消