1

I have the following the situation at hand: 2 C# files (an executable: A.exe, and a dll: B.dll). The executable loads the assembly for B, and tries to Invoke a constructor from B (that takes a reference from a class in A).

All well, so far, it works perfectly in general usage. The problem occured when trying to run the exe from a script, using 8.3 filename paths, such as:

start C:\testpa~1\A.exe

At this moment, the loading fails with the following exception: Object of type 'A.IfaceModel' cannot be converted to type 'A.IfaceModel', on the line

fullIface = contrs[0].Invoke(new object[] { this, forceStartMenu });

As far as I can tell, by running the exe with this path, somehow the assembly information for A that is in A differs from the assembly information for A that is in B, and crashes.

I know short filenames should no longer be used, but it's a valid test-case and I was wondering if there's anything to do about it.

Thanks.

4

0 に答える 0