I have a 20+ yo .dll
, written in C that none of my colleagues want to touch. With good reason, it uses macros, macro constants and casting EVERYWHERE, making the symbol table quite lean.
Unfortunately, I have to sometimes debug this code and it drives me crazy that it doesn't use something as simple as enum
s which would put symbols in the .pdb
file to make debugging just that little bit easier.
I would love to convert some of the #define
s to enum
s, even if I don't change the variable types as yet, but there is a genuine fear that it will cause possible issues in terms of performance if it were to change the code generated.
I need to show definitively, that no compiled code changes will occur, but it would seem that the .dll
is actually changing significantly in a 64 bit build. I looked at one of the function's disassembly code and it appears to be unaffected, but I need to show what is and is not changing in the binary to alleviate the fears of my colleagues as well as some of my own trepidation, plus the bewilderment as to why any changes would propagate to the .dll
at all, though the .dll
s are of the same size.
Does anyone have any idea how I could do this? I've tried to use dumpbin
, but I'm not that familiar with it and am getting some mixed results, prolly because I'm not understanding the output as much as I like.