Runtime can't find DLL

Runtime can't find DLL

Post by Andy War » Mon, 08 Apr 2002 15:09:13



Hi,
I am in the process of porting my shell namespace extension to .NET and have
a C# DLL which the Main namespace DLL uses, so something like this:

Explorer.exe  <-  Namespace.DLL  <- C#Util.DLL  <- Interop.Outlook.DLL

The namespace DLL is loaded fine by explorer however when I try to do things
in the namespace that require the C# DLL I get an error "Assembly not found"

I thought that putting the C# DLL in the global assembly cache would solve
the problem however I cannot sign it because a DLL it depends on
(Interop.Outlook.DLL) is not signed.

Is it possible to sign the outlook COM wrapper DLL that I created through
Visual Studio->Add Reference->COM->Outlook 9 object library ?

Could someone tell me where the runtime would be looking for the C#DLL,
either in the explorer.exe working directory or in the same directory as the
namespace DLL?

Any help appreciated
Andy

 
 
 

Runtime can't find DLL

Post by Vyachesla » Mon, 08 Apr 2002 17:17:12


Read MSDN : How the Runtime Locates Assemblies
Also use framework tool fuslogvw.exe - it can help a lot!

 
 
 

Runtime can't find DLL

Post by Andrew War » Tue, 09 Apr 2002 06:38:18


Ive had a look at the MSDN docs and still can't find a solution,

All works fine when I have the DLL's in the same directory as explorer.exe
but this is obviously not  an option for deployment. Using private bin path
is not an option because it requires the files to be in a subdirectory of
where explorer.exe resides. Creating a ShellExtension.dll.config does not
seem to work for DLL's. GAC is not an option because of the dependant DLL's.



Quote:> Read MSDN : How the Runtime Locates Assemblies
> Also use framework tool fuslogvw.exe - it can help a lot!

 
 
 

Runtime can't find DLL

Post by Vyachesla » Tue, 09 Apr 2002 18:52:10


Check Fusion Log (run FusLogVw.exe) for relevant records
 
 
 

Runtime can't find DLL

Post by Andrew War » Wed, 10 Apr 2002 06:58:09


Found a solution by implementing the AppDomain.ResolveAssembly event and
loading the asembly myself



Quote:> Check Fusion Log (run FusLogVw.exe) for relevant records

 
 
 

Runtime can't find DLL

Post by Vyachesla » Fri, 12 Apr 2002 00:52:26


Workaround..

Why you don't want see Fusion Log for finding problem
source?