Compare different builds of same EXE

Collapse
X
 
  • Time
  • Show
Clear All
new posts

  • Chris
    replied
    Thanks for the suggestions. Comparison of PE images in EXE files is on our wish list for a future release.

    Leave a comment:


  • Fresh One
    replied
    Originally posted by TonyB
    The PE image format used for Windows EXE files has numerous timestamps and build directory info scattered within.

    Does anyone know of a good way to compare different builds of the same source code with the same compiler and determine if there are any substantive differences?
    I would LOVE to have the ability to perform EXEs "compares" in BC using a method like this.

    If file sizes are different, the they would be "different". Then it would be great to either ignore the each header section, or the ability to ignore specific headers / properties. The content of each PE section would then be required to match for it to be pass the compare.

    Leave a comment:


  • Michael Kujawa
    replied
    Going to thread necro here...

    I suggest using dumpbin to convert the binary executable into a text file and then diffing that. The differences will be a lot easier to make sense of, you can mark what sections you want to output, and you can probably even define a grammar that will mark those lines of output as insignificant.

    Leave a comment:


  • Michael Bulgrien
    replied
    The portable executable file format defines the overall structure of the file:
    MS-DOS/Real-Mode Header (64 bytes)
    MS-DOS/Real-Mode Stub Program
    PE File Signature
    PE File Header
    PE File Optional Header
    .text Section Header
    .bss Section Header
    .rdata Section Header
    .
    .
    .
    .Debug Section header
    .text Section
    .bss Section
    .rdata Section
    .
    .
    .
    .debug Section

    However, the actual content in each section (with the exception of the real-mode header) can vary...
    While I agree that it would be nice to have a compare utility smart enough to parse the PE format and recognize "unimportant differences", it would be a challenge to implement.

    Perhaps an initial implementation could allow a user to ignore differences in the real-mode and PE headers
    (so long as they are the same size in both files) and just compare everything else.

    If the Scooter team has any interest in implementing this in the future, a good place to start would be a description of the PE format with clues on how to how to determine offsets for the header sections...

    Leave a comment:


  • TonyB
    started a topic Compare different builds of same EXE

    Compare different builds of same EXE

    The PE image format used for Windows EXE files has numerous timestamps and build directory info scattered within.

    Does anyone know of a good way to compare different builds of the same source code with the same compiler and determine if there are any substantive differences?
Working...