It seems you have in config.txt something like: LPT1 = "LPT1.COM" =SEL:"Brother MFC-L2720DW series Printer" and COM3 = "COM3.COM" =SEL:"Epson"
With a double quoted string w/o a preceding SEL: you specify what (Windows) program to start (instead of printing) after a printjob has finished. The remainder of the line is then the command line to that program.
It should be: LPT1 = SEL:"Brother MFC-L2720DW series Printer" and COM3 = SEL:"Epson"
I installed the latest version from the website in c:\vDos1 and accepted all default settings. I have put a REM before the default startup app in autoexec.txt and added only one line as: LPT1=SEL:"Epson" I copied a #LPT1.txt file from my c:\vDos folder into folder c:\vDos1 I added the /log option in the default created vDos shortcut on the desktop I double clicked the vDos shortcut on the desktop The app starts and C:\> shows up I type the following and then press <Enter>: TYPE #LPT1.txt >LPT1 ERROR: The Printing Dialog still appears and my Epson printer is NOT selected but the default Windows printer (Brother MFC…) I select a printer in the Dialog box, click OK and the file is printed as expected… I type the following and then press <Enter>: EXIT The vDos.log file is then as follows: vDos 2019.05.01 0.14 C: => (Local) C:\vDos1\
Execute: LPT1.COM - =SEL:"Epson" Program not executed/loaded (2): LPT1.COM 25.89 Internal printing 3915 bytes 150.06 vDos ended by EXIT (-1)
Good day, im able to print from vdos fine. however lets say im printing only one page for example. it prints the page good except that the last line of the page goes to a 2nd page and has VB@ printed to the top... But if I use printfil to capture the port and print to the same dotmatrix printer it prints perfect on just one page without the VB@ error
Printfil can’t capture any vDos/DOS ports since those are internal to vDos and not related to Windows ports. At most it can read the #LPTx/COMx.asc file created by vDos and print that. Can you submit a copy of the #LPTx/COMx.asc file that causes the second page with VB@.
As the very last line your program outputs <GS>VB@. That Epson control code is documented as: GS V m n m=86(V): Feeds paper to (cutting position + [n x basic calculated pitch]) and performs a partial cut (one point uncut)
Seems to make little sense, your printer won’t have a paper cutting mechanism. vDos drops the <GS>, while Printfil will drop the entire line.
Have a look the printer settings in your program and remove that command. Preferably also set those to use a form feed to eject a page instead of line feeds.
With Windows 32 (XP?) you set some environment variable or started the program with a command line specifying that number (something like program t:number).
Open the properties of the shortcut that starts vDos.exe. At the Target (default C:\vDos.exe) add that number, for instance C:\vDos.exe 123.
When vDos is then started with that shortcut, the DOS environment variable WIN_VDOS is set to 123. So you then first set the previous environment variable by SET VAR=%WIN_VDOS%, or start the program with program t:%WIN_VDOS%, whatever applies.