Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

We have a legacy windows application that checks if it's being run in a 32 or 64 bit system. Apparently there is no 64 bit version available but we are now faced with a situation where we MUST run it on a 64 bit Windows 7 workstation. Short of spinning up a 32 bit VM for this purpose does anyone have any suggestions that might workaround this issue?

share|improve this question
1  
Does this legacy Windows application have a name? – Michael Hampton Aug 8 '12 at 18:30
    
@Michael Hampton - it's a compiled VFP database. – Josh Aug 8 '12 at 18:30

The method I use is flag the desirable application with headers for the 32Bit DLLs, so every time I execute it, the application sees the 32-bit mode DLLs and loads them into its memory space:

  1. Download the Microsoft Windows SDK for Windows 7 and .NET Framework 4;

  2. Install it;

  3. Grab Microsoft CorFlags utility named CorFlags.exe from the Bin folder of the SDK program files directory;

  4. Flag your application to use 32Bit dll's using:

    CorFlags /32BIT+ yourapplication.exe
    

The next time you execute your application, Windows will see the new header and will execute it as a 32-bit application. Your application will use the 32-bit DLL's provided by windows.

share|improve this answer
    
Looks good but the installer quits with an ambiguous error :( – Josh Aug 9 '12 at 13:37
    
@Josh What exactly is the error? – Zuul Aug 9 '12 at 13:53
    
"Installation of the "Microsoft Windows SDK for Windows 7" product has reported the following error: Please refer to Samples\Setup\HTML\ConfigDetails.htm document for further information." – Josh Aug 9 '12 at 18:34

Visual FoxPro cannot use 64-bit ODBC drivers, even though the app will otherwise run fine on a 64-bit system.

To work around this problem, open an elevated Command Prompt and run C:\Windows\SysWow64\odbcad32.exe to set up your DSNs.

(Shamelessly ripped off from here.)

share|improve this answer
1  
Good thought, I've seen this workaround before with a different database. This particular application doesn't use ODBC data source though, just local files. – Josh Aug 8 '12 at 20:09

I know you said you did not want to spin up a VM for this but XP Mode will do exactly what you need, and it can run in a transparent fashion so the app does not appear to be running in a VM.

Install XP Mode and see if it fits your needs.

share|improve this answer
    
I'll give it a try. – Josh Aug 9 '12 at 13:36

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .