Chapter 12 - Simple Management Tools at Magnificent Bank

Archived content. No warranty is made as to technical accuracy. Content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.
By Rick Varvel, MCS—Portland

Chapter 1 looked at setting up operational procedures in your organization, outlining best practices in running an efficient network. Chapter 2 stepped back and looked at a Microsoft Systems Management Server (SMS) deployment, using site hierarchy to inventory hardware and software and distribute packages while minimizing bandwidth utilization. But what happens on the day-to-day level as you tune your management infrastructure? This chapter describes two simple issues and the tools to troubleshoot them: getting unique SMS computer (machine) IDs and adjusting client remote control settings. Microsoft Consulting Services (MCS) developed both the GetSMSID and RCPATCH tools while working with Magnificent Bank to streamline network management.

In Focus


Magnificent Bank, based in Tombstone, Arizona, has over 150 branch offices throughout the Southwest and Mexico.


Branch offices connect over a wide area network (WAN), with 3200 users sharing 1500 computers.


Effectively managing the network remotely while minimizing support needed to configure SMS clients, and the potential errors introduced by end user modifications.


Magnificent Bank used the GetSMSID and RCPATCH tools created by MCS.

What You'll Find In This Chapter

  • Description and steps for using GetSMSID—a tool that end users can use to get SMS-related information.

  • Description and steps for using RCPATCH—a tool for changing the remote control settings.

Warning: This chapter makes recommendations for tuning the Windows NT registry using the Registry Editor. Using the Registry Editor incorrectly can cause serious, system-wide problems that require you to reinstall Windows NT. Microsoft cannot guarantee that any problems resulting from the use of Registry Editor can be solved. Use this tool at your own risk.

On This Page

Determining SMS Unique IDs Using GetSMSID
Adjusting SMS Remote Control Settings Using RCPATCH
More Information

Determining SMS Unique IDs Using GetSMSID

SMS administrators and helpdesk staff need to know each computer's SMS unique ID (SMSID) in order to inventory hardware and software, distribute packages, troubleshoot, and so forth. If you distribute GetSMSID to each desktop, end users can determine at a glance their computer's SMS unique ID, the SMS domain, and other SMS-related information to assist helpdesk staff in troubleshooting the SMS client's installation.

SMS 1.2 identifies each computer in the SMS database using a unique number, which is stored in C:\SMS.INI under the [SMS] section:

SiteCode=SKZ SMS Unique ID=SKZ01234

SMS uses the SMSID to target computers for software distribution, among other things. In most cases a computer has only one user, so it is possible to send software to either a group of SMSIDs or a group of users based on an SMS machine group or query. However, if a computer has multiple users, SMS lists only the last user to logon, making it impossible to distribute software reliably by user name.

This can be an issue for companies (such as utility companies, hospitals, and banks) that have hundreds of computers that are shared by multiple users operating on different shifts. By running GetSMSID on each of these computers, you can target computers for software distribution regardless of who has or is logged on.

Another common daily management scenario is troubleshooting remote control problems (see also the "Adjusting SMS Remote Control Settings Using RCPATCH" section on page 691), which often are related to Internet protocol (IP) addressing issues. GetSMSID can determine the computer's current IP address, which you can then compare with the SMS inventory database, confirming consistency. The Help Desk could ask end users to use the PING utility from a command prompt to get the address, but users often consider this an "advanced" technique beyond the scope of their perceived abilities.

In addition, GetSMSID also reports (see the interface in Figure 12.1):

  • SMS domain name

  • SMS service pack installed on the client

  • SMS client setup phase

  • Current SMS logon server

  • Amount of free disk space

  • Computer name

  • Domain Name System (DNS) host name and domain names

The SMS domain name is unrelated to the DNS domain name.


Figure 12.1 GetSMSID client configuration.

Requirements for GetSMSID

GetSMSID is a 32-bit Windows application written with Microsoft Visual Basic 5.0, and does not run on Windows 3.1or Windows for Workgroups because they are 16-bit environments. It has been successfully tested on Windows 98 and Windows 2000 Beta2 but not deployed on either platform. (You can find a copy of GetSMSID on the companion CD, under the \SMSTools\GetSMSID directory.) To produce accurate results, you must have:

  • SMS.INI installed on your C drive.

  • An active network connection.

  • IP loaded.

  • Visual Basic 5.0 runtime file (MSVBVM50.DLL) in Path or in the same directory as GetSMSID or GetSMSIDnoip (see the next section: "If Obtaining IP Addresses Causes Problems").

Note: In order to obtain the service pack number, setup phase condition, or current logon server information, you must have SMS build 786 because previous versions of SMS did not record this information in SMS.INI.

In addition to Magnificent Bank, the tool is currently being used by several large enterprises and has been tested on the Windows 95 and Windows NT 4.0 platforms. It has been distributed successfully in the following ways:

  • Pushed out to the client via SMS or a logon script

  • Distributed as an e-mail attachment or link

  • Run from a server

The last option works well for situations in which the client does not have MSVBVM50.DLL installed locally. To use the "Run from server" option, simply copy MSVBVM50.DLL and GetSMSID (or GetSMSIDnoip—see below for details) files into a shared directory on a file server and then inform users how to connect to the share and run either GetSMSID or GetSMSIDnoip depending on their hardware platform.

If Obtaining IP Address Causes Problems

If Obtaining IP Address Causes Problems: The IP address is obtained using the VB 5 Winsock control. If for some reason the IP address information does not appear or is inaccurate, you can use a second version of the program, GetSMSip.EXE.

To install GetSMSID or GetSMSip, insert the compact disc labeled Server Utilities and copy GetSMSID.exe and GetSMSip.exe from the \sms\getsms directory.

Adjusting SMS Remote Control Settings Using RCPATCH

SMS remote control settings provide the ability for you to troubleshoot and assist users remotely, but they need to be configured properly. Changing the default remote control settings in an SMS client requires end users to use the Help Desk application that ships with SMS because there is no automated method of modifying the settings. Unfortunately, end users can make these changes incorrectly, requiring valuable support time and resources to fix them.

RCPATCH allows you to avoid this by creating an SMS package and job to automate the process of changing remote control settings. The benefits include:

  • Reducing the time required to alter default remote control settings

  • Helping to create and maintain consistent remote control settings for a large group of computers

  • Modifying features not supported by default

Caution: This section provides procedures, files, and information on modifying SMS remote control settings as a technical example—only knowledgeable personnel should follow the steps outlined. It is recommended that you thoroughly test the automated remote control changes prior to production use.


RCPATCH is a 32-bit application that can be used to modify the settings in the SMS.INI [Sight] section in both Windows 95 and Windows NT workstations. If your organization uses Windows NT Workstation 4.0 and also limits user access to the file system, you must install SMS Service Pack 2 or later on the server and create two blank files on each workstation to run SMS on these computers. Name these SMS.INI and SMS.NEW and set them with read/write access. RCPATCH and SMS use these two files as though they resided on an Windows NT 4.0 workstation that does not have the root of drive C: set to read-only access.

SMS remote control settings are determined by the values stored in the [Sight] section of the SMS.INI file. RCPATCH makes a line-by-line comparison of the settings in the [Sight] section of SMS.INI and the settings in the [Sight] section of RCPATCH.TXT. If they are the same, the original line is written; otherwise the line in RCPATCH.TXT is written, resulting in an SMS.INI file that contains a [Sight] section matching the RCPATCH.TXT contents.

To implement RCPATCH:

  1. Use NOTEPAD or another text editor to modify the RCPATCH.TXT file to reflect the settings you want.

  2. Create a directory and copy RCPATCH.EXE, RCPATCH.TXT, and RCPATCH.BAT to that directory.

  3. Create an SMS package pointing to RCPATCH.BAT.

  4. Create an SMS job to distribute the package created in Step 3.

Note: RCPATCH.TXT must be placed in the same directory as Windows. Type rcpatch /? (from a command prompt) for instructions.

Using the Sample Installation Files

SMSRemote.exe contains the following customizable installation files:

  • rcpatch.exe

  • rcpatch.txt (change settings in this file to reflect the remote control settings required by your organization)

  • rcpatch.bat (sample .bat file that can be used to create and SMS package)

To install smsremot.exe, insert the compact disc labeled Server Utilities and copy smsremot.exe from the \sms\getsms directory.

The sample files (rcpatch.txt and rcpatch.bat) are for reference. In some cases they can be used as is, but in most cases they will need to be modified slightly.

If you use a .BAT file to call RCPATCH.EXE and it does not display anything on the screen, you can use Package Command Manager (running as a service on Windows NT workstations) to push RCPATCH out as a background task. The sample RCPATCH.BAT file included on the companion CD has been tested in such an environment.

More Information

Information Related to GetSMSID

  • See Dan Appleman's Programmer's Guide to the Win32 API, especially Chapter 4: VB5INI Application Example. Although not expressly geared to VBA developers, this book (published by Ziff-Davis Press) is a solid resource for any application developer who wants to call functions in the Windows API from any dialect of BASIC.

See these items on TechNet:

  • 160215, Title: HOWTO: Obtain the Host IP address Using Windows Sockets.

  • 145679, Title: HOWTO: Use the Registry API to Save and Retrieve Settings.

  • 178755, Title: HOWTO: Enumerate the Values of a Registry Key.

Information Related to RCPATCH

See these items on TechNet:

  • "Windows NT 4.0 Remote Troubleshooting and Diagnostics."

  • "Automated Client Upgrade Process For Windows 95 and Windows NT Workstation 4.0 Through Systems Management Server."

  • Microsoft Systems Management Server 1.2 Reviewer's Guide.

  • Microsoft Systems Management Server 1.2 Resource Guide, "Troubleshooting Remote Control."

  • Microsoft Systems Management Server 1.2 Resource Guide, Chapter 11, "Working with Remote Control."

  • 191441, Title: Systems Management Server 1.2 Service Pack 4 Fixlist.

  • 153825, Title: List of Fixed Bugs in Systems Management Server Version 1.2.

  • 161216, Title: SMS: Client Setup Fails to Update Sms.ini on Windows NT System.

  • 123317, Title: SMS: Enabling Help Desk Options from Logon Servers Unsupported.

  • Systems Management Server Tools and Utilities "Updated Tracer Utility—SMSTRACE.EXE."

  • 170440, Title: SMS: Remote Controlling a Multihomed Windows NT Client Computer.

This is a reprint of the chapter in the book, Managing a Microsoft Windows NT Network: Notes from the Field . Copyright 1999 by Microsoft Press (ISBN: 0735606471). For more information, go to

click to order