I have an executable that references a separate .dll assembly. Inside the
.dll I call GetCallingAssembly and I always get a reference to the .exe.
Documentation for GetCallingAssembly says, "Returns the Assembly of the
method that invoked the currently executing method." Obviously that wasn't
the case. Reading further, I see that the copiler may be inlinining my
method and that I should decorate the method I'm calling GetCallingAssembly
from with MethodImpl(MethodImplOptions.NoInlining). No joy.
Is there anything else I can try? I couldn't find anyone else who
experienced this...
Use GetExecutingAssembly if you wantto return the dll... the exe is the
calling assembly, not the executing...
>I have an executable that references a separate .dll assembly. Inside the
>.dll I call GetCallingAssembly and I always get a reference to the .exe.
[quoted text clipped - 8 lines]
> Is there anything else I can try? I couldn't find anyone else who
> experienced this...
Brad Wood - 30 Nov 2006 23:12 GMT
> Use GetExecutingAssembly if you wantto return the dll... the exe is the
> calling assembly, not the executing...
I tried that. Same thing with or w/o the attribute.
Brad Wood - 30 Nov 2006 23:38 GMT
> Use GetExecutingAssembly if you wantto return the dll... the exe is the
> calling assembly, not the executing...
Sorry, this was a Copy Local issue. I had tried GetExecutingAssebly, but I
was extracting the path (which always returned the path to the location of
the exe). I was expecting the location of the .dll as I referenced it.
And yes, I should use GetExectingAssembly.