>So, what might I be missing? Where does a COM DLL look for dependencies
>when called by a .NET 2003 client?
The COM library doesn't really look for dependencies itself, it uses
standard COM services.
The CLR will try to load the assembly using its rules, looking in the
application directory, GAC and the registered codebase if any. You can
use Fuslogvw.exe to view the exact binding procedure.
Mattias

Signature
Mattias Sjögren [MVP] mattias @ mvps.org
http://www.msjogren.net/dotnet/ | http://www.dotnetinterop.com
Please reply only to the newsgroup.
JohnMSyrasoft - 07 Jun 2005 14:02 GMT
Thanks for your reply. Here's what I have that doesn't seem to be working.
> The CLR will try to load the assembly using its rules, looking in the
> application directory, GAC and the registered codebase if any.
In my \inetpub\wwwroot\webapplication1\bin folder, I copied the SMSPCC.DLL
(again, this is the .NET 2003 DLL that the COM DLL is calling). By the way,
VS 2003 put an Interop.ADODB.dll and Interop.SMS_AR.dll into this folder
automatically. Since the SMS_AR is the COM object written in VB6, these two
files make sense to me.
I used RegAsm to register the SMSPCC.DLL in the \bin folder. However, it
still isn't working for me. Does this qualify as the 'application directory'
as you posted?
I'm not sure I want to put the assembly in the GAC as it doesn't have a
strong name. Plus, for deployment, it'd be easier if I could just get it
working in the application directory.
Thanks.