This text file relates how you can build a better Windows 3.11 (Windows for Workgroups). I have compiled many tricks, tips and secrets into this text, in hopes of enriching a few more lives. If you thought you knew a lot about Windows 3.x before, then you're in for a surprise. There are secrets, features and add-on programs which will make Windows 3.11 last for many more years to come.
2017-01-22 -- Edited for formatting.
- And tagged a lot of things TODO
- 2003-07-07 -- This was stuck in offline archives, and it had already been a dead project for some time.
Windows 3.12 setup information file, revision a
- 1 Introduction - Text Description
- 2 Preamble - Legal Notes
- 3 Starting Notes - General Notes
- 4 Primary Installation - Installing Windows 3.11
- 5 Secondary Installations - Installing Companion Programs / Drivers
- 6 Tertiary Installations - Installing Your Applications
- 7 Windows Customization - Hints For Customization
- 8 Troubleshooting
- 9 File explanations
- 10 Miscellaneous
- 11 Unanswered questions
- 12 Old notes
Introduction - Text Description ∞
NOTE: IF YOU ARE NOT EXTREMELY EXPERIENCED WITH WINDOWS 3.x THEN RUN AWAY SCREAMING! THIS IS NOT FOR YOU!!
However: This text is a great learning tool, so carefully reading through it will probably teach you a something.. (Or confuse the hell outta you!)
My example uses Windows 3.11, mainly because there are some SERIOUS benefits which it has over the standard Windows 3.1, namely 32 bit file access, better device contention, built-in networking and more.
As I hinted on earlier, I will also be listing numerous add-on programs and drivers which, when installed and configured properly will make Windows 3.11 frighteningly impressive. Nobody has created a sufficiently useful list of such programs.. so I have.
Preamble - Legal Notes ∞
THERE ARE NO WARRANTIES EXPRESS OR IMPLIED!
I AM NOT RESPONSABLE FOR DAMAGES, LOSSES OR THE LIKE!
Editing: Contact Me for any suggestions for revision to me. Do not make any alterations yourself. This includes altering any contents of the archive save for the archive header. Yes, this means you may not convert this archive to another compression type, or make it self extracting.
Translation: Don't! Universally, translations STINK. How would I deal with people emailing me in another language?!
Selling: It must remain totally free in every sense of the word. e.g. It may not be placed on a pay bulletin board, or be given restricted access on one. If it is placed on a disk and mailed, this may only be done if there is no charge for any of the information on it, including this archive.
Place On Read-Only Media: Don't, I don't want old versions of this to linger! Also, please, resist the urge to keep old versions of this around. If you see that there is a new version available, download it, verify it, and then delete your old version.
Packaged: I don't want this archive included in any other archive file.
Starting Notes - General Notes ∞
- References to the
<WINDOWS>directory means the directory which you have set Windows up in. Eg: The default is
\WINDOWSIf you get confused easily, then do a global search and replace on this file: Search for
<WINDOWS>and replace it with whatever you gave your Windows 3.x directory as a name.
- The use of --Batch-- signifies that the next few lines are a batch file.
- Back up your old Windows 3.x This is as simple to do as renaming your
<WINDOWS> directory. Rename it to
OLD_WIN if you intend to use the batch file helpers included at the end of this text. The standard DOS rename command cannot rename directories, but the 4DOS rename CAN. If you are without 4DOS (how?!), then you have two solutions:
@ECHO OFF C: CD\ MD OLD_WIN xcopy.exe/S <WINDOWS> OLD_WIN
Or you could perform the installation of Windows 3.11 as another directory name other than
The old Windows 3.x may not work if you abort these setup procedures. To properly abort this installation process at any time, these three things must be done:
- Delete any sign of a swapfile:
ATTRIB -A -R -S -H \386spart.par DEL \386spart.par DEL \<WINDOWS>\spart.par EDIT \<WINDOWS>\system.ini : - Place a semicolon ";" at the beginning of the swapfile : definitions in the [386Enh] section. Eg: PermSwapDOSDrive=C and : PermSwapSizeK=8190.
Re-create the swap file within your old Windows. Enter the
Control Paneland go into
386 Enhanced, then select
Virtual Memoryand enter the appropriate number.
After installing EACH AND EVERY program, you must make notes on what files were added to your system by what programs. This is easily done with Rex Conn and JP Software Inc.'s 4DOS "describe" command. I made a batch program called "redesc" which searches through subdirectories and marks previously unmarked files, this allows me to mark all new files added to my system. However, there are several problems inherent with programs which *share* files. You can usually determine if a package shares another piece of software by looking at the
<WINDOWS>\SYSTEM directory, and seeing if a described file is now mysteriously at the bottom of the unsorted directory list. If so, then the new program you just installed has copied that file over, forcing it to the bottom of the dir listing. You may not be able to determine if the file which replaced it is newer or older (which might cause problems). Furthermore, some software installation packages skip files which already exist on your system. The only way to determine which programs share which files is to use one of many special program which actively search out the internal information inherent in windows executables and data files, showing you which .exe's go with which .dll's etc... Such a program is also handy for finding files which have no parent program which calls it.
You may want to know which files are shared between which programs if you intend to delete packages. Sometimes you may delete a program, and then find that you deleted a shared file, and some other program will not function.
Usually it is simple to determine which files are shared, and mark them as such. Most of the time, shared files will not cause a problem, if you pay attention to the order you install (and describe) the files in.. install the programs which you are least likely to remove (win32s/wing etc..), and then the rest. This will help you avoid deleting shared files.
Another note is that you should also take note of which programs have edited the
win.ini just to keep track. Usually it is easy, if a path is entered into the .ini, but you may want to back up your old .ini files and do a compare between the new and old, and then make a remark to describe the driver, command or whatever, which is new to the .ini file(s). Making a remark is as easy as this:
display.drv=vga.drv ; Standard VGA (640x480x16c) driver
Just put in some spaces or tabs, a semicolon ";" and your comment. Anything to the right of a semicolon is ignored by Windows. You may also wish to "mark" all of the current lines, with a semicolon, to be able to refer back to it to see if the semicolon has been removed, which shows that the line was edited.
You may NOT simply copy over your
win.ini to the new Windows directory. Certain options may not be included, or may conflict. For example, in the
device=LANMAN10.386 does not exist any longer (old Windows 3.1/Windows for Workgroups 3.1 option). This command would conflict with a Cd-Rom (if any).
Primary Installation - Installing Windows 3.11 ∞
Windows 3.11 (fresh install)
- You may not need disks 7-9 as they are for printer and network drivers.
- Instead of using the individual floppy disks, you may alternately copy them all into one directory. (No subdirectories needed). When you run the setup program, it will still prompt you to insert a disk, but just keep on pressing enter, and eventually the installer will quit bothering you and just assume that the rest of the necessary files are in the same directory. This method of installation is exemplary due to it's extreme speed and ease of re-use. It's perfect for people like me that insist on re-installing Windows multiple times to set it up properly.
I shouldn't have to tell you, but you ought to perform the Windows setup as a "Custom" setup, and not an "Express". Not only do you want/need more control over the installation, but the express installation can make mistakes by not finding your mouse etc.. which is a pain.
When prompted with the hardware/software list:
- Change the display now, if you can. It will make sure that unused video drivers are not installed to your system, and then left unused when you setup another driver. However, you may wish to keep that suggested driver in case of video troubles. There is a list at the end of this text, detailing which files relate to the VGA (version 3.0) drivers.
I highly recommend you changing the Language to "International English", this will install a special language library (
Brought into Windows (graphic mode).
- Enter your Full Name, Company Name and Product Number.
Optional Tasks are shown:
- Leave the first two selected, but deselect "Set Up Applications Already On Hard Disk(s)". This assumes that you have already properly set up Windows, or that you don't need the "help" that this function offers. It is, however, a nice shortcut.
- Select the applications you wish to install, and deselect ALL choices. This assumes that you have a previous copy of Windows. It's a simple task to switch all of the standard Windows programs over to your new Windows setup. A batch program is included at this text's end.
Virtual Memory: This is memory which is created out of disk space. It is basically a cheat to get more memory, albiet it is slower. Virtual Memory is required for Win32s, so don't think you can do without it, even if you think you have "lots" of memory. NOTE: Playing with the virtual drive settings while you have a "backed up" copy of your old windows might render that copy partially inoperative. Refer to the hint at the beginning of this text which relates how to remove the old swapfile.
- Make the Swap File *permanent*. This is for additional speed.
-- Personally, I set up my Swap File to be 8,190k. It's a good size.
-- Windows 3.11 will not allow you to use a Swap File over a certain size sometimes, so if you see that your original value was ignored and a slightly lower one was used, don't get worried.
- Select 32-bit disk/file access if you can. It gives Windows a better access time. 32 bit disk access requires a compatible controller card, but if that selection is greyed out and you don't believe it (like me), then edit your
system.iniand enter under [386Enh] "32BitDiskAccess=ON". You will find that under your Control Panel's 386 Enh section, the checkbox will no longer be greyed.
- Your Cache Size is estimated by Windows 3.11, leave it as is. Mine is set to 3,072k.. this value changed depending on if you use 32 bit file access or not.
- Make the Swap File *permanent*. This is for additional speed.
- You must make sure that you use
device=C:\WINDOWS\IFSHLP.SYS- required for certain networking functions, and also for 32 bit file access.
- You must make sure that you use
Secondary Installations - Installing Companion Programs / Drivers ∞
Install Your Major Hardware Drivers:
- Go into the Printer Setup, and play with the fax settings until you get what you desire. This function will allow you to fax, as a regular print function in most applications. You may need to set this as your default printer if you haven't installed a printer driver.
Your sound card/PC speaker software for Windows
- Sound card drivers
-- TODO - list pc speaker driver
- Sound card drivers
Your Cd-Rom driver
TODO - Win32s - 32 Bit Extender ∞
TODO - WinG - Graphics Extender ∞
TODO - Cybercomm - comm.drv replacement ∞
TODO - Midas - mod/s3m MCI driver ∞
TODO - ? - avi MCI driver ∞
TODO - Other MCI drivers ∞
TODO - Fax driver ∞
Usually this comes with your major fax application. My pick would definitely have to be bitfax.
Tertiary Installations - Installing Your Applications ∞
Install your applications.
Attend to your "major" applications first (ie: Large packages such as MS Office, or Visual Basic). Then install the "smaller" applications. You may wish to install them fresh, or to move them over from your old Windows directory.
Windows Customization - Hints For Customization ∞
Relocating Files ∞
Windows 3.11 Applications
Programs which are required to be in the
<WINDOWS> directory - TODO - confirm
- notepad.exe - Commonly called as
<WINDOWS>\notepad.exeby other programs.
- setup.exe - Otherwise the program refuses to run
write.exe - Commonly called as
<WINDOWS>\notepad.exeby other programs.
Paths - Edit
system.ini and put paths in, if you wish to change the locations of certain programs.
Font Relocation - You may not relocate your fonts, as most programs (like progman.exe) assume them to be in the
<WINDOWS>\SYSTEM dir. TODO - Is it possible to relocate just the major fonts referred to by the
TODO - Customizing colours ∞
TODO - Customizing wallpaper ∞
TODO Making your own wallpaper - TODO - stiletto
win.com Customization ∞
Creating A New Startup Logo ∞
Making a custom bitmap and recompiling a new win.com
TODO - create a batch file to help out..
TODO - Customizing Sounds ∞
TODO - stiletto
TODO - Program Associations ∞
TODO - The Windows "search path"
TODO - Dealing With Fonts ∞
TODO - Associated programs, finding duplicates, what [system] fonts should not be deleted.
[Un]common problems and solutions
SET commands should be loaded first to avoid "Out of Environment Space" errors when starting win 3.11
Be aware of TSR's which conflict with Windows 3.11, they are listed in the
setup.txt - TODO - get a better list from the public.
File explanations ∞
.bmp- Picture file, used as wallpaper
.cln- "Clean" .ini files. Saved as a backup reference
.dll- Dynamically Linked Library. Usually has the same name as the .exe, although the .exe might use several .dll's with different names.
.grp- Group information file: For progman.exe, stores the info on which icons are in which groups, and where.
.hlp- Help data file. Usually has the same name as the .exe
.ini- Data file: For program preferences. Usually has the same name as the .exe which made/uses it.
.mid- Sound file
.pif- Program Information File. Used to define special settings for any particular DOS application. Refer to
.wav- Sound file, for system sounds
.win- Modified suggestion. Created if the original file(s) (
autoexec.bat) was not modified.
.wri- Windows Write document.
_default.pif- This is the default Program Information File, from which all DOS applications run from within Windows refer to. It contains specific settings which will alter the way any particular DOS application works. It must be tweaked carefully if you wish to avoid making a
.piffor all of your DOS applications.
ifshlp.sys- Windows 3.11 driver: Required for 32bit file access as well as file and printer sharing.
monoumb2.386- (On the Windows 3.1 install disks and not 3.11)
monoumb2.386are device drivers that allow certain memory managers to use the monochrome address range for upper memory blocks even if your display driver is accessing this range.
moricons.dll- Library of icons. You may select this filename during the Icon selection dialigue, and use one of the many icons in it.
spart.par- Virtual Memory file data file, acts as a pointer to the physical location of the
system.ini, before installing overtop of an old version of Windows.
vshare.386- File sharing/locking program for file/printer sharing.
wfwnet.drv- For file/printer sharing.
win.ini, before installing overtop of an old version of Windows.
xmsmgr.exe- Command line XMS memory manager. Yes, one exists! However, don't attempt to use this as a himem.sys replacement.. it is quirky (yes, I've tried), seeing as it was made specifically for the Windows initial setup. This file can only be found if the setup fails, or on the Windows 3.11 install disk 1.
C:\386spart.par- Virtual Memory swapfile. May not exist if you use a temporary swapfile.
SYSTEM\*.drv- MCI driver file.
SYSTEM\files with the extensions
*.ttf- Font. Note that some of the fonts shown in the directory might not actually be defined in the
win.ini, because they are "system fonts", referred to in the
TODO - Unknown files:
dosapp.ini- In the
system.inithere is a
[NonWindowsApp]section.. Shouldn't that cover any need to specifically define DOS application info? Also, this seems to spill over with unnecessary data (for programs which might not exist any longer).
mouse.ini- Why would Windows need a
mouse.ini?! The mouse type was specified during the Windows installation. Also, there aren't any differences between types of mice, and the mouse rate etc.. is defined in the
- TODO - change
mvi opl3 fm
- TODO - edit
apps.inf(disk4), and include a more modern list.
TODO - edit
setup.inf(disk1), and put in my own comments/alterations etc..
Old in win 3.x, replacable by dos 6.22:
lmouse.exe- dos logitech mouse driver
TODO - List the VGA version 3.0 driver files
TODO - Create a batch file to copy all of the old windows apps over to the new windows setup
TODO - I need a program to be able to move the
386spart.par to the LAST possible location on the disk, and then edit/remake the
spart.par to have Windows understand the move. Or in general, an
spart.par editor would be nice.
Unanswered questions ∞
(In order of general location to reference in this text)
TODO - Should I release this text as a hypertext
.hlpfile? What about as a
.wrior some other formatted non-dos text file?
- I should probably avoid it since this text is kinda meant for people first installing Windows, not people with a version already.
- I want to create an up to date
apps.inf. Check out that file on disk 4, and see what you can add to it. Send your additions and I will include them in the next revision. This file is also in
<WINDOWS>\SYSTEM, but apparently is different than disk 4's
- I want to know if there is an internet site which is all encompassing with regards to Windows. I may want to have this text available on a specific site(s), and also include various add-on programs there. I may also want to store printer, video and other device driver updates there.
- Are most common printers on disk 6 like in Win 3.1?
What really is the international English language library file? (
- Does its existence alter spelling or something?
- Is a permanent Swap File really faster than a temporary one? Wouldn't it just affect startup speed? The size limitation on a permanent swap file makes it somewhat annoying.
- Does the size of the Swap File affect it's speed? Will a larger one slow down the computer even if it's not all being used?
- Give me some more information about the "Cache Size", listed under Virtual Memory. Why does it estimate such a large value when you choose 32 bit file access?
- Why does
ifshlp.syshave that filename?
What else is
spart.parfor? What information does it contain? Can it be edited?
Old notes ∞
bootlog.txt - make it zero length, then describe it.
user.exe contains the registered name/company