views:

1103

answers:

3

Hi,

We have a 32-bit application that launches other 32-bit applications during its process. The application is working fine on other 64-bit platforms but on Windows Server 2003 64-bit, we get an error trying to launch the apps:

error 193 (not a valid 32 bit application)

We can manually launch these applications on that system without any problem.

I thought we had found the problem with this article, but our customer already has this patch on his system and the error is still occurring.

If anyone else has encountered something similar or if anyone has any idea on how to resolve this, it would be greatly appreciated!

Thanks! François Côté

A: 

Are you sure the to-be-launched applications are compiled for 32-bit? When you run each of the apps directly, make sure they are running within WOW64. If they are not, then Windows is running them as 64-bit apps, which could cause the problem you are seeing.

Pedro
Thanks Pedro for your time... I know the apps are 32 bits because I compiled them. They're correctly running under wow64 in our lab, I'll check the next time I connect to the customer's system.
FrankTKO
+1  A: 

IIRC, you can get that error code even if the app really is a valid 32-bit .exe, for a host of various other reasons, such as a dll dependency problem. Or if the Windows loader is confused by 64-bit dlls in the path with the same name as the 32-bit dll it needs.

Die in Sente
+1  A: 

You might want to do a runtime profile using dependency walker using the "automatically open and profile child processes" option. This will give you a better idea how far along it's getting and which dependencies it is resolving at runtime.

Todd