Try to run the example PB64.exe and look!hardfalcon wrote:...to display the message "This program cannot be run in MS-DOS." these days) ?
A 32bit Windows OS will tell it for you:
D:\pb64.exe is not a valid Win32 application.
Try to run the example PB64.exe and look!hardfalcon wrote:...to display the message "This program cannot be run in MS-DOS." these days) ?
I don't think so, i never see such a "dual" program for x64. Keep in mind than adressing, stack etc. is no more the same, so you could endup with memory area which would be never reachable by the 32bits program part. Also the current x64 CPU have a special mode when running a 32 bits program, as the same ASM opcode doesn't do the same action in 32 bit or 64 bit mode.hardfalcon wrote:That's great news![]()
As we are talking about 64bit, another question: Is it possible (this is not a feature request, but just a simple question) to link 32bit and 64bit code to one and the same PE executable (like you can link 16bit and 32bit code together (even is the 16bit code is only used to display the message "This program cannot be run in MS-DOS." these days) ?
Hmmm, if I get that article right, that should also be possible with 32bit/64bit...http://en.wikipedia.org/wiki/Portable_Executable#Brief_history wrote:The format has retained limited legacy support to bridge the gap between DOS-based and NT systems. For example, PE/COFF headers still include an MS-DOS executable program, which is by default a stub that displays the simple message "This program cannot be run in DOS mode" (or similar). PE also continues to serve the changing Windows platform. Some extensions include the .NET PE format (see below), a 64-bit version called PE32+ (sometimes PE+), and a specification for Windows CE.
This stub is evident only on x86 not x64 executables.hardfalcon wrote: Hmmm, if I get that article right, that should also be possible with 32bit/64bit...
Concerning the 16bit/32bit PEs, the German Wikipedia article gives the Windows 95 setup executable as an example...