Valhalla Legends Archive

Programming => General Programming => Visual Basic Programming => Topic started by: Imperceptus on May 26, 2006, 06:21 PM

Title: Link.exe dump
Post by: Imperceptus on May 26, 2006, 06:21 PM
Anyone remember how to dump the calls from a dll using link.exe?  i forgot the syntax and where i wrote down the syntax.
thought it was

link.exe /dump -exports filename

not getting what i wanted.
Title: Re: Link.exe dump
Post by: Imperceptus on May 26, 2006, 07:28 PM
dumpbin filename /exports ?

im starting to think the dll im trying to ind info on doesnt have any exports.
Title: Re: Link.exe dump
Post by: topaz on May 26, 2006, 07:54 PM
Quote from: Imperceptus on May 26, 2006, 07:28 PM
dumpbin filename /exports ?

im starting to think the dll im trying to ind info on doesnt have any exports.

Tried that one, it works.
Title: Re: Link.exe dump
Post by: Imperceptus on May 26, 2006, 08:06 PM
what Can I do to try to find out the calls of an dll that has no exports?  i have the source but its all in c-sharp and beyond which I dont know how to make the calls to it correctly? 

Title: Re: Link.exe dump
Post by: K on May 26, 2006, 08:35 PM
.NET DLLs are not regular DLLs.  They don't import or export functions.  You specify them as a reference when compiling a .NET project and the public classes are then visible.


csc mycode_that_uses_foo.cs /r:Foo.dll


You can use reflector to view the classes and objects inside of it with Reflector for .NET (http://www.aisto.com/roeder/dotnet/), but since you already have the source, why not just look at that?
Title: Re: Link.exe dump
Post by: MyndFyre on May 27, 2006, 03:44 PM
If you're using a COM-aware C# DLL (such as MBNCSUtil (http://www.jinxbot.net/mbncsutil)), you can select Project->Add Reference to add a reference to the type library (e.g., mbncsutil.tlb).  Your VB project would require you to have the .NET Framework installed on the target machine, and you'd need to have registered the C# DLL using regasm.exe or a similar utility.  The DLL can be in the local folder in the global assembly cache (%windir%\Assembly) after it's been registered to be used.
Title: Re: Link.exe dump
Post by: l)ragon on May 27, 2006, 03:51 PM
Quote from: MyndFyre[vL] on May 27, 2006, 03:44 PM
If you're using a COM-aware C# DLL (such as MBNCSUtil (http://www.jinxbot.net/mbncsutil)), you can select Project->Add Reference to add a reference to the type library (e.g., mbncsutil.tlb).  Your VB project would require you to have the .NET Framework installed on the target machine, and you'd need to have registered the C# DLL using regasm.exe or a similar utility.  The DLL can be in the local folder in the global assembly cache (%windir%\Assembly) after it's been registered to be used.

Or you have the creator make an installer so you dont have to fart around with crap like that.