Dmitry Timoshkov a écrit :
Hello,
this implementation is able to parse imports libraries from the PSDK and hopefully should help interested parties to check/synchronize ordinal imports between Wine and Windows.
The dumper is not able (yet) to parse import libraries with the long format described in Portable Executable and Common Object File Format Specification and uuid.lib.
I think it's a bad idea to "force" the kind of file on the command line for dumping I'd rather see winedump guess the file format based on the file header, as we do for .exe, .dll, .mdmp, .pdb, .dbg... we didn't do it for emf and lnk because it seems they don't have a simple header to find it out, but .lib files definitively have
you should also provide support for the -C option (symbol demangling)
BTW, I have a couple of patches for debug files dumping (.pdb, .dbg...), that should help the dumping of debug information from a coff file (when needed)
A+
"Eric Pouech" eric.pouech@wanadoo.fr wrote:
I think it's a bad idea to "force" the kind of file on the command line for dumping I'd rather see winedump guess the file format based on the file header, as we do for .exe, .dll, .mdmp, .pdb, .dbg...
I thought about that, but that's definitely could be done as a separate work.
we didn't do it for emf and lnk because it seems they don't have a simple header to find it out, but .lib files definitively have
Both emf and lnk kind of files do have a distinct headers: emf files have ENHMETAHEADER in EMR_HEADER record with all kinds of recognizeable information including a signature, and lnk files have LINK_HEADER with recognizeable dwSize and MagicGuid fields.
you should also provide support for the -C option (symbol demangling)
I haven't needed it at this point and most PSDK import libs don't need it, but for C++ import libraries it would be nice to have.
BTW, I have a couple of patches for debug files dumping (.pdb, .dbg...), that should help the dumping of debug information from a coff file (when needed)
Great! And many thanks for the review!
"Dmitry Timoshkov" dmitry@codeweavers.com wrote:
I think it's a bad idea to "force" the kind of file on the command line for dumping I'd rather see winedump guess the file format based on the file header, as we do for .exe, .dll, .mdmp, .pdb, .dbg...
I thought about that, but that's definitely could be done as a separate work.
I'd go even further by introducing is_lnk(const char *fname) and similar is_emf(), is_pe(), is_le() functions as a general recognition interface in the option_table[]. Also I'd get rid the "dump" command line switch altogether and made the DUMP the default mode.
Dmitry Timoshkov a écrit :
"Eric Pouech" eric.pouech@wanadoo.fr wrote:
I think it's a bad idea to "force" the kind of file on the command line for dumping I'd rather see winedump guess the file format based on the file header, as we do for .exe, .dll, .mdmp, .pdb, .dbg...
I thought about that, but that's definitely could be done as a separate work.
as we agree on the goal, patches that are not the tracks to that should be changed IMO
you should also provide support for the -C option (symbol demangling)
I haven't needed it at this point and most PSDK import libs don't need it, but for C++ import libraries it would be nice to have.
the demangling code is already in place, so that's easy to do (note that the current demangling code in winedump lacks quite a few enhancements that are present in msvcrt) A+