One of the most interesting things about Windows is that it is not one big executable file. It relies on a lot of files in order to operate properly. One of the key types of files that Windows uses, is a file type called the INI file. These are all text files with the extension .ini.
If you look in your \windows directory, you'll probably notice a lot of files with the extension .ini. Most large Windows programs have these .ini files. Since they are text files, you can use Notepad to view and modify them. Let's actually take a look at one:
You should see something like this:
[Settings] Window=176 253 794 723 2 SaveSettings=1 MinOnRun=0 AutoArrange=1 Order= 9 18 20 29 11 17 3 display.drv=8017608s.drv Startup=Startup
[Groups] Group1=C:\WINDOWS\MAIN.GRP Group2=C:\WINDOWS\ACCESSOR.GRP Group7=C:\WINDOWS\STACKER.GRP Group4=C:\WINDOWS\STARTUP.GRP Group12=C:\WINDOWS\WORDFORW.GRP Group5=C:\WINDOWS\WNTOOLS.GRP Group38=C:\WINDOWS\AMERICA0.GRP Group27=C:\WINDOWS\COREL50.GRP Group8=C:\WINDOWS\C4W1994.GRP Group9=C:\WINDOWS\VIRGINGA.GRP Group3=C:\WINDOWS\DELORME.GRP Group6=C:\WINDOWS\NETWORK.GRP Group14=C:\WINDOWS\PAPERDIR.GRP
Everything in the brackets ([ and ]) are know as a section header. The items under it are related to that section. The next lines are broken into 2 parts: the keyname and the value. The keyname is before the equals sign and the value is after. For example: SaveSettings(Keyname) = 1 (Value). Windows uses these files for items that can change. For example the SaveSettings line above is set depending on whether Save Settings on Exit is checked or not in Program Manager. In case you haven't figured it out by now, the progman.ini is the settings for Program Manager.
Windows has 2 main .ini files: win.ini and system.ini. When Windows starts it looks at the values in both of these files to determine what settings to start with. win.ini holds information about Windows programs, desktop options, font information, sound assignments, etc. The system.ini contains information about the different drivers and other system options. All Windows systems have these two files and Windows will not start without them.
As we saw, we can look at these files in Notepad since they are all text files. But, Microsoft has a little utility hidden away which lets us modify the win.ini and system.ini, as well as the autoexec.bat and config.sys files. This program is called sysedit. To run it, choose Run from the Program manager menu and type sysedit. Four windows will come up if you're running Windows 3.1: win.ini, system.ini, autoexec.bat, and config.sys. If you're running Windows for Workgroups 3.11 you'll see those plus protocol.ini, msmail.ini, and schdplus.ini.
Sysedit allows you to view and edit this files in order to make changes to the Windows system. Now, most users will never need to manually edit the .ini files since most of the settings are automatically modified by Windows in some manner. Control Panel, for instance modifies .ini files depending on the settings the user selects. However, these files are useful in diagnosing problems or just understanding how Windows really works. Since these files are vital to the system, you should NOT modify them unless you know the proper syntax and operation of the .ini files.
If you would like to know more about Windows .ini files and you feel that you have a strong understanding of the basics of Windows, I would recommend the Windows 3.1 or Windows for Workgroups 3.11 Resource Kit from Microsoft, which explains in great detail the win.ini and system.ini files as well as how Windows really works.
These .ini files are a major part of how Windows works. Although this isn't a comprehensive look at .ini files, it should give you a basic idea of what they are and what they look like. It should also give you an idea of the complexity of the Windows environment and, hopefully, a better understanding of it.