16bit dos - Are individual settings Possible?

B

Bruce

I use several older dos programs. They all apparently run as ntvdm.exe
and therefore if I change any of the settings (ie. window size or
mouse characteristics), they change the settings for all the programs.

Am I missing something? Is it possible to have different settings for
different 16 bit dos programs under XP?

Thanks
 
W

Wesley Vogel

Type: create a pif in the Search box in Help and Support.

--
Hope this helps. Let us know.

Wes
MS-MVP Windows Shell/User

In
 
B

Bruce

Thanks for the suggestion.

No matter what the pif properties are, when the various programs run,
the system seems to think it is running ntvdm.exe. Therefore if I
change the properties from within a running program, the changes end
up being applied to all of my dos programs which open via shortcut /
pifs.

As an example, I have a shortcut which points to
"C:\WINDOWS\system32\cmd.exe". If I run that shortcut and then click
on properties from the running window, the property page for
:C:\windows\system32\ntvdm.exe" is presented.

I understand that ntvdm is the NT Virtual Dos Machine and apparently
it runs anytime a 16 bit dos program is run. Therefore all of my 16
bit dos programs currently run with the same property settings. If I
change the properties from within a program it is actually changing
the ntvdm properties and applies to future 16 bit programs
 
W

Wesley Vogel

Bruce,

You have something wrong. I am not sure what.

cmd.exe has nothing to do with ntvdm.exe. cmd.exe is not a 16-bit program.

If you open command.com and click properties from the running window, you
will get the C:\windows\system32\ntvdm.exe Properties. command.com is a
16-bit program and runs under ntvdm.exe

Try this.
Open cmd.exe from your shortcut
Open Task Manager, Ctrl + Shift + Esc
Click on the Applications tab
Right click on Command Prompt and select: Go To Process
What is highlighted under the Process tab?

It should be cmd.exe not ntvdm.exe.

Try the same thing for command.com and ntvdm.exe will show up for the
Process.

What happens if you paste ...

C:\WINDOWS\system32\cmd.exe

into Start | Run and click OK?

Do you actually get cmd.exe running? Or do you get an error message?

Update your antivirus software and run a complete system scan.

--
Hope this helps. Let us know.

Wes
MS-MVP Windows Shell/User

In
 
B

Bruce

Interesting results.

When I run from the shortcut, and "go to process" I am taken to
ntvdm.exe.

If I run from the start run, I get the actual NTVDM.

Any ideas why this may be happening? It appears from looking at my
desktop that the cmd.exe command is setup as a pif instead of a lnk. I
don't know why but when I created a new shortcut, it set up properly.

(Two minutes later) Now that I think about it, I think when I
initially set this system up, I probably copied the command.com link
and edited it to a cmd.lnk. Am I correct that command.com is a 16 bit
program?


I still think I have the same problem with various 16bit programs
which I still use. They all default to ntvdm, is this correct, and all
have the same properties?

Thanks,
 
W

Wesley Vogel

Hi Bruce,

I just created a shortcut to command.com named MS-DOS Prompt.
command.com opened fine from that shortcut/pif.
I changed the Cmd line to C:\WINDOWS\system32\cmd.exe from
C:\WINDOWS\system32\command.com under the Program tab and Applied it.
I opened the shortcut, cmd.exe and ntvdm.exe both started.
Using Task Manager, ntvdm.exe showed up as the Process for cmd.exe/MS-DOS
Prompt from that shortcut.

A Search for *.pif found that shortcut that I had created.

I deleted the shortcut/pif.

So your suspicion is probably correct.

Delete that pif/shortcut and create a new shortcut for cmd.exe if you want
to. Maybe that will help with your other problem.

One way to tell a pif from a regular shortcut is that pif Properties have
Program, Font, Memory, Screen and Misc tabs and regular shortcuts do not
have those tabs.

Also a 16-bit .exe file does not have a Version tab under file Properties
and a 32-bit .exe does.

There should be a file called command, with no extension, in
C:\WINDOWS\system32. That command file is a pif for command.com
If I run from the start run, I get the actual NTVDM.

Do you mean Start | Run | cmd | gets you ntvdm?


wowexec.exe is used in conjunction with ntvdm.exe to run old DOS
applications.

[[MS-DOS and 16-bit Windows programs actually run as a Win32 process. The
program that creates the virtual MS-DOS environments for these to run in
(NTVDM.EXE) is a Win32 program. A virtual DOS machine (VDM) is created for
the program, so it thinks that it is running on a machine by itself.
However, the virtual machine is a normal 32-bit Windows NT process and is
subject to the same rules of preemptive multitasking as is other programs.
However, this only applies to MS-DOS programs. ]]

[[To run 16-bit Windows applications, NT uses a VDM that contains an extra
software layer called the Win16 on Win32 (WOW) layer. Although the VDM for
Windows shares some of the code for MS-DOS VDM, all Windows applications
share the same VDM. The reason this is done is to simulate the environment
that 16-bit Windows applications run in. Because Windows applications might
want to communicate with one another, a single VDM is used. Each 16-bit
application runs as a thread of the VDM; however, the WOW layers ensures
that only one of these threads is running at any given time. ]]
http://www.microsoft.com/technet/prodtechnol/winntas/evaluate/featfunc/windowsn.mspx#ETAA

[[ntvdm.exe is process that belongs to the Windows 16-bit Virtual Machine.
It provides an environment for a 16-bit process to execute on a 32-bit
platform. ]]
http://www.liutilities.com/products/wintaskspro/processlibrary/ntvdm/


Troubleshooting MS-DOS-based programs in Windows XP
http://support.microsoft.com/default.aspx?scid=kb;en-us;314106

How to Troubleshoot 16-Bit Windows Programs in Windows XP
http://support.microsoft.com/default.aspx?scid=kb;en-us;314495

If you're running a bunch of old 16-bit programs, take a look at this,
Lots of good 16-bit info here...
Appendix D - Running Nonnative Applications in Windows 2000 Professional
http://www.microsoft.com/technet/prodtechnol/Windows2000Pro/reskit/part8/proch36.mspx

HOW TO Identify a 16-bit Program in Windows XP
http://support.microsoft.com/?id=320127

--
Hope this helps. Let us know.

Wes
MS-MVP Windows Shell/User

In
 
B

Bruce

Wes:

Thanks for all the help. I may have mis used the term 16 bit
application. I think (if I understand it now) most of my older
programs were ms-dos programs. I think that may explain why changing
the properties on one, changes the properties on all.

Bruce




Hi Bruce,

I just created a shortcut to command.com named MS-DOS Prompt.
command.com opened fine from that shortcut/pif.
I changed the Cmd line to C:\WINDOWS\system32\cmd.exe from
C:\WINDOWS\system32\command.com under the Program tab and Applied it.
I opened the shortcut, cmd.exe and ntvdm.exe both started.
Using Task Manager, ntvdm.exe showed up as the Process for cmd.exe/MS-DOS
Prompt from that shortcut.

A Search for *.pif found that shortcut that I had created.

I deleted the shortcut/pif.

So your suspicion is probably correct.

Delete that pif/shortcut and create a new shortcut for cmd.exe if you want
to. Maybe that will help with your other problem.

One way to tell a pif from a regular shortcut is that pif Properties have
Program, Font, Memory, Screen and Misc tabs and regular shortcuts do not
have those tabs.

Also a 16-bit .exe file does not have a Version tab under file Properties
and a 32-bit .exe does.

There should be a file called command, with no extension, in
C:\WINDOWS\system32. That command file is a pif for command.com
If I run from the start run, I get the actual NTVDM.

Do you mean Start | Run | cmd | gets you ntvdm?


wowexec.exe is used in conjunction with ntvdm.exe to run old DOS
applications.

[[MS-DOS and 16-bit Windows programs actually run as a Win32 process. The
program that creates the virtual MS-DOS environments for these to run in
(NTVDM.EXE) is a Win32 program. A virtual DOS machine (VDM) is created for
the program, so it thinks that it is running on a machine by itself.
However, the virtual machine is a normal 32-bit Windows NT process and is
subject to the same rules of preemptive multitasking as is other programs.
However, this only applies to MS-DOS programs. ]]

[[To run 16-bit Windows applications, NT uses a VDM that contains an extra
software layer called the Win16 on Win32 (WOW) layer. Although the VDM for
Windows shares some of the code for MS-DOS VDM, all Windows applications
share the same VDM. The reason this is done is to simulate the environment
that 16-bit Windows applications run in. Because Windows applications might
want to communicate with one another, a single VDM is used. Each 16-bit
application runs as a thread of the VDM; however, the WOW layers ensures
that only one of these threads is running at any given time. ]]
http://www.microsoft.com/technet/prodtechnol/winntas/evaluate/featfunc/windowsn.mspx#ETAA

[[ntvdm.exe is process that belongs to the Windows 16-bit Virtual Machine.
It provides an environment for a 16-bit process to execute on a 32-bit
platform. ]]
http://www.liutilities.com/products/wintaskspro/processlibrary/ntvdm/


Troubleshooting MS-DOS-based programs in Windows XP
http://support.microsoft.com/default.aspx?scid=kb;en-us;314106

How to Troubleshoot 16-Bit Windows Programs in Windows XP
http://support.microsoft.com/default.aspx?scid=kb;en-us;314495

If you're running a bunch of old 16-bit programs, take a look at this,
Lots of good 16-bit info here...
Appendix D - Running Nonnative Applications in Windows 2000 Professional
http://www.microsoft.com/technet/prodtechnol/Windows2000Pro/reskit/part8/proch36.mspx

HOW TO Identify a 16-bit Program in Windows XP
http://support.microsoft.com/?id=320127
 
W

Wesley Vogel

Bruce,

All older MS-DOS programs *are* 16-bit programs. MS-DOS was never 32-bit.

PIFs are nothing more than custom startup files for MS-DOS-based programs.
PIFs allow you to setup custom settings for each 16-bit program
individually. You can even create two PIFs for each program if you want to
have to different seetings for each program.

If you start a 16-bit program from a command prompt window, the PIF settings
won't be used.

There is a whole bunch of info in Help and Support about PIFs, type pif in
the Search box to see them.

All of the following is from Help and Support (even though I included online
links).

[[A program information file (PIF) is created when you create a shortcut to,
or modify the properties of, an MS-DOS-based program. PIFs allow you to set
default properties for MS-DOS programs, such as font size, screen colors,
and memory allocation.

When you change any settings in an MS-DOS-based program, a PIF is
automatically created. The settings you specify will be used each time you
start the program by double-clicking its icon. If you start the program from
a command prompt window, these settings won't be used.

Creating a program information file (PIF) for an MS-DOS-based program
creates a shortcut to the program executable. All the settings saved in the
PIF file are contained in the shortcut. Windows displays PIF files as
shortcuts. ]]
from...
Using PIF files
http://www.microsoft.com/resources/...xp/all/proddocs/en-us/windows_pif_create.mspx

[[Creating separate program information files (PIFs) for shortcuts to MS-DOS
programs allows you to save different settings and formatting, which will
automatically be used when you start the program from the shortcut. ]]
from...
To set up two shortcuts for an MS-DOS program
http://www.microsoft.com/resources/.../all/proddocs/en-us/windows_dos_two_pifs.mspx

[[Creating a program information file (PIF) for an MS-DOS-based program
creates a shortcut to the program executable. All the settings saved in the
PIF file are contained in the shortcut. ]]
from...
To create or change a program information file (PIF)
http://www.microsoft.com/resources/...all/proddocs/en-us/windows_dos_configure.mspx

--
Hope this helps. Let us know.

Wes
MS-MVP Windows Shell/User

In
Bruce said:
Wes:

Thanks for all the help. I may have mis used the term 16 bit
application. I think (if I understand it now) most of my older
programs were ms-dos programs. I think that may explain why changing
the properties on one, changes the properties on all.

Bruce




Hi Bruce,

I just created a shortcut to command.com named MS-DOS Prompt.
command.com opened fine from that shortcut/pif.
I changed the Cmd line to C:\WINDOWS\system32\cmd.exe from
C:\WINDOWS\system32\command.com under the Program tab and Applied it.
I opened the shortcut, cmd.exe and ntvdm.exe both started.
Using Task Manager, ntvdm.exe showed up as the Process for cmd.exe/MS-DOS
Prompt from that shortcut.

A Search for *.pif found that shortcut that I had created.

I deleted the shortcut/pif.

So your suspicion is probably correct.

Delete that pif/shortcut and create a new shortcut for cmd.exe if you
want to. Maybe that will help with your other problem.

One way to tell a pif from a regular shortcut is that pif Properties have
Program, Font, Memory, Screen and Misc tabs and regular shortcuts do not
have those tabs.

Also a 16-bit .exe file does not have a Version tab under file Properties
and a 32-bit .exe does.

There should be a file called command, with no extension, in
C:\WINDOWS\system32. That command file is a pif for command.com
If I run from the start run, I get the actual NTVDM.

Do you mean Start | Run | cmd | gets you ntvdm?


wowexec.exe is used in conjunction with ntvdm.exe to run old DOS
applications.

[[MS-DOS and 16-bit Windows programs actually run as a Win32 process.
The program that creates the virtual MS-DOS environments for these to
run in (NTVDM.EXE) is a Win32 program. A virtual DOS machine (VDM) is
created for the program, so it thinks that it is running on a machine by
itself. However, the virtual machine is a normal 32-bit Windows NT
process and is subject to the same rules of preemptive multitasking as
is other programs. However, this only applies to MS-DOS programs. ]]

[[To run 16-bit Windows applications, NT uses a VDM that contains an
extra software layer called the Win16 on Win32 (WOW) layer. Although
the VDM for Windows shares some of the code for MS-DOS VDM, all Windows
applications share the same VDM. The reason this is done is to simulate
the environment that 16-bit Windows applications run in. Because
Windows applications might want to communicate with one another, a
single VDM is used. Each 16-bit application runs as a thread of the
VDM; however, the WOW layers ensures that only one of these threads is
running at any given time. ]]
http://www.microsoft.com/technet/prodtechnol/winntas/evaluate/featfunc/windowsn.mspx#ETAA

[[ntvdm.exe is process that belongs to the Windows 16-bit Virtual
Machine. It provides an environment for a 16-bit process to execute on a
32-bit platform. ]]
http://www.liutilities.com/products/wintaskspro/processlibrary/ntvdm/


Troubleshooting MS-DOS-based programs in Windows XP
http://support.microsoft.com/default.aspx?scid=kb;en-us;314106

How to Troubleshoot 16-Bit Windows Programs in Windows XP
http://support.microsoft.com/default.aspx?scid=kb;en-us;314495

If you're running a bunch of old 16-bit programs, take a look at this,
Lots of good 16-bit info here...
Appendix D - Running Nonnative Applications in Windows 2000 Professional
http://www.microsoft.com/technet/prodtechnol/Windows2000Pro/reskit/part8/proch36.mspx

HOW TO Identify a 16-bit Program in Windows XP
http://support.microsoft.com/?id=320127
 
B

Bruce

Wes:

Is there a trick to changing the quickedit option from a pif. If I
right click on a short cut, the misc tab has the quickedit option
greyed out. Again, I can change this when the program is running (from
the properties) but that seems to change the properties for the ntvdm
program as opposed to be specific to the pif.


Thanks,

Bruce
 
W

Wesley Vogel

Hi Bruce,

Not exactly sure here, but I have Quick Edit and Insert Mode set in
command.com and cmd.exe.

Open command.com
Right click the Title bar
Properties
Options tab
Select both Quick Edit and Insert Mode under Edit Options
OK

Right click cmd.exe shortcut
Properties
Options tab
Select both Quick Edit and Insert Mode under Edit Options
OK

Or you can select Properties by right clicking the Title bar of an open
cmd.exe window.
----

On a PIF you need to be running under Windows 95 Compatibility mode on the
Compatibility tab in order to get the Quick Edit feature.

Quick Edit from What's This? on a PIF file...
[[Specifies that the mouse can be used to select text for cutting and
copying. If QuickEdit is not selected, you must click Mark on the Edit menu
to mark text for cutting and copying.

This feature is only in effect when the program is run under the Windows 95
operating system.]]

--
Hope this helps. Let us know.

Wes
MS-MVP Windows Shell/User

In
Bruce said:
Wes:

Is there a trick to changing the quickedit option from a pif. If I
right click on a short cut, the misc tab has the quickedit option
greyed out. Again, I can change this when the program is running (from
the properties) but that seems to change the properties for the ntvdm
program as opposed to be specific to the pif.


Thanks,

Bruce

Bruce,

All older MS-DOS programs *are* 16-bit programs. MS-DOS was never
32-bit.

PIFs are nothing more than custom startup files for MS-DOS-based
programs. PIFs allow you to setup custom settings for each 16-bit program
individually. You can even create two PIFs for each program if you want
to have to different seetings for each program.

If you start a 16-bit program from a command prompt window, the PIF
settings won't be used.

There is a whole bunch of info in Help and Support about PIFs, type pif
in the Search box to see them.

All of the following is from Help and Support (even though I included
online links).

[[A program information file (PIF) is created when you create a shortcut
to, or modify the properties of, an MS-DOS-based program. PIFs allow you
to set default properties for MS-DOS programs, such as font size, screen
colors, and memory allocation.

When you change any settings in an MS-DOS-based program, a PIF is
automatically created. The settings you specify will be used each time
you start the program by double-clicking its icon. If you start the
program from a command prompt window, these settings won't be used.

Creating a program information file (PIF) for an MS-DOS-based program
creates a shortcut to the program executable. All the settings saved in
the PIF file are contained in the shortcut. Windows displays PIF files as
shortcuts. ]]
from...
Using PIF files
http://www.microsoft.com/resources/...xp/all/proddocs/en-us/windows_pif_create.mspx

[[Creating separate program information files (PIFs) for shortcuts to
MS-DOS programs allows you to save different settings and formatting,
which will automatically be used when you start the program from the
shortcut. ]] from...
To set up two shortcuts for an MS-DOS program
http://www.microsoft.com/resources/.../all/proddocs/en-us/windows_dos_two_pifs.mspx

[[Creating a program information file (PIF) for an MS-DOS-based program
creates a shortcut to the program executable. All the settings saved in
the PIF file are contained in the shortcut. ]]
from...
To create or change a program information file (PIF)
http://www.microsoft.com/resources/...all/proddocs/en-us/windows_dos_configure.mspx
 
B

Bruce

Wes,

You have been a great help. I am finding several ways to do what I
want. Now I have noticed one more strange behavior.

One of my older programs is a spreadsheet program called super calc.
It is a dos version and I still use it for some sheets.

From the start-run menu, if I run sc5.exe, the program opens in a
ntvdm environment.

If I create a bat file which does nothing but run the program, then it
runs in a cmd environment. It seems that creating bat files to run
solves my problem but it does not make much sense to me. I can only
assume that XP believes all bat files to be 32 bit programs.

Bruce
 
W

Wesley Vogel

It beats the heck out of me, Bruce. But if that works, what the hey?


--
Hope this helps. Let us know.

Wes
MS-MVP Windows Shell/User

In
Bruce said:
Wes,

You have been a great help. I am finding several ways to do what I
want. Now I have noticed one more strange behavior.

One of my older programs is a spreadsheet program called super calc.
It is a dos version and I still use it for some sheets.

From the start-run menu, if I run sc5.exe, the program opens in a
ntvdm environment.

If I create a bat file which does nothing but run the program, then it
runs in a cmd environment. It seems that creating bat files to run
solves my problem but it does not make much sense to me. I can only
assume that XP believes all bat files to be 32 bit programs.

Bruce




Hi Bruce,

Not exactly sure here, but I have Quick Edit and Insert Mode set in
command.com and cmd.exe.

Open command.com
Right click the Title bar
Properties
Options tab
Select both Quick Edit and Insert Mode under Edit Options
OK

Right click cmd.exe shortcut
Properties
Options tab
Select both Quick Edit and Insert Mode under Edit Options
OK

Or you can select Properties by right clicking the Title bar of an open
cmd.exe window.
----

On a PIF you need to be running under Windows 95 Compatibility mode on
the Compatibility tab in order to get the Quick Edit feature.

Quick Edit from What's This? on a PIF file...
[[Specifies that the mouse can be used to select text for cutting and
copying. If QuickEdit is not selected, you must click Mark on the Edit
menu to mark text for cutting and copying.

This feature is only in effect when the program is run under the Windows
95 operating system.]]
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top