Here is my new tool coded with Pelle's C , def2inc V1.0

def2inc converts a definition file created by Iczelion's lib2def tool to MASM include files containing function prototypes. The definition files ( .icz ) are created from Pelle's import libraries.Using Iczelion's lib2def tool supported by def2inc is a simple methode to create MASM include files from MS COFF import libraries.Notice that the tool should be at the same directory where the .icz definitions files are located. def2inc accepts wildcards like *.inc

To get information about lib2def :

def2inc can be downloaded from :
Posted on 2005-06-15 13:14:56 by Vortex
hi vortex
have you made any convertors to convert a def file to lib file scannable by ollydbg ??
especially the mfc4.def
if i do a lib /def:mfc42.def mfc42.dll it just gets me some 6 named exports
if i do dumpbin /exports mfc42.dll i get all those 6397 exports as default NONAME

if i use borlands impdef on mfc42.def it errs on line 18 due to unrecognized charecter
it seems impdef cant recognize mangled names
so i was googling for def2lib and this post turns up in one of he searches

hope you read this and reply

Posted on 2005-08-18 06:01:59 by bluffer
Hi bluffer,

My converter supports only libraries with standard decoration system as libraries like mfc42.dll can have complicated names :

\masm32\bin\dumpbin /exports \windows\system32\mfc42.dll

Microsoft (R) COFF Binary File Dumper Version 5.12.8078
Copyright (C) Microsoft Corp 1992-1998. All rights reserved.

Dump of file \windows\system32\mfc42.dll

File Type: DLL

  Section contains the following exports for MFC42.DLL

          0 characteristics
    40A13829 time date stamp Tue May 11 23:31:37 2004
        0.00 version
          1 ordinal base
        6937 number of functions
          6 number of names

    ordinal hint RVA      name

          5    0 000B4A00 ?classCCachedDataPathProperty@CCachedDataPathProperty@@2UCRuntimeClass@@B
          6    1 000B4A30 ?classCDataPathProperty@CDataPathProperty@@2UCRuntimeClass@@B
          2    2 0009DD45 DllCanUnloadNow
          1    3 0009DD11 DllGetClassObject
          3    4 0009DD6E DllRegisterServer
          4    5 0009DDA6 DllUnregisterServer
        256      0006C29B
        257      00057DC9
        258      0009067B
Posted on 2005-08-18 12:38:32 by Vortex
hi vortex,
thanks for replying

i already did dumpbin /exports and it just turns out the ordinal numbers not names as mfc42.dll
is ordinal only

i wanted to make a lib with names (demangled not the ??##Abcdf@345 but cWnd::Afx format) just to make ollydbg recognize the names but i achieved it with other means

though it is not optimal it works out

thanks again for replying

Posted on 2005-08-18 13:19:59 by bluffer
Version 1.1

Now, def2inc is redesigned to process module definition files like the following :

LIBRARY kernel32
Posted on 2005-09-05 13:01:09 by Vortex
Version 1.2

Added -d switch to display duplicate symbols. Thanks to Paul for his suggestion.
Posted on 2006-06-27 12:58:35 by Vortex
Very nice.  I like the fact that it defaults to 'don't show duplicates.'

Thank you very much for being receptive to this change.
Posted on 2006-06-27 15:10:55 by PBrennick