Microsoft KB Archive/269030

From BetaArchive Wiki
Knowledge Base

How to Increase Available File Handles for MS-DOS-Based Programs in Windows Millennium Edition

Article ID: 269030

Article Last Modified on 1/27/2007


  • Microsoft Windows Millennium Edition

This article was previously published under Q269030


Microsoft Windows Millennium Edition (Me) only parses the Config.sys file for environment variables; therefore, settings used by MS-DOS-based programs running in Windows Me are not set inside the Config.sys file. Among these settings is the FILES value, which determines the number of file handles in a program's Job File Table (JFT).


Even if additional file handles are needed by an MS-DOS-based program, the FILES setting does not function. Instead of the FILES setting, the PerVMFiles setting is used. This setting increases the number of available file handles in each MS-DOS virtual machine (VM) and is implemented by adding the following line to the [386Enh] section of the System.ini file:


In Windows Me, each MS-DOS VM is given the default FILES value of 30 file handles. The maximum number of file handles a VM can have is 255. Because the total number of file handles cannot exceed 255, the maximum PerVMFiles setting is 225. This value, plus the 30 made available by default, equals the maximum total of 255. You must restart Windows Me for this change to take effect. For additional information, click the article numbers below to view the articles in the Microsoft Knowledge Base:

269524 Overview of Real Mode Removal from Windows Millennium Edition

261825 'Out of Environment Space' Running Batch File or Command Prompt

250238 Setver.exe Is Not Loadable in Windows Millennium Edition

The Buffers statement in the Config.sys file is also not used by MS-DOS-based programs running in Windows Me. The Buffers statement is used to allocate memory for a specified number of disk buffers. These disk buffers are used to hold small amounts of data during read and write operations (input-output, or I/O, requests) only when using the Real mode MS-DOS file system.

Windows Me (like previous versions of Windows 95 and Windows 98) sets Buffers to 30 by default, but all I/O requests in Windows are handled through the Protected-mode input-output subsystem (Ios.vxd). This subsystem eliminates the need for MS-DOS Buffers support by providing a Protected-mode cache, VCache. MS-DOS-based programs that require more than 30 buffers may not work correctly in Windows Me; however, Windows-based programs are not affected by the Buffers statement in most cases, even if the 30 existing MS-DOS buffers are not needed.

Both the Files= and Buffers= statements in the Config.sys file are only used when starting your computer with a Windows Me Startup Disk that includes a Config.sys with these settings. If your MS-DOS-based program does not run in Windows because it needs a Files or Buffers setting in the Config.sys file, then you may be able to start your computer with a Windows Me Startup Disk that includes these settings and run the program in Real mode.

Additional query words: msdos handle files

Keywords: kbenv kbfaq kbnofix kbprb KB269030