Matijn Woudt wrote:
There are a few differences I spotted between the two executables:
1) setupgs-wine.exe has wrong image size, changing it from 0x2b200 to
0x2b000 makes the executable working under win7.
2) setupgs-wine.exe has wrong resource size, probably related to 1),
because the size of both executables are the same.
3) The assembly in setupgs-wine.exe has only LF line endings, vista
has CRLF. This explains 2).
I don't know the reason for 3), I assume it's a bug somewhere in wine.
I have started looking into pedump and dumpbin, and the PE/COFF format, but it
is new territory to me... can you explain either in a private e-mail, or if the
info is more relevant to the wider audience, how can one tell the image size and
resource size is 'wrong'? Presumably it is a consistency check of some sort -
i.e. one part needs to agree with another, and the wine loader is not doing the
check at the moment.
If I can do that life on linux or elsewhere life would be easier - not booting
into windows; because then I can see what the 2nd bug is about - tried using
native imagehlp and there is no improvement, so I probably need to try each of
mt.exe's dependencies to see which of them breaks the executable. (but I need to
be able to tell an executable being broken first).