Technology in terms you understand. Sign up for the Confident Computing newsletter for weekly solutions to make your life easier. Click here and get The Ask Leo! Guide to Staying Safe on the Internet — FREE Edition as my thank you for subscribing!

I have an old, old program I need to run in Vista, but it won't. Is there a way?


We use Visual BASIC for DOS, ver 1.0, to compile BASIC programs on Win 98SE and Win XP computers. The compiler doesn’t work in Vista. Is there some way in which we can get the compiler to work under Vista? If the programs are compiled in XP, the programs run on Vista.

Boy, now there’s a blast from the past. It’s quite possible that you might actually be using software that I had a hand in creating, many years ago.

I can’t guarantee that this will work for any specific program (like VB-DOS), but Vista does include some compatibility tricks that may be able to help.

Become a Patron of Ask Leo! and go ad-free!

Using Windows Explorer, locate the executable you’re attempting to
run. Typically, that’ll be somewhere in “c:\program files\product\whatever.exe”, but since we’re talking legacy programs here that might not be the case. I don’t recall where VB-DOS installed itself for example. Smile

Right click on the executable, and click on Properties. Now click on the Compatibility tab:

Executable Compatability Properties in Vista

“Vista does include some compatibility tricks that may be able to help.”

For many programs you can select Compatibility Mode and choose a prior version of Windows that this program requires for compatibility.

Partly obscured by the example above are these settings as well:

Executable Compatability Properties additonal settings in Vista

Some older programs are sensitive to these particular characteristics, and Windows Vista allows you to specify that this particular executable should be run with the modifications listed.

There is one potential issue that’s easy to overlook, and tools like VB-DOS remind me of it:

There may be more than one executable involved.

For example, if I recall correctly, when you compile a program in VB, it actually runs the compiler separately, and the compiler is a separate executable.

So if the compiler has problems running in Vista, then you’ll need to repeat this process for that executable as well. Depending on what program you’re running, there may be additional executables as well that could need to be configured like this.

Occasionally, I’ve also seen the options in the Compatibility tab be grayed out. You probably need to be running as administrator to begin with, but even so I’ve seen it grayed out at times still. My assumption is simply that this option is not available for all programs.

In a case like that, depending on the urgency of your need, another approach might be to actually run Windows XP (or even an older version) in a Virtual Machine within Vista. Then you’re not just being compatible with the older version of Windows, you’re actually running
it. Products like VMWare, Parallels, or Microsoft’s own Virtual PC can be used to create and run virtual machines.

Do this

Subscribe to Confident Computing! Less frustration and more confidence, solutions, answers, and tips in your inbox every week.

I'll see you there!

12 comments on “I have an old, old program I need to run in Vista, but it won't. Is there a way?”

  1. I have some programs that install and work fine in XP, but I can’t even install them in Vista. They are on CD’s which require the install program. Because I can’t run the install program I can’t use the compatibility feature, ie I can not find the .exe file as it does not yet exist on my computer. I need these for work. How can I install them?

  2. Please publish information on how to go about
    learning Visual Basic. I have some developed
    programs on the old Basic and would like to know
    where to start and go in trying to use Visual
    Basic with the ideas I was working with on the
    the old Basic programs.

  3. Leo to follow up on my first inquiry, I tried to follow your instructions, was able set the compatibility of the setup file to XP (SP1). But I get the following message when I try to run the setup.exe file. “The version of this file is not compatible with the version of Windows you’re running. Check your computer’s system information to see whether you need an x86 (32-bit) or x64 (64-bit) version of the program, and then contact the software publisher.” I am running Vista Home Premium x64 and I have contacted the publisher, they were no help, say they are aware of the problem and will address it in next year’s version.

  4. There is a small utility program called TameDOS which may have some relevance here. I use it to run dBASE V for DOS within Windows XP. TameDOS automatically starts and runs discreetly in the background whenever you open a DOS program, and provides something like a DOS virtual machine within which the program can run smoothly.

    I have always found it to be extremely reliable and efficient, and far more effective than Compatibility Mode. From memory, I think it costs about $US29 to buy.

  5. I also have some programs running on XP which I would like to install on Vista. Both Os’s are installed in a dual boot setup, on 1 HD but seperate partitions. Vista will not allow the setups to run. Can I try to execute the .exe file from the XP partition ? ie without running the setup in Vista ?

  6. Dear Leo,
    Thanks so much for all the great info on everything. I was hoping that this particular post will be of help to me. I am helping an older friend , a lawyer, who uses MultiMate and refuses to give it up. Her computer died and I got to move the hard drive with Win 98 SE into a spare xp computer. It would not run as a slave but I now have it has just the sole master. It now can run the dos based program (MM), but the larger newer xp hard drive is just sitting there. Can I run MultiMate on it under Win XP with the above suggestions?? also problems with the HP Deskjet 812c printer which worked with 98 before I installed the old hard drive. Now it says that there is a problem and the printer needs” user intervention”. the software luckily reinstalled when I reconnected the printer. HP could not help?!! I know this is a lot but it would help a lot. Thanks so much for your time and consideration.

  7. You could try DOSBox, which has primarly been developed for games – and therefore gets heavily tested every day. Configuring a simulated DOS environment requires a complicated-looking text file – but there are plenty of form-driven front-end programs for that; I use DBGL, which is a Java app, and can create a short cut for each DOSBox app. One of the nice things about DOSBox is that you can control screen resolution and size, and there can make text and other screen features appear at reasonable size.

  8. Have two VB 6.0 programs that share code through forms and modules, but each also has a few specific code. One runs well in Vista the other would not even start. When double click on it, Vista goes to sleep and after a while, nothing happens and you’re back to the Explorer. Comparing the vb 6.0 project files and all other settings, they are identical (except for the few forms/modules.) Anyone seen this behavior? Any idea? BTW, both programs run well in XP.

  9. I am running Windows Vista, and have some software (Midtown Bank: a bank teller simulation)that I need to install and use for class. However, when I try to install it, it gives me the error “The version of this file is not compatible with the version of windows you’re running…” Is there anything I can do? I’m not too pc savy, but I read the top article, went to the ‘use older program thigy’ but it wont recognize the CD in the drive, so I still cant get it past setup, to even get it on my pc. Thank you!

    You’ll need to check with the provider of that software to see what your options are.



Leave a reply:

Before commenting please:

  • Read the article.
  • Comment on the article.
  • No personal information.
  • No spam.

Comments violating those rules will be removed. Comments that don't add value will be removed, including off-topic or content-free comments, or comments that look even a little bit like spam. All comments containing links and certain keywords will be moderated before publication.

I want comments to be valuable for everyone, including those who come later and take the time to read.