• Welcome to Overclockers Forums! Join us to reply in threads, receive reduced ads, and to customize your site experience!

run DOS .exe's in winxp

Overclockers is supported by our readers. When you click a link to make a purchase, we may earn a commission. Learn More.

Xymurgy

Member
Joined
Jul 7, 2003
Location
New Hampshire, USA.
Hi. I've had this problem before, where I couldn't run DOS .exe's in winxp. Basically the black screen pops up like it's about to run but then it immediately closes. I forget what setting I changed to fix this (setting files=50 or something?). Anyone know how to fix this?

Thanks for the look.
 
Usually that happens because the program end's and the window closes. Type Command in the run option on the start menu, and then try running the program from the command line. The window wont close after the program ends and you can usually find out why the program terminated.
 
I guess I need to explain more. I'm running trying to compress WAVs using LAME inside a program called EAC. EAC is supposed to open LAME in DOS and start the compression. It doesn't do this, instead it opens up DOS and 1/80th of a second later, it closes.
 
You'll probably need to edit the %systemroot%\System32\config.nt and autoexec.nt files.

In config.nt have (apart from the large number of REM lines) just...
EMM = B=4000 RAM
(note the exact spaces - either side of the first = and before RAM, none next to the second =) and...

dos=high, umb
device=%SystemRoot%\system32\himem.sys
files=40
(or higher files= if needed)

...and in autoexec.nt have:

REM Install DPMI support
LH %SystemRoot%\system32\dosx


...with other earlier LH lines REM'ed out, and then any SET or PATH lines that may already be present at the end. This should give about 612K for a program, run from a shortcut made to its .exe file. Right click the shortcut, and select "Properties" | On the "Memory" page, you can set an explicit value (rather than "Auto") for any EMM or XMS memory it may need, and for initial environment space. :)
 
Last edited:
It still doesn't work. The first time I ran into this problem (a couple machines ago), I changed the files=40 to files=99 or something. I just couldn't remember where that file was (think I found it now, but it doesn't seem to work).

When I built a new machine, I ran into the problem again, but couldn't remember how I fixed it, so went to the EAC forum, where someone suggested I create a DOS directory in C: and put the LAME in there, then put

Set path=%path%;c:\dos

in my autoexec.nt file. I actually just figured this out, since I put a REM of my own above this path. This did work when I set the path & the DOS programs in there, but now it doesn't.

Any more ideas?
 
I'm not saying that there's not a fix for your problem, just that there are some DOS apps that aren't compatible with XP. This includes those apps in which the programmers chose to bypass the use of OS function calls and have the DOS app work directly with the computer hardware. These apps will crash and burn without fail if you attempt to run them under XP. Apps that do these sort of things include some communications programs (accessing the serial port), some games (writing directly to the video card), and some specialty software that uses authorization plugs (dongles) that attach to the parallel port. :)
 
In the properties for the EXE, go to the Program tab, and make sure that "Close on Exit" is unchecked. 99% of the time, that's been my problem with DOS windows closing randomly.

JigPu
 
have you tried to run it from the command prompt? just try it. start > run > type in "cmd" and hit ok. then go to the directory and run the program with all the proper tags and such...
 
I can run it from the C prompt in DOS, but it's one it has required strings:

LAME -preset -in file -out file

It's way too combersome to run from the prompt every time, EAC does it automatically.

After my ripper, EAC, is done ripping the wav, it immediately encodes/compresses the wave via this LAME.exe. Problem is that the LAME doesn't run, it just opens then closes. I did get this to run a while back, but now it's being stubborn again.

I have an XP machine right next to it (albeit much slower) and it runs the program properly, so something on this machine got screwed up.
 
Since LAME works when ran from the command prompt but not EAC, I suspect that EAC isn't passing LAME expected parameters. If something is wrong with the command that it sends, LAME will most likely open then immediatly close.

JigPu
 
Back