views:

298

answers:

2

Hello,

I have installed an application off the web via ClickOnce. Examining the application in Reflector shows that it depends on two custom libraries--Thirteen23.Library.3 and TwitterLib. When attempting to open classes defined in these libraries, Reflector complains that

"The following assembly name cannot be resolved automatically:

Thirteen23.Library.3, Version=1.0.0.0, Culture=neutral, PublicKeyToken=d3a8aa6c91122687"

However, the application runs just fine when I double click on it. I've searched the GAC and several other places and can't find this DLL.

Can someone please explain to me what's going on?

Thanks.

+1  A: 

The reflector doesn't have the assemblies in its path. Notice you probably can't find the .exe either? .Net has its own rules for where Click Once apps get installed.

The app's author included the assemblies (marked them as required) in the click once deployment properties.

Shaun
I've tried adding the DLLs manually, but they aren't under the GAC or the folder where the app is executing, ie, they aren't under C:\Users\_Me_\AppData\Local\Apps\2.0\05K86RDL.PCM\AMH02CP3.BOH\blu...tion_89e04ff5422e64b1_0001.0000_e20c3c6f0a7e7042
Yeah. I don't remember precisely how you'd find em. It is a pain. They're either going to be in another folder, or they've been combined into a .dat file or some such thing.
Shaun
I forgo to mention that I don't think the .exe is actually your assembly either. IIRC its actually a launcher that itself has a reference to your actual assemblies (of course somewhere else entirely). Sorry I can't be more precise.
Shaun
+1  A: 

Found the dll in question. It was located in the application resource stream. Should have looked there sooner, although it seems to be very non-standard (I could be wrong though).

It is an odd place but I have seen several SO questions on how to put them there.
Henk Holterman