VOGONS


First post, by jwd0310

User metadata
Rank Newbie
Rank
Newbie

I'm trying to run an old fuel management program on a new Windows 7 64bit machine. I managed to get dosbox working (quickly) but I'm having an issue with backslashes. I can type them just fine, I don't think keyboard mapping is my issue. The problem I have is dosbox seems to be leaving backslashes out.

The program resides on a network drive, F:. I setup dosbox to automatically run the program on launch with this:

"C:\Program Files (x86)\DOSBox-0.74\DOSBox.exe" "F:\\armenu.exe" -noconsole

Notice the extra slash after the F:? That was needed because otherwise dosbox would attempt to run F:armenu.exe and that doesn't work. I thought I had the problem licked until I got a bit deeper in the program. Apparently at some point the program calls additional executables in the same folder. While performing certain functions it crashes with an error message along the lines of:

Open error -> F:armaster.dbf

I'm thinking dosbox is still leaving out the \ and that's causing my crash. If I missed something in the FAQ please forgive me, but I wasn't able to find anything I thought related. Any help is appreciated. I'd hate to have to downgrade this computer just for this program.

Reply 1 of 7, by bloodbat

User metadata
Rank Oldbie
Rank
Oldbie

Well, you're not mounting anything, so...that is probably your problem.
Instead of doing it like that, do a nice .conf file that mounts the location of what you want
i.e
mount c f:\oldprog\
c:
myprog.exe
#exit uncomment this one if you want dosbox to close when the program's done

and run dosbox as
dosbox -conf myconf.conf -noconsole

So, you did miss the whole readme 😜

Reply 2 of 7, by ripsaw8080

User metadata
Rank DOSBox Author
Rank
DOSBox Author

The OP is using the "name" parameter as documented in the readme/manual, so there shouldn't be a problem; but I recall there was an issue with backslashes in certain command line parameters with some versions of the GCC runtime libraries, and that the official releases were/are affected.

dosbox [name] [-exit] [-c command] [-fullscreen] [-userconf]
[-conf congfigfilelocation] [-lang languagefilelocation]
[-machine machine type] [-noconsole] [-startmapper] [-noautoexec]
[-securemode] [-scaler scaler | -forcescaler scaler] [-version]
[-socket socket]

name
If "name" is a directory it will mount that as the C: drive.
If "name" is an executable it will mount the directory of "name"
as the C: drive and execute "name".
Last edited by ripsaw8080 on 2011-03-18, 20:26. Edited 1 time in total.

Reply 3 of 7, by h-a-l-9000

User metadata
Rank DOSBox Author
Rank
DOSBox Author

Microsoft does that on purpose in its runtime library. Maybe it should be documented if it isn't already.

1+1=10

Reply 4 of 7, by ripsaw8080

User metadata
Rank DOSBox Author
Rank
DOSBox Author

It's done on purpose... so what is that purpose? I remember there was some discussion about the issue, but don't recall the details.

Seems like command line parameters should allow fully pathed filespecs that include backslashes. I have used Windows programs that don't have a problem with it. Also, the GCC runtime libraries I build DOSBox with don't behave the same way as the official releases in regard to this issue.

Reply 5 of 7, by h-a-l-9000

User metadata
Rank DOSBox Author
Rank
DOSBox Author

Oh that was the \"

1+1=10

Reply 6 of 7, by Qbix

User metadata
Rank DOSBox Author
Rank
DOSBox Author

i think his problem is not with the starting of dosbox.
It is some file that can't be found.
Not sure why the backslash is missing there, but it has nothing to do with the startup backslash parsing.

Water flows down the stream
How to ask questions the smart way!

Reply 7 of 7, by jwd0310

User metadata
Rank Newbie
Rank
Newbie

Sorry about the delay in getting back on this, got crazy busy at work and I haven't had a chance to get on this until now. Nobody seems to have an answer as of yet, is there anything I can provide that may help?

I'll have to remote into the clients machine but I'm certain the file that's causing is there, as the program works for all other (XP) users. Perhaps I should be calling the program differently?