Watch, Follow, &
Connect with Us
Public Report
Report From: Delphi-BCB/Compiler/Delphi/Linker    [ Add a report in this area ]  
Report #:  105032   Status: Open
[x64] funny dos stub in  XE2 win64
Project:  Delphi Build #:  16.0.4429.46931
Version:    16.4 Submitted By:   Thaddy De Koning
Report Type:  Minor failure / Design problem Date Reported:  4/19/2012 5:28:29 AM
Severity:    Extreme corner case Last Updated: 4/22/2012 6:32:23 PM
Platform:    All versions Internal Tracking #:  
Resolution: Duplicate (Resolution Comments) Resolved in Build: : None
Duplicate of:  92677
Voting and Rating
Overall Rating: No Ratings Yet
0.00 out of 5
Total Votes: None
Description
In win64, (dcc64) the dos stub says it must be run on win32..... <smile>
I really can't test the effect on win7/32 because currently I don't have access to an install.
It should ofcourse report that it must be run on win64, even if the loader is 32 bit.
Can't investigate further. Client location and I do not have XE2 myself.
Steps to Reproduce:
Open a simple dcc64 compiled console program with a hex editor.

Compile this example simply with "dcc64 test.dpr"
<--save as test.dpr>
program test;
{$APPTYPE CONSOLE}
begin
{$IFDEF WIN64}
writeln('This is a 64 bit execuatable');
{$ELSE}
writeln(' This is not a 64 bit executable');
{$ENDIF}
end.
<--- end of test.dpr --->

Now open the 64 bit executable is a good hexeditor like hexapad.
You will see immediately that the message is wrong. The dos stub refers to 32 bit windows!
Workarounds
None
Attachment
None
Comments

Tomohiro Takahashi at 4/19/2012 6:30:48 PM -
> Open a simple dcc64 compiled console program ...
Could you please attach sample project(including some screenshots) to understand/confirm your issue?

Thaddy De Koning at 4/21/2012 10:24:06 AM -
Compile this example simply with "dcc64 test.dpr"
<--save as test.dpr>
program test;
{$APPTYPE CONSOLE}
begin
{$IFDEF WIN64}
writeln('This is a 64 bit execuatable');
{$ELSE}
writeln(' This is not a 64 bit executable');
{$ENDIF}
end.
<--- end of test.dpr --->

Now open the 64 bit executable is a good hexeditor like hexapad. You will see immediately that the message is wrong. The dos stub refers to 32 bit windows!

Uwe Schuster at 4/22/2012 2:36:40 AM -
The master report QC 92677 "DOS header still refers to Win32" is a private report and is thatswhy not visible to everyone! So you may receive an error when trying to access that report.

Server Response from: ETNACODE01