Adapting the Manufacturer and Model Sections of SMPDATA.INF

A listing of the [Manufacturer] section from SMPDATA.INF, the models section it refers to, and the modified [Strings] section are shown in the following:

[Manufacturer]
%Mfg% = Microsoft
 
[Microsoft]
%Modem1% = Modem1, PCMCIA\RIPICAB-RC144ACL-3BD0
%Modem2% = Modem2, UNIMODEME9DF4BA4
 
[Strings]
ClassName = "Modem"
Mfg = "Zip"
Modem1 = "Zippy 144 PCMCIA Data Fax Modem"
Modem2 = "Zippy 288 External Data Fax Modem"
 

An optional change is to rename the section that specifies the friendly names of your modems, the modem IDs, and the INF sections that contain the installation scripts for each modem model. For example, you might change [Microsoft] to [Models]. This change is optional because as long as the [Manufacturer] section refers to the correct section name, the INF will work. But you may want to get the string value of another company name, such as "Microsoft," out of your INF file. After the change, these three sections look like this:

[Manufacturer]
%Mfg% = Models
 
[Models]
%Modem1% = Modem1, PCMCIA\RIPICAB-RC144ACL-3BD0
%Modem2% = Modem2, UNIMODEME9DF4BA4
 
[Strings]
ClassName = "Modem"
Mfg = "Zip"
Modem1 = "Zippy 144 PCMCIA Data Fax Modem"
Modem2 = "Zippy 288 External Data Fax Modem"
 

The most important change you must make is to change the modem ID strings in the [Models] section to match the modem IDs of your modems. If you carried out the procedures described in Using Tools to Obtain Modem ID Strings from Modems, then you know what modem ID strings your modems produce. For example, the modem ID of the Zippy 144 PCMCIA Data Fax Modem might be "PCMCIA\ZIP-DATAFAX_14.4-77CE" and the modem ID of the Zippy 288 External Data Fax Modem might be "UNIMODEMAC9AF91E."

One way to adapt the [Models] section to your modems is to simply substitute your modems' ID strings for the sample strings. So, for example, the Manufacturer and Strings sections would look like this:

[Manufacturer]
%Mfg% = Models
 
[Models]
%Modem1% = Modem1, PCMCIA\ZIP-DATAFAX_14.4-77CE
%Modem2% = Modem2, UNIMODEMAC9AF91E
 
[Strings]
ClassName = "Modem"
Mfg = "Zip"
Modem1 = "Zippy 144 PCMCIA Data Fax Modem"
Modem2 = "Zippy 288 External Data Fax Modem"
 

However, there are other ways you can adapt the [Models] section to your modems. For more information, see the topic Using Rank 0, Rank 1, and Rank 2 Modem ID Strings.

When you are looking at existing modem INF files, the links between the Manufacturer sections items and the other sections it refers to may be hard to follow at first. One reason for this is that the sections referred to can be named anything. Following is an example that shows the relationships.

The [Manufacturer] section contains one line for each manufacturer name to be displayed in the Modems control panel. Note that an INF can contain several manufacturers and some of the modem INF files packaged by Microsoft and shipped with Windows 95 do so.

When the left-hand side of an item is contained in percent characters ("%"), it references a line in the [Strings] section. The right-hand side of a [Manufacturer] section always names an INF section that lists all the driver models built by this manufacturer that can be installed with the INF file, along with a recognition ID string for each model.

The [Models] section contains one line per each modem associated with one manufacturer listed in the [Manufacturer] section.

[Manufacturer]
%Mfg%  = Models
 
[Models]
%Modem1% = Modem1, *ACM1234
%Modem2% = Modem2, *ACM5678
 

The left hand side of the items in the example Manufacturer sections shown previously are contained in percent characters ("%") to reference a line in the [Strings] section because this string, the modem model name the customer sees, will be displayed in a user interface. Putting all the displayable strings in one INF section makes the INF easier to adapt to international markets. Only the strings in the [Strings] section have to be translated to other languages. The right-hand side of each item names an install-type section for the modem, followed by the modem's device ID, if any. Windows 95 uses the device ID to automatically install the modem.

The [Strings] section contains one line per user-visible string referenced by other sections. The [Strings] section for modem INF files usually always contain:

For example,

[Strings]
; This section lists strings that are used by the Modems control panel applet
; and the Install New Modem wizard.
; For example, Modem1 will appear as "Microsoft 144 PCMCIA Data Fax Modem".
ClassName = "Modem"
Mfg = "Microsoft"
Modem1 = "Microsoft 144 PCMCIA Data Fax Modem"
Modem2 = "Microsoft 288 External Data Fax Modem"