Re: MS VC 6.0 compiles EXE differently under 2000 vs XP
- From: "Joe" <joe@xxxxxxxxxx>
- Date: Tue, 27 Sep 2005 11:44:41 -0700
Please post the byte-offsets and bytes that differ, as well as 16 or so
bytes around the differences.
Use "dumpbin /disasm" on each, redirected to files, then compare those
files.
At least one byte difference would be the drive-letter in the path-to-source
that is stored in the .EXE, if the drive-letter holding the source changes
between OS's.
Can make the two binaries available somewhere? Two machines with different
OS's and exactly the same development environments -- I don't have that
setup, so I can't build them, but it would be fun to try and figure out.
"dan daley" <ddaley@xxxxxxxxxxxxx> wrote in message
news:ZUYXe.538$G64.205@xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
> MS VC 6.0 pro compiled a simple console "hello world" program differently
> under Windows 2000 (sp4) versus Windows XP (sp2).
> I need to know why there is a difference.
> The difference is of concern since we have gambling applications that
> regulators must be able to release compile to an identical EXE -- allowing
> for the date/time of compile (4 bytes max).
>
> The compiler installation was: MS VC 6.0, vc6sp5, visual cpp processor
pack
> for sp5, and platformsdk Feb 2001.
>
> /* hworld.c "Hello world" program to test differences between windows
> 2000 and windows XP compiles.
> */
> #include <stdio.h>
> #include <stdlib.h>
> void main(void)
> {
> printf("hello world\n");
> exit(0);
> }
>
>
> To test the effect of updating from Win 2000 to XP we cloned a windows
2000
> (SP4) drive using Norton ghost 2002.
> Then updated the cloned drive to XP and booted as the primary drive on the
> same PC. After release compiling, the EXE from the 2000 and Xp compiles
> were compared. The EXE's were the same size. Aside from a 2-byte
> difference caused by the date/time of the two compiles, there were
15-bytes
> of differences, according to 'fc.exe'. The OBJ files are always
identical
> except for the embedded date/time stamp. Windows 2000 compiles always
> produced the same EXE except for the date/time stamp. XP release compiles
> are always consistent and identical across the two XP computers tested.
>
> Larger programs compile with much larger differences even allowing for
> identical blocks of code aligned differently within the EXE (identified
> using UltraCompare). So far XP and 2000 always compile to the same size.
>
> Why are the XP and 2000 compiles producing a different EXE?
>
>
>
.
- Follow-Ups:
- Re: MS VC 6.0 compiles EXE differently under 2000 vs XP
- From: dan daley
- Re: MS VC 6.0 compiles EXE differently under 2000 vs XP
- References:
- MS VC 6.0 compiles EXE differently under 2000 vs XP
- From: dan daley
- MS VC 6.0 compiles EXE differently under 2000 vs XP
- Prev by Date: RE: asp.net 2.0
- Next by Date: Localize vb 6 Forms
- Previous by thread: Re: MS VC 6.0 compiles EXE differently under 2000 vs XP
- Next by thread: Re: MS VC 6.0 compiles EXE differently under 2000 vs XP
- Index(es):
Relevant Pages
|