Info: Error 193: %1 is not a valid Win32 application

The wrapper, tools, and info you need to get games working

Info: Error 193: %1 is not a valid Win32 application

PostPosted by OldBoy2k » Mon Aug 06, 2012 9:57 am

If you get a "Not a valid Windows 32 bit application" error that means, the Subsystem Version of the PE Header is set to 5.1 (Windows XP) and Windows 2000 does not accept this version of a executable. In this topic we discuss ways how to deal with this restriction.

Changing the PE Header manually with PE Tools:
Open the executable with PE Tools and set the MinorSubsystem Version to 0000 instead of 0001 and set MajorSubsystem Version to 0005 (explanation ==> MajorSubsystem=Product=NT 5.0=0005 and MinorSubsystem=Version=0000)
-< click here for PE Tools usage/download location >-

BR
OldBoy2k
OldBoy2k
 
Posts: 1351
Joined: Fri Feb 15, 2008 5:10 pm

Re: Info: Error 193: %1 is not a valid Win32 application

PostPosted by OldBoy2k » Mon Aug 06, 2012 9:58 am

Solution for software installation:
Some installers temporary install small childprocess setups with a wrong Subsystem Header in
Code: Select all
C:\Documents and Settings\...\Local Settings\TEMP\


Here's what you do to get the software installed.Download the following tool demo called HookProcessCreation:
madshi.net: HookProcessCreation

How to:
1) extract the HookProcessCreation.zip archive
2) run DllInjector32.exe
3) select system wide and then press inject dll
Image
4) choose and open HookProcessCreation32.dll
Image
5) run the setup of the game or program.This HookProcessCreation program will then ask you to allow the execution. Let the software continue with the installation. Now it will ask you a second time, but this time for the execution of the childprocess setup. Now open PE Tools and edit the PE Header of the temporary setup file in
C:\Documents and Settings\...\Local Settings\TEMP\ and then let it continue with the installation.
6) after the software installation is completed, start the DllInjector32.exe again and unject dll the HookProcessCreation32.dll.

This is a nice little program which also prints the __IRAOFF command line argument of the installer. To copy the command line argument to the windows clipboard, press STRG + C and paste it in a text editor.

BR
OldBoy2k
OldBoy2k
 
Posts: 1351
Joined: Fri Feb 15, 2008 5:10 pm

Re: Info: Error 193: %1 is not a valid Win32 application

PostPosted by OldBoy2k » Mon Aug 06, 2012 9:59 am

waleedassar.blogspot: Sunday, August 5, 2012
Major / MinorSubsystemVersion:
If you are still using Windows 2000, you must have noticed that certain executables refuse to run. Actually, this is due to the executables being built with Microsoft Visual Studio 2010 which sets the MajorSubSystemVersion and MinorSubsystemVersion in the PE header to 5 and 1. In other words, it creates executables to run on Windows XP (5.1) and above. This causes Windows 2000 (5.0) to refuse to load these executables.

Now, let's see where the check occurs and how to bypass it.

continue @ waleedassar.blogspot: Major / MinorSubsystemVersion

big thanks to waliedassar for this great post with important information and tools!

Post all questions or techniques related PE Header circumvention below.

BR
OldBoy2k
OldBoy2k
 
Posts: 1351
Joined: Fri Feb 15, 2008 5:10 pm


Return to Tools & Info

Who is online

Users browsing this forum: No registered users and 0 guests

cron