Altiris Inventory Solution 6.1 for Windows Reference
Transcription
Altiris Inventory Solution 6.1 for Windows Reference
ALTIRIS® INVENTORY SOLUTION® 6.1 FOR WINDOWS REFERENCE Notice Copyright © 1999-2005 Altiris Inc. All rights reserved. Product Version: 6.1 Document Date: February 25, 2005 Bootworks U.S. Patent No. 5,764,593. RapiDeploy U.S. Patent No. 6,144,992. Recovery Solution U.S. Patent No. 5,778,395, 5,907,672, 4701745, 5016009, 5146221, 5144425, 5463390, 5506580, 5532694, GB 2172127, B 904359, 3606869. Other patents pending. Due to the inherently complex nature of computer software, Altiris does not warrant that the Altiris software is error-free, will operate without interruption, is compatible with all equipment and software configurations, or will otherwise meet your needs. The content of this documentation is furnished for informational use only, is subject to change without notice, and should not be construed as a commitment by Altiris. Altiris, Inc. assumes no responsibility or liability for any errors or inaccuracies that may appear in this documentation. For the latest documentation, visit our Web site at www.altiris.com. Altiris, the Altiris logo, BootWorks, Inventory Solution, LabExpert, PC Transplant, RapiDeploy, and RapidInstall are registered trademarks of Altiris, Inc. in the United States and in other countries. Carbon Copy is a registered trademark licensed to Altiris, Inc. in the United States and a trademark of Altiris, Inc. in other countries. Altiris eXpress, Altiris Protect, Application Management Solution, Application Metering Solution, Asset Control Solution, Asset Management Suite, Client Management Suite, Compliance Toolkit, Connector Solution, Conflict Analysis Solution, Contract Management Solution, Deployment Server, Deployment Solution, Energy Saver Toolkit, Education Management Suite, Helpdesk Solution Software, Lab Management Suite, Migration Toolkit, Mobile Client for SMS, Monitor Solution, Notification Server, Patch Management Solution, Problem Management Suite, Recovery Solution, Server Management Suite, Site Monitor Solution, Software Delivery Solution, TCO Management Solution, UNIX Client for SMS, Web Administrator for SMS, Web Reports, and other product names are trademarks of Altiris, Inc. in the United States and other countries. Microsoft, Windows, and the Windows logo are trademarks, or registered trademarks of Microsoft Corporation in the United States and/or other countries. HP and Compaq are registered trademarks of the Hewlett-Packard Corporation. Dell is a registered trademark of Dell Inc. Macintosh is a registered trademark of the Apple Computer Corporation. Palm OS is a registered trademark of Palm Computing, Inc. BlackBerry is a service mark and a trademark of Research In Motion Limited Corporation. RIM is a service mark and trademark of Research In Motion (RIM). All other brand names are trademarks or registered trademarks of their respective companies. Inventory Solution for Windows Reference 2 Contents Inventory Solution® 6.1 for Windows Altiris® Reference Notice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Getting Started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 Chapter 1: Introduction to Inventory Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ease of Use and Deployment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Inventory Scan Agents ........................................................... SMS Integration ................................................................ 8 9 9 9 Chapter 2: Installation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 Installing Notification Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 Installing Inventory Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 Installing the Altiris Agent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Uninstalling Inventory Solution Registration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Chapter 3: Quick Start Tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Running Inventory Solution with Altiris Agents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Manually Scanning Inventory using AeXInvSoln.exe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Running Inventory Solution using HTTP (without the Altiris Agent Installed) . . . . . . . . . . . . . . . . . . . . 14 Running Inventory Solution using a Network File Share (without the Altiris Agent Installed) . . . . . . . . 14 Performing a Software Scan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 Performing a Hardware Scan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 Editing the AuditPls.ini file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 Viewing Inventory Scan Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 Using Inventory Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 Chapter 4: Running Inventory Solution. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 Running Inventory Solution with the Altiris Agent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 Running Inventory Solution without the Altiris Agent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 Running AeXInvSoln.exe using a Logon Script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 Setting Up a Web Page or E-mail to Run Inventory Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 Disabling the File Compare Feature . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 Alternate Directory for NSI File Creation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 Input and Output Command Line Arguments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 Controlling Data Output Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 Security Context Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 Inventory Solution for Windows Reference 3 Contents Real Time View Inventory Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 Deploying and Collecting Inventory Solution Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 Customizing Data Reported by Inventory Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 Customizing How Data is Reported to a Notification Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 Inventory Collector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 Managing Patches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 Running Inventory Solution using HTTP, E-mail Deployment, or a File Server . . . . . . . . . . . . . . . . . . . 29 Web Inventory Package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 Package Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 Network File Access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 Running Inventory Solution Using Floppy Disks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 Logon Script Agent Deployment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 Frequency of Scan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 Necessary Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 Using SMS to Deploy and Collect Inventory Solution Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 Create a Source Directory with Required Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 Remove Agent Data From an SMS 2.0 Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 Configuration File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 Windows Schedules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 Chapter 5: Troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 How to Use Inventory Solution with a Port Other Than 80 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 How to Post Inventory Solution Data Using HTTP with Web and E-mail Attachments Timeouts Posting Data from Remote Computers Log Files . . . . . . . . . . . . . 44 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 Inventory Solution Data Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 DLL Requirements when using Windows 95 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 Agents. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 Software Audit Agent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 Software Audit Agent Overview ...................................................... Features and Benefits of the Software Audit Agent .................................... Input for the Software Audit Agent ................................................. Customizing Audit Configuration .................................................. audit.rul File Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Files Needed to Run the Software Audit Agent ....................................... Running the Software Audit Agent Using Logon Scripts ................................ How the Software Audit Agent Works .............................................. 49 49 50 50 51 51 51 52 Software Audit Agent Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modifying the Software Audit Agent Configuration File ................................. Scanning for a Single File or Files of a Given Extension ................................ Using the Software Audit Agent Configuration Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Advanced Tab ............................................................. Directories Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Disk Usage Tab ............................................................ Include Unknown Tab ....................................................... Exclusion Filters Tab ........................................................ 54 54 55 56 57 58 59 59 59 Inventory Solution for Windows Reference 4 Contents File Masks Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Known As Tab ............................................................. Manufacturer Known As Tab .................................................. Overrides Tab ............................................................. Special Groups Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 61 62 62 63 Software Audit Agent Troubleshooting ................................................. How to Scan For Data (XLS, DOC, PPT, QWB, etc.) Files .............................. How to Use the Software Audit Agent Through a Logon Script for Windows 95/98 . . . . . . . . . . . . How to Find Just One File With the Software Audit Agent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How to Handle Win32 Files when the Software Audit Agent does not Currently Read the Version Resource Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 66 66 67 68 Custom Inventory Agent. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 Custom Inventory Agent Administration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 Custom Inventory Agent Command Line Arguments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 XML File Syntax and Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 Exchange Agent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 How the Exchange Agent Works . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 Exchange Agent Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 Customizing the Data Reported . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 Exchange Agent Administration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 Exchange Agent Troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 Serial Number Agent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 Serial Number Agent Administration Serial Number Agent Troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 Machine Inventory Agent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 Appendix A: Exchange Directory Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 Appendix B: Program Command Line Arguments. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 AeXAuditpls Executable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 AeXCustInv Executable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 AeXExchPls Executable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 AeXInvSoln Executable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 AeXMachInv Executable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 AeXNSInvCollector Executable AeXRunControl Executable AeXSNPlus Executable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102 Appendix C: Inventory Solution Data Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105 Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108 Inventory Solution for Windows Reference 5 Getting Started Welcome to the Altiris Inventory Solution for Windows, a complete reference manual and administration guide for Inventory Solution. Quick Links “Introduction to Inventory Solution” on page 7 Provides an introduction to Inventory Solution. “Installation” on page 11 Install Inventory Solution on your Notification Server. “Quick Start Tasks” on page 13 Provides common tasks to familiarize you with Inventory Solution. Inventory Solution for Windows Reference 6 Chapter 1: Introduction to Inventory Solution Altiris Inventory Solution is designed to meet the demands of today's diverse network environments. It gathers comprehensive software and hardware data from virtually any computer running a Windows 32-bit Operating System. A variety of deployment and data collection options ensure that Inventory Solution works in any environment (including native integration for Microsoft Systems Management Server (SMS)). To help maximize your investment, Inventory Solution goes beyond simple data gathering. By providing a Web-based management console, policies to alert you of critical information, and professional quality Web reports, Inventory Solution includes the tools you need to transform your inventory data into useful information. Inventory Solution provides comprehensive inventory for Windows computers including serial number, hardware inventory, software audit inventory, and user/contact information (with Exchange profile). Inventory Solution also: • Supports zero-footprint configuration. • Operates in always connected, sometimes connected and standalone (through floppy) computing environments. Inventory Solution for Windows Reference 7 Chapter 1: Introduction to Inventory Solution • Can be installed to run on a recurring basis in conjunction with the Altiris Agent. The information that is gathered from the computers is the same regardless of whether or not you use the zero footprint option. Note: Altiris provides Inventory Solution to use with UNIX, Palm, Pocket PC, and Apple Macintosh. For more information, see the Altiris Web site. Quick Link • “Overview” on page 8 Overview Inventory Solution lets you take inventory of any Windows computer. Inventory Solution runs with zero footprint - nothing has to be installed on the computer, or it can be run through your Altiris Agent. It can be run from the network, and it even fits on two floppy disks so you can inventory computers that are not on the network. Features and Benefits Inventory Solution provides these features and benefits. • • Works with computers with no IP connectivity A floppy disk method has been designed for these non-networked Windows workstations. See “Running Inventory Solution Using Floppy Disks” on page 34. Provides full access to all the data from any browser Data can be accessed through Reports on Notification Server. • Includes integrated Reports Inventory Solution comes with numerous built-in reports that help you analyze and make proactive management decisions based upon Inventory Solution data. This allows quick and easy access to inventory information without having to create custom SQL scripts. Custom reports may also be added and scheduled to run automatically. • Posts data through files and HTTP Inventory Solution data can be sent to Notification Server through a file placed in the nscap\evtinbox folder or through an HTTP post to Altiris/NS/ postevent.asp. • Deploys through e-mail, URL, login scripts Inventory Solution can be deployed through e- mail, a URL, login scripts, or any other method you have in place to run a program on the target computers. Inventory Solution data includes • PC Serial Number and BIOS details • Comprehensive software auditing • Disk, operating system, and system configuration settings • Registry settings • Full end user information (with Microsoft Exchange profiles) • WMI objects Inventory Solution data can be posted to Notification Server by creating a file on a network share, by posting the data directly using HTTP, or it can submit the data to the Altiris Agent and let the Altiris Agent post the data to the Notification Server. Quick Links • “Ease of Use and Deployment” on page 9 • “Inventory Scan Agents” on page 9 • “SMS Integration” on page 9 Inventory Solution for Windows Reference 8 Chapter 1: Introduction to Inventory Solution Ease of Use and Deployment A special emphasis has been placed on ease of deployment, small agent size, and non-intrusive operation (by using unused CPU and network resources). Inventory Solution can be deployed to a target computer in multiple ways. The method you should use depends upon your particular needs. The deployment methods are: • Logon Script • E-mail (as a link or attachment) • Web link • Floppy disk • Manual (through shared or mapped drive) • Altiris Agent Inventory Scan Agents Inventory Solution includes several inventory scan agents that determine what data will be collected in the inventory scan. The inventory scan agents can be found in the AeXInvSoln.ini file. The default AeXInvSoln.ini file is shown below: aexauditpls.exe /hidden /output xml aexmachinv.exe aexcustinv.exe /in .\AeXCustInvStd.cit /out AeXCustInvStd.nsi aexexchpls.exe /hidden /output xml aexsnplus.exe /output xml aexnsinvcollector.exe /hidden /o ..\..\..\EvtInbox Software Scan (aexauditpls.exe) – Runs a detailed scan of the software installed on the computer. It uses the auditpls.ini file to control how applications are reported. There are several powerful and flexible configuration options available in setting up your auditpls.ini file. For more information, see “Software Audit Agent” on page 49. Hardware Scan (aexmachinv.exe) – This is the hardware scanning agent for Inventory Solution. It reports hardware data such as the operating system, the logged on user, the set of local and network disks, the amount of physical memory, the TCP/IP configuration, CPU, and PCMCIA devices. For more information, see “Machine Inventory Agent” on page 86. Custom Scan (aexcustinv.exe) – This agent gathers data from the registry, WMI, or INI files using scripts to let you customize the set of data reported. For more information, see “Custom Inventory Agent” on page 69. Exchange User Data Scan (aexexchpls.exe) – Reports data about the logged on user as found in the Microsoft Exchange Directory Service. For more information, see “Exchange Agent” on page 82. Serial Number Scan (aexsnpls.exe) – Gathers serial number, computer make and model, BIOS, and memory module information. For more information, see “Serial Number Agent” on page 85. Inventory Collector (aexnsinvcollector.exe) – Collects and consolidates all the data that each scan agent found during the scan. The scan data is consolidated and sent to Notification Server. For more information, see “Customizing How Data is Reported to a Notification Server” on page 28. SMS Integration Inventory Solution is fully compatible with SMS 2003. Inventory Solution is tightly integrated with Microsoft Systems Management Server (SMS). Inventory Solution comes with Package Definition Files that make it a very simple process to deploy the Inventory Solution package as an SMS package. Inventory Solution for Windows Reference 9 Chapter 1: Introduction to Inventory Solution Inventory agents report data to SMS using the industry standard MIF file format. SMS maintains history information on changes that are reported by the Inventory agent. This lets you see what has changed over time on your computers. Inventory Solution lets you track in the SMS database computers that are not SMS clients. The Serial Number, Software Audit, and Exchange Agents can create a MIF on the SMS client’s NOIDMIF directory or XML data can be passed to the Notification Server and SMS data forwarding can create a native SMS MIF. See “Using SMS to Deploy and Collect Inventory Solution Data” on page 36. Inventory Solution for Windows Reference 10 Chapter 2: Installation Inventory Solution 6.1 is designed to work with Notification Server 6.0 or later. It is recommended that you install the latest version of Notification Server. Notification Server must be installed before installing Inventory Solution. The following Windows computers are supported by Inventory Solution • Windows 32-bit computers: • Windows 95 • Windows 98 • Windows Me • Windows NT 4 • Windows 2000 • Windows XP • Windows 2003 Inventory Solution Prerequisite • Microsoft Internet Explorer 4.01 or later - This installs DLL files needed by Inventory Solution. (If you are running Inventory Solution on a Windows 95 computer, see “DLL Requirements when using Windows 95” on page 47.) Quick Links • “Installing Notification Server” on page 11 • “Installing Inventory Solution” on page 11 • “Installing the Altiris Agent” on page 12 • “Uninstalling Inventory Solution” on page 12 • “Registration” on page 12 Installing Notification Server Before you can install Inventory Solution, you must have an operational Notification Server running. For information on installing Notification Server, see “Installation” in the Altiris Notification Server Help. Installing Inventory Solution To install Inventory Solution to a previously installed Notification Server (with or without licenses) 1 Click Start > Programs > Altiris > Notification Server > Altiris Console to start the Altiris Console. 2 Click the Configuration tab. 3 In the treeview pane, click on Upgrade/Install Additional Solutions. Inventory Solution for Windows Reference 11 Chapter 2: Installation 4 Click the Available Solutions tab. 5 Click the Solutions button. 6 Select Altiris Inventory Solution for Windows. 7 Click Start. This installs Inventory Solution to the Notification Server. Installing the Altiris Agent If you want to run Inventory Solution with Altiris Agents, you must first deploy the Altiris Agent to your computers. For information on installing the Altiris Agent, see “Altiris Agent Installation” in the Altiris Notification Server Help. Uninstalling Inventory Solution To uninstall Inventory Solution 1 Click Start > Programs > Altiris > Notification Server > Altiris Management Console to start the Altiris Console. 2 Click the Configuration tab. 3 Click on Upgrade/Install Additional Solutions. 4 Click the Currently Installed tab. 5 Click the Remove button next to Inventory Solution. 6 Click Start. Registration Each Altiris product comes with a 7-day trial license that is installed by default. You can register and obtain a 30-day evaluation license through our Web site at www.altiris.com or purchase a full product license. To view your current license, open the Altiris Console, click the Configuration tab, and select Licensing. For more information, see “Licensing Altiris Software” in the Altiris Getting Started Guide on the product CD or on our Web site at www.altiris.com/support/documentation. Inventory Solution for Windows Reference 12 Chapter 3: Quick Start Tasks This section contains instructions for the tasks used most often in Inventory Solution. Quick Start Tasks assume that the needed software is installed, configured, and set up (see “Installation” on page 11). Quick Links • “Running Inventory Solution with Altiris Agents” on page 13 • “Manually Scanning Inventory using AeXInvSoln.exe” on page 13 • “Running Inventory Solution using HTTP (without the Altiris Agent Installed)” on page 14 • “Running Inventory Solution using a Network File Share (without the Altiris Agent Installed)” on page 14 • “Performing a Software Scan” on page 14 • “Performing a Hardware Scan” on page 15 • “Editing the AuditPls.ini file” on page 15 • “Viewing Inventory Scan Results” on page 17 Running Inventory Solution with Altiris Agents Inventory Solution provides Inventory Tasks that let you run inventory on Altiris-enabled computers. When one or more of these tasks are enabled, an Inventory Solution package containing the necessary files to run Inventory Solution automatically gets sent to all Altiris Agents that the Notification Server communicates with. These Inventory Tasks are disabled by default. When you enable these tasks, they will be sent to all computers in the All Windows Computers collection (by default). To view the Inventory Tasks 1 2 From the Altiris Console, select the Tasks tab. In the treeview pane, navigate to Tasks > Assets and Inventory > Inventory > Windows > Inventory Tasks. For information on these tasks, see “Deploying and Collecting Inventory Solution Data” on page 26. Manually Scanning Inventory using AeXInvSoln.exe 1 On the target computer, run AeXInvSoln.exe from the install path\Altiris\Notification Server\NSCap\Bin\Win32\X86 folder on the Notification Server computer. An inventory scan is initiated based on the default AeXInvSoln.ini file. The Inventory Scan program closes automatically when the scan has completed. Inventory Solution for Windows Reference 13 Chapter 3: Quick Start Tasks To View Inventory Scan Results View the results of your inventory scan in the Altiris Console using the Resource Manager. 1 In the Altiris Console, click the Resources tab. 2 In the treeview pane, navigate to Resource Management > Collections > Computer Collections > All Computers. 3 Double-click the name of the computer on which you ran the manual scan. This opens a Resource Manager window in a separate browser. 4 In the Resource Manager, click the Summaries and Inventory tabs to view data from your scan. Running Inventory Solution using HTTP (without the Altiris Agent Installed) 1 E-mail the following URL to the target set of computers and instruct the users to either download the file and then install it on their local computers or select “Open this file from its current location” to install the file without downloading it: http://NSName/Altiris/NS/NSCAP/Bin/Win32/X86/AeXWebInvPkg.exe where NSName is the name of your Notification Server. For more information on the Web Inventory Package (AeXWebInvPkg.exe), see “Web Inventory Package” on page 30. Running Inventory Solution using a Network File Share (without the Altiris Agent Installed) You have two choices for running Inventory Solution using a Network File Share. 1 Use the Notification Server computer nscap share. a Make sure that the users of your target computers have access to the following nscap share on the Notification Server: install path\Altiris\Notification Server\NSCap b 2 Have the users of the target computers run the self extracting NSCap\Bin\Win32\X86\Inventory Solution\AeXWebInvPkg.exe file from the Notification Server computer. Use another file server. a Copy the self extracting AeXWebInvPkg.exe file to another file server (another Windows NT server in another LAN or domain, NetWare, UNIX, and so forth) that the target computers can connect to and have the users of the target computers run the self extracting AeXWebInvPkg.exe file from this server. Note: The self extracting AeXWebInvPkg.exe file is found in the install path\Altiris\Notification Server\NSCap\Bin\Win32\X86 directory. For more information on the Web Inventory Package (AeXWebInvPkg.exe), see “Web Inventory Package” on page 30. Performing a Software Scan To perform a complete inventory scan, including a hardware and software scan 1 On the target computer, run AeXInvSoln.exe from the install path\Altiris\Notification Server\NSCap\Bin\Win32\X86 folder on the Notification Server computer. An inventory scan is initiated based on the default AeXInvSoln.ini file. The Inventory Scan program closes automatically when the scan has completed. Inventory Solution for Windows Reference 14 Chapter 3: Quick Start Tasks To perform only a software scan 1 On the target computer, run AeXAuditPls.exe from the install path\Altiris\Notification Server\NSCap\Bin\Win32\X86 folder on the Notification Server computer. To perform a hidden software scan with XML output 1 Run the following from the Command Prompt. aexauditpls.exe /hidden /output xml To edit the auditpls.ini file 1 Run AeXAPedit.exe from the install path\Altiris\Notification Server\NSCap\Bin\Win32\X86 folder on the Notification Server computer. 2 Click File > Open. 3 Select the auditpls.ini file, then click Open. See Also • “Software Audit Agent” on page 49 • “AeXAuditpls Executable” on page 95 • “Editing the AuditPls.ini file” on page 15 Performing a Hardware Scan To perform a complete inventory scan, including a hardware and software scan 1 On the target computer, run AeXInvSoln.exe from the install path\Altiris\Notification Server\NSCap\Bin\Win32\X86 folder on the Notification Server computer. An inventory scan is initiated based on the default AeXInvSoln.ini file. The Inventory Scan program closes automatically when the scan has completed. To perform only a hardware scan 1 On the target computer, run AeXMachInv.exe from the install path\Altiris\Notification Server\NSCap\Bin\Win32\X86 folder on the Notification Server computer. See Also • “Machine Inventory Agent” on page 86 • “AeXMachInv Executable” on page 99 Editing the AuditPls.ini file This section show you how to use the Audit Plus Configuration Editor to modify the AuditPls.ini file. It gives you an example of how to add specific programs that can be included in the software scan. You can then use this example to edit your AuditPls.ini the way you want. Note: The following should be completed from the Notification Server computer (install path\Program Files\Altiris\Notification Server\NSCap\Bin\Win32\X86). 1 In the X86 folder, make a backup copy of the AuditPls.ini file and place it on your desktop for safekeeping. 2 In the X86 folder, double-click on the AeXAPedit.exe file. The Audit Plus Configuration Editor opens. 3 In the Audit Plus Configuration Editor, select File > Open and open the AuditPls.ini file (from the X86 folder). 4 Under the File Masks tab, enter *.dll in the File Mask field and click Add. Inventory Solution for Windows Reference 15 Chapter 3: Quick Start Tasks 5 Under the Disk Usage tab, enter zip in the Extensions field and click Add. 6 Under the Special Groups tab, click Add. 7 Enter a GUID (Globally Unique Identifier) for this Special Group. Generate a new GUID using a utility like guidgen.exe and copy the same GUID for the GUID value. 8 In the New Special Group dialog, enter AeX SW ACME in the Name field. 9 Enter ACME|Engineering|1.0 in the Class field. 10 Make sure Filename is selected in the Attribute field and add the following three attribute values: 11 12 13 a Enter sol.exe and click Add. b Enter freecell.exe and click Add. c Enter winmine.exe and click Add. In the Attribute field, select Internal Name and add the following three attribute values: a Enter sol.exe and click Add. b Enter freecell and click Add. c Enter winmine and click Add. Click OK. Under the Known As tab, enter sol.exe in the Internal name field and Solitaire in the Known field, and click Add. as 14 Repeat step 13 for winmine (Minesweeper) and freecell (Freecell). 15 Under the Overrides tab, click Add to open the Override Properties dialog box. 16 Under the A file with this property... column, enter sol.exe in the Filename field. 17 Under the ...is to be overridden with this property column, enter Solitaire in the Product name field. 18 Click OK. 19 Repeat step 15 through step 18 for Freecell and Minesweeper. 20 In the Audit Plus Configuration Editor click File > Save to save changes to the AuditPls.ini file. 21 Close the Audit Plus Configuration Editor. 22 Test the new auditpls.ini file by manually running the AexInvSoln.exe in the X86 directory to be sure that it picks up the file you want and reports it into inventory. You can tell it works because the inventory under this server explorer drill-down will have that change in it. 23 Copy the new auditpls.ini file in the X86 directory to the distribution directory. The auditpls.ini file that gets distributed with the inventory policies is located in install path\Program Files\Altiris\Notification Server\nscap\bin\win32\X86\Inventory Solution. 24 Update the distribution point. To do this, open the Altiris Console, click the Resources tab, and navigate in the treeview pane to Resource Management > Resources > Defaults > Package. In the content pane, double-click on the package (Inventory Agent Package). When the package window appears, click the Update Distribution Points button. This will force Notification Server to verify the contents of the Inventory Agent package. 25 In the X86 directory on the Notification Server computer, double-click the AeXInvSoln.exe file to run a new inventory scan. When your Altiris Agent requests a new configuration, it will know that something in the package has changed and download your new auditpls.ini file and run with that. See Also • “Viewing Inventory Scan Results” on page 17 Inventory Solution for Windows Reference 16 Chapter 3: Quick Start Tasks Viewing Inventory Scan Results This section tells you how to view modified inventory results that are generated by changes to the AuditPls.ini configuration file. Note: The changes listed here were discussed in “Editing the AuditPls.ini file” on page 15 (adding Freecell, Solitaire, and Minesweeper programs and EXE, DLL, and ZIP extensions to get inventory for). 1 In the Altiris Console, click the Resources tab. 2 In the treeview pane, navigate to Resource Management > Collections > Computer Collections > All Computers. 3 In the All Computers collection, double-click the name of the computer on which you ran the scan. This opens a (or refreshes a currently open) Resource Manager window in a separate browser. 4 In the Resource Manager, click the Inventory tab. 5 In the treeview pane, navigate to Data Classes > Inventory > Software and then click AeX SW ACME and verify that Freecell, Solitaire, and Minesweeper are listed. Note: If the computer on which the scan was run does not have the Freecell, Solitaire, or Minesweeper game installed, the AeX SW ACME table will not appear. 6 Click AeX SW Audit Software and verify that the list contains both EXE and DLL files. (You will need to scroll all the way to the right to view extensions in the list.) 7 Click AeX SW Disk Usage and verify that ZIP files are included in the list. Inventory Solution for Windows Reference 17 Using Inventory Solution This section provides information about using Inventory Solution. Quick Links “Running Inventory Solution” on Provides a comprehensive guide for running page 19 Inventory Solution. “Troubleshooting” on page 44 Inventory Solution for Windows Reference Provides troubleshooting information. 18 Chapter 4: Running Inventory Solution Inventory Solution consists of a number of programs that can be run on Windows 9x/Me/NT/2000/ XP/2003 computers. There are a number of ways to run Inventory Solution • Run Inventory Solution on an Altiris-enabled computer. The computers that run Inventory Solution through the Altiris Agent will report back inventory results independent of any user action. • Run Inventory Solution in a zero footprint mode (without the Altiris Agent being installed) through a mechanism like a logon script, a Web URL, or using floppy disks. This provides an easy way to gather full detailed inventory without having to install an agent that is continually running on your target computers. • Use another software distribution system like Altiris Deployment Server or Microsoft SMS to run the program. • E-mail distribution and collection (as a link or an attachment) • SMS package • Manually (through a shared or mapped drive) Each of the programs that are run as part of Inventory Solution have various command line parameters that control various features of the product. The following programs are part of Inventory Solution • AeXInvSoln - Controls the serialized execution of all the other programs based upon a configuration file. It also generates a GUID, which is stored in the registry. • AeXNSInvCollector - The Inventory Collector consolidates the data from the various NSI files and posts the data to Notification Server using an NSE file or through an HTTP post. It includes a GUID in the header of the NSE file. • AeXSNPlus, AeXAuditpls, AeXExchpls, AeXMachInv, AeXCustInv - Generate XML formatted NSI files that contain the data about the computer that was scanned. (See “Agents” on page 48.) • Various utilities and files aid in running logon scripts, e-mail attachments, SMS advertisements, and customizing the inventory reported. Each of the executable files can be run with a /? command line argument to see the full details on the command line options. The Inventory Collector program that comes with Inventory Solution does a comparison of the current inventory scan with the last scan. Only those NSI files that have changes since data was last reported to the Notification Server are sent to the Notification Server. This feature works independent of how you deploy Inventory Solution. You get delta history file management (which results in less traffic being sent to your Notification Server) when running Inventory Solution with the Altiris Agent, with logon scripts, or with Web or e-mail. (See “Inventory Collector” on page 28.) The deployment reports that come with Inventory Solution help you track new computers that have been discovered as well as computers that are no longer updating inventory within a given amount of time. Inventory Solution for Windows Reference 19 Chapter 4: Running Inventory Solution Running Inventory Solution with the Altiris Agent Quick Links • “Running Inventory Solution with the Altiris Agent” on page 20 • “Running Inventory Solution without the Altiris Agent” on page 21 • “Disabling the File Compare Feature” on page 24 • “Alternate Directory for NSI File Creation” on page 24 • “Input and Output Command Line Arguments” on page 25 • “Controlling Data Output Format” on page 25 • “Security Context Considerations” on page 25 • “Real Time View” on page 26 • “Inventory Results” on page 26 • “Deploying and Collecting Inventory Solution Data” on page 26 • “Customizing Data Reported by Inventory Solution” on page 27 • “Customizing How Data is Reported to a Notification Server” on page 28 • “Reports” on page 29 • “Managing Patches” on page 29 • “Running Inventory Solution using HTTP, E-mail Deployment, or a File Server” on page 29 • “Web Inventory Package” on page 30 • “Network File Access” on page 34 • “Running Inventory Solution Using Floppy Disks” on page 34 • “Logon Script Agent Deployment” on page 35 • “Using SMS to Deploy and Collect Inventory Solution Data” on page 36 • “Configuration File” on page 42 • “Windows Schedules” on page 43 Running Inventory Solution with the Altiris Agent When you install Inventory Solution, it automatically creates a package and five policies that will cause the inventory agents to run on all Windows computers that have the Altiris Agent installed. After the policies are enabled, the Inventory Solution software will then be downloaded and installed on all Altiris Agents that are attached to your Notification Server. The five policies are set up so that • Software audit, serial number, and machine inventory is run on a monthly schedule. • End-user and exchange inventory is run on a monthly schedule. • Software is scanned once a week. • Hardware is scanned once a day. • User details are scanned once a day. You can change the schedule of the policies for your own environment. You can also change the collection that each policy applies to. For example, you can make distinct inventory policies for servers and other policies for workstations by changing which collection the policies apply to. The data that is collected from the computer when Inventory Solution is run from the context of the Altiris Agent is the same data that is collected when Inventory Solution is run in a standalone mode. Note: Running Inventory Solution with the Altiris Agent allows you to see which user is the primary user on the target computer. Login events are only generated by the basic inventory sent by the Altiris Agent. For more information on how to get primary user information from the Altiris Agent, see “Primary User Inventory Class” in the Altiris Notification Server Help. Inventory Solution for Windows Reference 20 Chapter 4: Running Inventory Solution Running Inventory Solution without the Altiris Agent Nobody has to be logged onto the computer for the updated inventory data to be collected and posted to Notification Server. See the Altiris Software Delivery Solution Help for details on how the Inventory Solution software is installed as a package onto a computer with the Altiris Agent installed. The files that are installed onto the target computers are in the install path\Altiris\Notification Server\NSCap\Bin\Win32\X86\Inventory Solution folder. This folder is automatically set up as the package distribution point for Windows computers to which you want the Inventory Solution agent installed. Running Inventory Solution without the Altiris Agent Inventory Solution can also be run independent of the Altiris Agent. The files that are in the install path\Altiris\Notification Server\NSCap\Bin\Win32\X86 folder are designed to be run directly off the nscap share on the server by any Windows computer. (The difference in the files between the X86 and the Inventory Solution directories is the settings in the configuration files. The executable files are the same). Inventory Solution can be run by any Windows computer from the Notification Server computer. No additional software needs to be preinstalled to capture the inventory data. To run the Inventory Solution agents on a target Windows computer 1 On the target computer, run AeXInvSoln.exe from the install path\Altiris\Notification Server\NSCap\Bin\Win32\X86 folder on the Notification Server computer. For a listing of AeXInvSoln.exe command line arguments, see “AeXInvSoln Executable” on page 98. The inventory scan is performed on the target computer and the data is posted to the Notification Server. Note: AeXInvSoln.exe can be set to run through hyperlink in an e-mail. Quick Links • “Running AeXInvSoln.exe using a Logon Script” on page 21 • “Setting Up a Web Page or E-mail to Run Inventory Solution” on page 23 Running AeXInvSoln.exe using a Logon Script The Inventory Solution agents can be set to run using a logon script. Inventory Solution for Windows Reference 21 Chapter 4: Running Inventory Solution Running Inventory Solution without the Altiris Agent You can schedule Inventory Solution to run through a logon script so that it doesn't execute every time there is a logon. This can be done using a supplied program called AeXRunControl in one of two ways - run on a set schedule or run on a random schedule. Look for AeXRunControl.exe in the install path\Altiris\Notification Server\NSCap\Bin\Win32\X86 folder. It is installed as part of Inventory Solution. (For argument information, see “AeXRunControl Executable” on page 101.) Run on a Set Schedule Run as: AeXRunControl.exe “Inventory Solution” 48 install path\Altiris\notification server\nscap\bin\win32\x86\AeXInvSoln.exe /useHKCU Details: • The first parameter (in this case the first parameter is “Inventory Solution”) identifies the control check. This is used as the identifying registry value for when this command was last run. This is stored under HKLM\SOFTWARE\Altiris\Notification Server\RunControl (example: Inventory Solution : 1/18/00 20:30:13). • The second parameter (in this case, the second parameter is 48) is the number of hours between running (example: 48 = 2 days). Example: If AeXRunControl is called again within 48 hours with the same command line, it will not execute. • The third parameter (example “install path\Altiris\notification server \nscap\bin\win32\x86\AeXInvSoln.exe”) is the command to execute if it passes the timing check, such as it hasn't run within 48 hours. So AeXRunControl.exe “Inventory Solution” 48 “install path\Altiris\notification server\nscap\bin\win32\x86\AeXInvSoln.exe” would check to see if you've tried to run a command identified as “Inventory Solution” within the last 48 hours. If not, then it would execute the command “install path\Altiris\notification server\nscap\bin\win32\x86\AeXInvSoln.exe”. Of course “install path\Altiris\notification server\nscap\bin\win32\x86\AeXInvSoln.exe” needs to be replaced with the actual command to be executed (which would usually have / hidden as one of the parameters). The point is that if you need to pass parameters, then the whole command needs to be included within quotes (“”). • The fourth parameter, /useHKCU, is for environments where the user does not have permissions to write to HKLM but they can write to the current user registry. Run on a Random Schedule Run as: AeXRunControl.exe /rndschedule “Inventory Solution” install path\Altiris \notification server\nscap\bin\win32\x86\AeXInvSoln.exe WEEKLY 1 5 / useHKCU /now Details: • The first parameter, /rndschedule, signifies the use of the format that supports the randomized schedule. • The second parameter (in this case the second parameter is “Inventory Solution”) identifies the control check. This is used as the identifying registry value for when this command was last run. This is stored under HKLM\SOFTWARE\Altiris\Notification Server\RunControl (example: Inventory Solution : 1/18/00 20:30:13). Inventory Solution for Windows Reference 22 Chapter 4: Running Inventory Solution Running Inventory Solution without the Altiris Agent • The third parameter (example “install path\Altiris\notification server\nscap\bin\win32\x86\AeXInvSoln.exe”) is the command to execute. • The fourth parameter is the string WEEKLY, which denotes the time period of the schedule. • The fifth and sixth parameters (1 and 5) are the lower and upper bounds for the randomly generated day of the week (restricted to 1-7). Weekdays are: 1 = Sunday, 2 = Monday, etc. • The seventh parameter, /useHKCU, is for environments where the user does not have permissions to write to HKLM but they can write to the current user registry. • The eighth parameter, /now, causes the program to execute immediately if this is the first time the CommandLine program is run. Using AeXRunControl.exe in the AeXInvSoln INI file You can also use AeXInvSoln.exe to run the agents using AeXRunControl.exe. This allows greater flexibility in running AeXRunControl.exe such as letting you choose different times for each agent to run. For example: AeXRunControl.exe “Software Audit” 12 “aexauditpls.exe /hidden /output xml” /useHKCU AeXRunControl.exe “Machine Inventory” 24 aexmachinv.exe /useHKCU AeXRunControl.exe “Custom Inventory” 36 “aexcustinv.exe /in .\AeXCustInvStd.cit /out AeXCustInvStd.nsi” /useHKCU AeXRunControl.exe “Exchange Plus” 48 “aexexchpls.exe /hidden /output xml” /useHKCU AeXRunControl.exe “SN Plus” 60 “aexsnplus.exe /output xml” /useHKCU AeXRunControl.exe “NS Inventory Collector” 73 “aexnsinvcollector.exe / hidden /o ..\..\..\EvtInbox” /useHKCU Clean Before Run Mode To remove the resulting data from previous scans 1 Use the /cleanbeforerun command in AeXInvSoln.exe. The /cleanbeforerun command cleans the install path\Altiris\express\Inventory folder before AeXInvSoln.exe runs. Clean After Run Mode AeXInvSoln.exe can be run in clean after run mode by using the /cleanafterrun flag. Clean after run mode removes any NSI files that are created from the local computer after the scan. Setting Up a Web Page or E-mail to Run Inventory Solution Here are two ways to run Inventory Solution without using the Altiris Agent. Running From a Web URL or an E-mail Attachment 1 For Web URL: Point your Web browser to http://NSName/NSCap/Bin/Win32/X86/ AeXWebInvPkg.exe. Instruct users to choose “Run” when prompted. 2 For E-mail: E-mail the self-extracting AeXWebInvPkg.exe file to the target set of computers and instruct the users to run the attached file. Or E-mail the Web URL (above) of the self-extracting AeXWebInvPkg.exe file to the target set of computers and instruct the users to run the file. Inventory Solution for Windows Reference 23 Chapter 4: Running Inventory Solution Disabling the File Compare Feature Creating a Web Page to Run Inventory Solution 1 Copy the following text into a blank Notepad file, replace NSName with the name of your Notification Server, and then save the file as win32inv.htm in the install path\Altiris\Notification Server folder. <html> <head> <meta http-equiv=”Content-Type” content=”text/html”> <title>Altiris Inventory Solution</title> </head> <body> <p> <a href=”http://NSName/Altiris/NS/NSCap/Bin/Win32/X86/ AeXWebInvPkg.exe”>Inventory</a> - Click here to run Win32 Inventory Solution on a target computer. </p> </body> </html> 2 Browse to http://NSName/Altiris/NS/win32inv.htm and click on the link. When prompted if you want to Run or Save, select Run. (Note: Nothing is actually installed; this only runs Inventory Solution). Disabling the File Compare Feature You can disable the file compare feature by using the /nocheck command in AeXNSInvCollector.exe. When you use this argument, all the data is sent from the target computer to the Notification Server. If you are posting data to a new Notification Server, you would want to use this argument. History is not kept on a Notification Server basis but on the target computer as a whole. Note: This is also known as Delta Data transfer. Alternate Directory for NSI File Creation Inventory Solution can be modified to place the output NSI files on any directory on your target computers. The default location used for the placement of the NSI file is install path\Altiris\express\Inventory. Each of the programs that run as part of Inventory Solution can run with a command line argument that will cause them to place the NSI files in any directory. If you have set up security on your workstations so that users do not have write permissions on this default directory or if you want to place the NSI files in another location on the hard drive, use the following example file to change the output directory. Sample AeXInvSoln.ini File AeXInvSoln.exe uses a file to indicate the sets of agents to run as part of Inventory Solution. This file needs to be modified to contain the proper command line arguments to redirect the output of the agents to a designated directory. IMPORTANT: The command line arguments on the agents are case sensitive in some cases. The following sample AeXInvSoln.ini file causes the agents to place the output in C:\temp and post the data to a Notification Server called targhee through an HTTP post. AeXSNPlus.exe /o c:\temp AeXMachinv.exe /o c:\temp\diskinv.nsi AeXauditpls.exe /hidden /o %TEMP% /output both AeXexchpls.exe /hidden /o c:\temp AeXNSInvCollector.exe /hidden /url “http://targhee/Altiris/NS/ postevent.asp” /s c:\temp Note: Instead of using c:\temp, you can use an environment variable such as %TEMP% (if the agents cannot write to the provided directory, the default is %TEMP%). AeXInvSoln.exe will expand any environment variables (surrounded by % %) that are listed in the AeXInvSoln.ini file. Inventory Solution for Windows Reference 24 Chapter 4: Running Inventory Solution Input and Output Command Line Arguments Input and Output Command Line Arguments Command line arguments can be used to specify the location of output and input files. To specify the output location of the files created by Inventory Solution, use the /o outputpath argument. Be sure to use this path as the source path for the collector. This can be specified with the /s inputpath argument after the call to AeXNSInvCollector.exe. aexauditpls.exe /hidden /output xml /o outputpath aexmachinv.exe /output xml /o outputpath aexexchpls.exe /hidden /output xml /o outputpath aexsnplus.exe /output xml /o outputpath aexnsinvcollector.exe /hidden /s inputpath /o NSEOutputpath To override the default output location for the collector, use the /o argument as in the example above, and the NSE output file will be placed in the folder specified. For example, the /o argument may be used if the default location install path\Altiris\express\Inventory is not accessible. Controlling Data Output Format Inventory Solution lets you specify whether the data output is in XML that the Notification Server processes or SMS MIF format. The following are some of the advantages of doing XML with Notification Server vs. SMS MIFs only: • Notification Server can handle a higher frequency of inventory record updating. • You can replicate to SMS from Notification Server on a schedule based upon SMS settings. High frequency updates for Notification Server does not mean high frequency data loads to SMS. (SMS is slower than Notification Server in loading data). Use the /output mif argument if you want the SMS client to collect inventory data during its scheduled hardware inventory cycle. The one disadvantage to this is that the MIFs in the SMS client’s NOIDMIFS directory will be collected every SMS hardware inventory scan regardless of whether or not the data has changed. This process would add Inventory Solution data directly to SMS through the SMS client and the inventory agent that is run with the /output mif argument (AeXAuditpls.exe, AeXSNPlus.exe, and AeXExchpls.exe only). To get XML only output, run the agent with the /output xml command line argument. Security Context Considerations By default, Inventory Solution NSI files are created in install path\Altiris\express\Inventory. • If you are running Inventory Solution from the context of the Altiris Agent, then the Altiris Agent will have the security context to create these directories. • If you are running Inventory Solution on a locked down Windows NT or Windows 2000 computer and running the program under the local logged on user’s security context, the user may not have permission to create the NSI files in that directory. • All of the agents that are part of Inventory Solution will redirect their NSI output files to a directory using the user’s temp directory if the NSI file is unable to be created under the Program Files folder. Suppose you want to deploy Inventory Solution using logon scripts and a number of your computers are Windows 2000. Also suppose the users on those computers do not have the access rights to create new files and directories under install path\Altiris\Inventory. In this case, the Inventory Solution agents will place the NSI files under the user’s temp space. Note: If another user logs onto the computer and has their profile set up so that they have a different temp directory, the NSI files will go into that new temp directory. This is not an error condition. It simply means that you may not benefit from all the local history processing that a target computer can perform to send up the minimal set of inventory changes to Notification Server. Inventory Solution for Windows Reference 25 Chapter 4: Running Inventory Solution Real Time View Note: If the scan is run from a security context that does not have any read permissions in the user profile data, then default data of Jan 1 1900 and a size of 0 is used in the AeX OS User Profiles group. However, you can still see that the profile has been loaded on that computer. For more details on how to place the NSI files in another directory, see “Alternate Directory for NSI File Creation” on page 24. Real Time View An application, AexNSIViewer6Plus, which can view any NSI file in real time. These can be NSIs reported by basic inventory or by custom inventory. This program is found in the install path\Altiris\Notification Server\NSCap\Bin\Win32\X86 directory. Note: NSI files in an older Inventory format (Inventory Solution 6.0 and older) are not supported by AexNSIViewer6Plus. This includes any data class sent by Basic Inventory, identified by the prefix AeX_AC. To view these older NSI files, use AeXNSIViewer. AeXNSIViewer provided the same functionality as AexNSIViewer6Plus in Inventory Solution 6.0 and older. Inventory Results You can access inventory results through the Resource Manager. In the Inventory tab, there is a group in the Data Classes > Inventory > Software folder called AeX AC Inventory Results. This gives you the collection time, the file count, the total size, and the version (the version of collector posting the data). Deploying and Collecting Inventory Solution Data When you install Inventory Solution, it automatically creates a package and five policies that, when enabled, cause the inventory agents to run on all Windows computers that have the Altiris Agent installed. The Inventory Solution software will be downloaded and installed on all Altiris Agents that are attached to your Notification Server. These policies are: • Recreate Full Inventory This policy is used to run software audit, serial number, and machine inventory on a monthly schedule. It sends all inventory data to the Notification Server regardless of whether or not the inventory has changed since the last run. This is particularly useful if you have set up your Notification Server to forward inventory to another Notification Server. If you use this policy, your history files will be deleted from your Notification Server. This will let the target Notification Server receive the full inventory. • Recreate User Inventory This policy is used to run end-user and exchange inventory on a monthly schedule. It sends all inventory data to the Notification Server regardless of whether or not the inventory has changed since the last run. This is particularly useful if you have set up your Notification Server to forward inventory to another Notification Server. If you use this policy, your history files will be deleted from your Notification Server. This will let the target Notification Server receive the full inventory. • Hardware Inventory • Software Inventory • User Inventory These policies are found by clicking on the Tasks tab, then navigating to Tasks > Assets and Inventory > Inventory > Windows > Inventory Tasks in the treeview pane. These policies all use the Inventory Client package. Inventory Solution for Windows Reference 26 Chapter 4: Running Inventory Solution Customizing Data Reported by Inventory Solution For more information on running these with the Altiris Agent, see “Running Inventory Solution with the Altiris Agent” on page 20. Customizing Data Reported by Inventory Solution Inventory Solution uses a number of executable modules to scan for specific types of information and post the data to Notification Server. (The AeXAuditpls, AeXExchpls, and AeXSNPlus agents can directly generate MIF files on SMS client computers.) Inventory Solution agents generate output files with an extension of NSI (Notification Server Inventory). NSI files contain inventory data in an XML format. The default output folder used by the agents when creating an NSI file is install path\Altiris\express\Inventory. The folder used can be customized with command line arguments to the various Inventory Solution agents. To do this, use the /o outputpath argument. AeXInvSoln.exe executes the programs that are listed in the AeXInvSoln.ini file sequentially. Each of the various agents have command line arguments. You can run each application with a /? command argument for a usage dialogue that provides the full command line usage details. The Inventory Solution agents are described in the following table. AeXSNPlus The AeXSNPlus program gathers serial number, computer make and model, BIOS, SMBIOS, and memory module information. It can generate both MIF as well as NSI files. For full details on how to customize the set of data reported by the serial number agent, see “Serial Number Agent” on page 85. AeXMachInv The AeXMachInv program runs on any Windows 32-bit Intel based computer. It reports data from the core Win32 API such as the operating system, the logged on user, the set of local and network disks, the amount of physical memory, TCP/IP, CPU, and PCMCIA devices. There are options to run AeXMachInv.exe with the /zfp argument which will cause the agent to not report memory and disk change history. The /zfp argument will also remove the GUID from the registry. Then, the next time Inventory Solution is run, a new GUID will be generated and the computer will appear as a new computer in the database. You can also specify which inventory groups to include or exclude from the output of AeXMachInv.exe. For details on this agent, see “Machine Inventory Agent” on page 86. AeXAuditpls The AeXAuditpls program runs a detailed scan of the hard drive reporting on the applications that are present on the computer. It also reports on data file usage. It uses the auditpls.ini file to control how applications are reported. AeXAuditpls.exe can generate both MIF and NSI files. There are a large amount of configuration options in setting up your auditpls.ini file. For the full details on how to customize the software scan data, see “Software Audit Agent” on page 49. AeXExchpls The AeXExchpls program reports data about the logged on user as found in the Microsoft Exchange Directory Service, Active Directory, or Exchange 2000. It uses the exchpls.ini file to control which user properties are reported from the Microsoft Exchange Directory Service. AeXExchpls.exe can generate both MIF and NSI files. To learn how to customize the data reported from AeXExchpls.exe, see “Exchange Agent” on page 82. AeXCustInv The AeXCustInv program lets you gather arbitrary registry and WMI data. For details on how to use AeXCustInv.exe, see “Custom Inventory Agent” on page 69. Sample VB Form A sample VB application shows how you can have any application register data with Inventory Solution and report to the database. For details, see the Altiris Resource Kit. The Altiris Resource Kit also outlines the NSI file format information. AeXNSInvCollector The AeXNSInvCollector program posts the data collected to the Notification Server. It is used to consolidate the data from the various NSI files into a single Notification Server Event (NSE) file and post the data to the Notification Server using HTTP, e-mail deployment, floppy disks, or a file server. Inventory Solution for Windows Reference 27 Chapter 4: Running Inventory Solution Customizing How Data is Reported to a Notification Server Customizing How Data is Reported to a Notification Server The Inventory Collector is used to post the inventory data collected to the Notification Server. It is used to consolidate the data from various NSI files into a single NSE file and post the data to the Notification Server using HTTP, e-mail deployment, or a file server. Notification Server Inventory AeXSNPlus Creates NSI File NSI AeXExchpls Creates NSI File NSI AeXMachInv Creates NSI File NSI AeXAuditpls Creates NSI File NSI Any Custom Inventory Creates NSI File Creator NSI GUID AeXNSInvCollector NSE Floppy Notification Server File Server Email HTTP AeXNSInvCollector combines all NSI files, places them into a newly created NSE file, and places the GUID (taken from the registry) in the header. AeXNSInvCollector can then post directly to the NS using HTTP, email, floppy disk, or to the Altiris Agent queue. Quick Link • “Inventory Collector” on page 28 Inventory Collector For a listing of the Inventory Collector command line arguments, see “AeXNSInvCollector Executable” on page 99. To run the Inventory Collector from another NT, NetWare or UNIX Server 1 Copy the self extracting AeXWebInvPkg.exe file to your target server(s). (See “Running Inventory Solution using HTTP, E-mail Deployment, or a File Server” on page 29.) 2 Run AeXWebInvPkg.exe. There are several ways to do this. Some of them are: • Run AeXRunControl.exe with its parameters to limit frequency. Inventory Solution for Windows Reference 28 Chapter 4: Running Inventory Solution • Run AeXWebInvPkg.exe in a login script on a local Novell server mapped drive. • Run AeXWebInvPkg.exe using a Web link on a local Web server. Reports To run the Inventory Collector from a Web URL or an e-mail attachment 1 Complete one of the following steps depending on whether you are using a Web URL or an e-mail attachment: a Post the self extracting AeXWebInvPkg.exe file to a Web URL (by default, this program is located at http://NSName/Altiris/NS/NSCAP/Bin/Win32/X86/AeXWebInvPkg.exe). Instruct users to either download the file and then install it on their local computers or select “Open this file from its current location” to install the file without downloading it. b E-mail the self extracting AeXWebInvPkg.exe file to the target set of computers and instruct the users to run the attached file. c To reduce the impact on the e-mail server, you can e-mail a link to the Web location used in step a. Reports Inventory Solution utilizes Notification Server to produce and host Reports. You can generate and view reports from within the Altiris Console. The deployment reports help you understand which computers are new, which ones are no longer reporting current information, and the size of the inventory data being transmitted over the network. The other reports provide details about the inventory data that is gathered. Managing Patches Inventory Solution provides reports that let you find out which computers have received OS updates and which have not. These reports can be found in the Altiris Console under the Reports tab by navigating to Reports > Assets and Inventory > Inventory > Windows > OS Updates in the treeview pane. These reports are • Count of Win9X Computers without Update ‘X’ • Count of WinNT/2000 Computers without Update ‘X’ • Distinct Win9X Updates by Computer • Distinct WinNT/2000 Updates by Computer To use these reports 1 In the treeview pane, click on a report to select it. 2 In the content pane, click Run this Report. 3 Select the Hotfix or Machine Name from the drop-down list. 4 Click Refresh. 5 You can drill down to see more data on the table items by double-clicking on the item name. Running Inventory Solution using HTTP, E-mail Deployment, or a File Server Inventory Solution can be run as a self extracting executable that your users can execute (“Web Inventory Package” on page 30). This self extracting executable does not require the Altiris Agent to be loaded on the target computer. Inventory Solution for Windows Reference 29 Chapter 4: Running Inventory Solution Web Inventory Package There are three ways to use Inventory Solution • Altiris Agent - Load the Altiris Agent on the target computer (see “Running Inventory Solution with the Altiris Agent” on page 20). Advantages to using: • • Local system access to computer • Logon and User trail • Runs on a schedule • Restartable posting of data (mobile user friendly) • Delta-file reduction of posted data HTTP - Send the Inventory Solution files (using the Web Inventory Package) via HTTP to the target computer (see “To run the Inventory Collector from a Web URL or an e-mail attachment” on page 29). Advantages to using: • • No need for security validation • No connection via MS Networking required • Works through proxy servers and firewalls • No Altiris Agent needed • Zero Footprint Network File Path (UNC) - Let the target computer user access the Inventory Solution files from a network path. You can use either the Web Inventory Package or point the user directly to the Inventory Solution directory (see “To run the Inventory Collector from another NT, NetWare or UNIX Server” on page 28 or “Network File Access” on page 34). Advantages to using: • Inclusion of login scripts, email, etc. • Security via MS Networking or Active Directory (not everyone can run and post) • No Altiris Agent needed • Zero Footprint Inventory Solution data can be easily posted to Notification Server using HTTP. This allows computers that are not able to connect to the Notification Server nscap share (because of security, network transport, or other issues) to still post the data over an HTTP connection to Notification Server. HTTP posting uses the settings that are defined in Internet Explorer to determine the user of proxy servers for HTTP traffic. Notification Server includes an Active Server Page URL (http://NSName/Altiris/NS/ postevent.asp) that is able to accept data and insert it into the Notification Server database. (This is the same URL that is used by UNIX computers that post UNIX Inventory Solution data to Notification Server.) In order to post data through HTTP, the target computer must have Internet Explorer 4.01 SP1 or later installed on the computer. Web Inventory Package During installation of Inventory Solution, a self executing executable (Web Inventory Package) gets created. This executable is found at install path\Altiris\Notification Server\NSCap\Bin\Win32\X86\AeXWebInvPkg.exe. As the Web Inventory Package is being created, the name of the Notification Server that it is being created on is placed in the INI file. This means that the Web Inventory Package will only work with the Notification Server that it came from. If you want to use this package on another Notification Server, you need to modify the package using the Package Editor. Inventory Solution for Windows Reference 30 Chapter 4: Running Inventory Solution Web Inventory Package The Web Inventory Package contains all Inventory Solution files needed to run an inventory on a target computer. It lets you run inventory on computers that do not have the Altiris Agent installed. A Package Editor is provided that lets you edit the Web Inventory Package. See “Package Editor” on page 31. The Web Inventory Package can be distributed the following ways: • E-mail - see “To run the Inventory Collector from a Web URL or an e-mail attachment” on page 29. • Web URL - see “To run the Inventory Collector from a Web URL or an e-mail attachment” on page 29. • Network File Path - see “To run the Inventory Collector from another NT, NetWare or UNIX Server” on page 28. When run on the target computer, the Web Inventory Package does the following: • Extracts the Inventory Solution files to the target directory. • Runs AeXInvSoln.exe (the default options are /s AeXIsHttp.ini /cleanbeforerun /hidden). For information on AeXInvSoln.exe, see “Running Inventory Solution without the Altiris Agent” on page 21 and “AeXInvSoln Executable” on page 98. Package Editor The Package Editor lets you edit the Web Inventory Package (AeXWebInvPkg.exe). It is found in the same directory as the Web Inventory Package - install path\Altiris\Notification Server\NSCap\Bin\Win32\X86. Note: Before you edit the Web Inventory Package, it is recommended that you make a copy of it. Upon saving the package, a copy of the original package is stored with a .bak extension. To edit the Web Inventory Package 1 Find AeXPkgEditor.exe (found in the directory listed above) and run it. 2 Select the Web Inventory Package (AeXWebInvPkg) and click Open. 3 Edit the desired fields, then click Save. Inventory Solution for Windows Reference 31 Chapter 4: Running Inventory Solution Web Inventory Package To edit a file in the Web Inventory Package 1 Run AeXPkgEditor.exe. 2 Click the Files tab. 3 Click the file to edit from the Files in Package list. 4 Click Extract. 5 Select the location to extract the file to, then click OK. 6 Edit the file in the editor of your choice. 7 Click the file that you edited from the Files in Package list. 8 Click Delete. 9 Click Yes. 10 Click Add. 11 Navigate to the file you edited and select it. 12 Click Open. 13 Click Save. Inventory Solution for Windows Reference 32 Chapter 4: Running Inventory Solution Web Inventory Package Options Tab Items Item Command Line Description The command line for AeXInvSoln.exe. The default command line is: AeXInvSoln.exe /s AeXIsHttp.ini /cleanbeforerun /hidden Note: AeXIsHttp.ini can be edited in the AeXIsHttp.ini file contents field. See “AeXInvSoln Executable” on page 98. Extract files silently Use this field to list the folder to extract the Inventory Solution files to. to folder The default is %TEMP%. Note: If the checkbox for this field is cleared, the files will be installed to the default (%TEMP%). To list another folder besides the default: 1) Click the checkbox. 2) Enter the desired folder. Prompt user with message Lets you prompt the user with a message before continuing with running AeXInvSoln.exe. Note: The prompt needs to be ended with a question like “Do you want to continue?”. The prompt gives two buttons: Yes and No. The user clicks Yes to continue with the install, and No to abort the install. AeXIsHttp.ini file contents This field lets you change the contents of the AeXIsHttp.ini file that gets placed in the Web Inventory Package. AeXInvSoln.exe uses this INI file to run inventory on the target computer. See Also “AeXAuditpls Executable” on page 95 “AeXMachInv Executable” on page 99 “AeXExchPls Executable” on page 97 “AeXSNPlus Executable” on page 102 “AeXNSInvCollector Executable” on page 99 Save Click to save all changes. Cancel Click to cancel all changes. Files Tab Items Item Description Files in Package Lists all the files found in the Web Inventory Package. Add Click to add a file to the Web Inventory Package. Extract Lets you extract a file from the Web Inventory Package so you can edit it. To extract a file 1) Click a file in the Files in Package list. 2) Click Extract. 3) Select the location to extract to, then click OK. Inventory Solution for Windows Reference 33 Chapter 4: Running Inventory Solution Network File Access Files Tab Items Item Description Delete Lets you delete a file from the Web Inventory Package. To delete a file 1) Click a file in the Files in Package list. 2) Click Delete. 3) Click Yes. Save Click to save all changes. Cancel Click to cancel all changes. Network File Access You can run Inventory Solution from the nscap share on Notification Server and post the data to Notification Server using HTTP. However there are some cases where the target computers may not be able to connect a network drive to Notification Server. For example, dial-up or remote target computers may not have a fast enough connection, or Novell NetWare target computers may not be able to connect to the Notification Server file system. There are three primary ways to run Inventory Solution on computers that are not able to connect to the Notification Server file system: • Copy the Inventory Solution files to another file server (another Windows NT server in another LAN or domain, NetWare, UNIX, and so forth) that the computers can connect to and have the target computers run the Inventory Solution files from this server. Note: The Inventory Solution files are found in the install path\Altiris\Notification Server\NSCap\Bin\Win32\X86\Inventory Solution directory. • Access the self extracting AeXWebInvPkg.exe file from a URL. (See “To run the Inventory Collector from a Web URL or an e-mail attachment” on page 29.) Note: This self extracting executable automatically points to the Notification Server that it comes from. • E-mail the self extracting AeXWebInvPkg.exe file to users of target computers. (See “To run the Inventory Collector from a Web URL or an e-mail attachment” on page 29.) Running Inventory Solution Using Floppy Disks A floppy disk based Inventory Solution can be used to gather inventory from remote computers. You need three blank formatted floppy disks. Two for the programs and one for the data. To create the Inventory Solution Floppy disks 1 Insert a blank formatted floppy disk in the A: drive. 2 Copy the file win32invfloppy1.exe from the install path\Altiris\Notification Server\NSCap\Bin\Win32\X86\floppy folder to the floppy disk. Note: In the floppy folder, there is a readme.txt file that contains these instructions. 3 Label the Disk Inventory Program Disk 1. 4 Insert another blank formatted floppy disk in the A: drive. 5 Copy the file win32invfloppy2.exe from the install path\Altiris\Notification Server\NSCap\Bin\Win32\X86\floppy folder to the floppy disk. 6 Label the Disk Inventory Program Disk 2. 7 Label a third blank formatted disk Inventory Data Disk. Inventory Solution for Windows Reference 34 Chapter 4: Running Inventory Solution Logon Script Agent Deployment To perform an inventory scan of a stand alone computer Win32invfloppy1.exe runs the Software Audit, Exchange, Machine Inventory, and Custom Inventory agents. Win32invfloppy2.exe runs the Serial Number agent. Note: The first time you perform an inventory scan on a stand alone computer, you must run Win32invfloppy1.exe before you run Win32invfloppy2.exe. The agents that run on Win32invfloppy1.exe create a record for that stand alone computer in the Notification database. If you only run Win32invfloppy2.exe the first time you perform an inventory scan on a stand alone computer, the data that the Serial Number agent collects cannot be placed in the Notification Database because it will have no record for that computer. After you have performed an inventory scan on a stand alone computer using Win32invfloppy1.exe, you can use either Win32invfloppy1.exe or Win32invfloppy2.exe (or both) on subsequent scans. 1 Click Start > Run and enter A:\win32invfloppy1.exe and click OK. This could take some time to run from the floppy disk depending on floppy disk speed. 2 Click Start > Run and enter A:\win32invfloppy2.exe and click OK. This could take some time to run from the floppy disk depending on floppy disk speed. 3 After the inventory program has completed, it will try to write the inventory data back to the floppy disk. If there is not enough space on the floppy disk or if the floppy disk is write protected, you will be prompted to put in another floppy disk. Use the Inventory Data Disk. A file with the extension of NSE will be created on the floppy disk. To post inventory data to Notification Server 1 Insert the Inventory Data Disk in the floppy disk drive of a networked computer and execute A:\postinv.bat with the following parameter: postinv.bat NSName where NSName is the name of your Notification Server. Logon Script Agent Deployment Inventory Solution can readily be deployed to target computers through the use of logon scripts. The file logonscript.bat is included in the install path\Altiris\Notification Server\NSCap\Bin\Win32\x86 folder when you install Inventory Solution on your Notification Server. Quick Links • “Frequency of Scan” on page 35 • “Necessary Files” on page 36 Frequency of Scan Typically, you will want to limit the frequency at which the scan is run on a computer. The following logon script (logonscript.bat) will limit the scan to run no more frequently than once a week (168 hours) @Echo Rem Rem Rem Rem Rem - off This is a sample logon script batch file that will run the Inventory Solution Agent every 7 days. The AeXRunControl.exe file limits the frequency at which the called program will be executed. Rem - The parameters are AeXRunControl <key> <Number of Hours> Rem - <Command Line> Rem Rem Rem Rem - <Key> is an arbitrary name for a key that will be created in the registry that maintains the history of when the command was last run. The Key is created under Rem - HKLM\Software\Altiris\Run Control. Rem - <Number of Hours> limits the frequency at which the command Inventory Solution for Windows Reference 35 Chapter 4: Running Inventory Solution Using SMS to Deploy and Collect Inventory Solution Data Rem - line will be executed. Rem - <Command Line> is the program to be run. The path is Rem - relative to the location from where Rem - AeXRunControl is executed. AeXRunControl InvSoln 168 aexinvsoln.exe The program AeXRunControl.exe is included in Inventory Solution (see “AeXRunControl Executable” on page 101). Adjust the Number of Hours parameter to adjust the maximum frequency at which AeXInvSoln will be executed. Note: To use AeXInvSoln.exe command line parameters with AeXRunControl.exe, you must place the command line in quotes. For example: AeXRunControl InvSoln 168 “aexinvsoln.exe /hidden” Necessary Files If you want to run Inventory Solution from your logon server share point (netlogon) instead of the nscap share on your Notification Server, copy the Inventory Solution files to the logon server(s). These files are found in the install path\Altiris\Notification Server\NSCap\Bin\Win32\x86\Inventory Solution directory. Example 1: AeXNSInvCollector /v MYSERVER Sends the Inventory Solution data to the location \myserver\nscap\evtinbox as a file. The user must be able to connect to Notification Server and create a file in this directory. Example 2: AeXNSInvCollector /url “http://myserver/Altiris/NS/postevent.asp” Sends the data to Notification Server through HTTP. No security context of the user is required as this is an anonymous HTTP post. Using SMS to Deploy and Collect Inventory Solution Data Inventory agents report data to SMS using the industry standard MIF file format. For SMS 2.0, the MIF file is placed in the WinDir\MS\SMS\NOIDMIFS directory. If this directory does not exist, no MIF is written. Quick Link • “Create a Source Directory with Required Files” on page 36 • “Remove Agent Data From an SMS 2.0 Database” on page 41 Create a Source Directory with Required Files The following tasks show how to create an SMS package source directory, and provide an example SMS PDF/SMS (Package Definition File) used to create an SMS package. These tasks show the deploying of Inventory Solution to SMS clients with the following Inventory Solution data configuration: • Audit • Serial Number • Exchange The following task shows how Inventory Solution can be configured to produce SMS NOIDMIF's only. These NOIDMIF's will then be collected during the SMS clients regular hardware inventory cycle. Inventory Solution for Windows Reference 36 Chapter 4: Running Inventory Solution Using SMS to Deploy and Collect Inventory Solution Data To create a source directory with required files 1 From the command line, run mifonly.bat. This is found in the install path\Altiris\Notification Server\NSCap\Bin\Win32\X86 folder. This will create a Mifonly directory and populate it with all of the required files for creating an SMS package source directory. The directory includes a PDF and SMS file for creating the SMS package (PDF for SMS 1.2/SMS for SMS 2.0). The source directory is about 1.5 MB. To view or edit the AeXISMif.ini file The AeXISMif.ini file is used with AeXInvSoln.exe to specify how the individual agents will run. Each agent has additional arguments that may be used to customize how it runs. Note: To use an INI other than the default AeXInvSoln.ini, use the /s argument as in the following example: Example: AeXInvSoln.exe /s AeXISMif.ini 1 Open the AeXISMif.ini in a text editor, such as Notepad. 2 Edit the file and close the text editor. To create an SMS Package from Definition 1 In the SMS Administrator Console, right-click on Packages and select New > Package from Definition. 2 Click Next in the Create Package from Definition Wizard. Inventory Solution for Windows Reference 37 Chapter 4: Running Inventory Solution Using SMS to Deploy and Collect Inventory Solution Data 3 Browse to install path\Altiris\Notification Server\NSCap\Bin\Win32\X86\Mifonly and select InvSoln.sms, then click Open. 4 Select Inventory Solution and click Next. 5 In the Source Files dialog, select Always obtain files from a source directory, and click Next. 6 Specify the source directory install path\Altiris\Notification Server\NSCap\Bin\Win32\X86\Mifonly, and click Next. 7 Click Finish. 8 Press the F5 key to refresh the SMS Administrator Console. Inventory Solution for Windows Reference 38 Chapter 4: Running Inventory Solution Using SMS to Deploy and Collect Inventory Solution Data To verify that you have the programs 1 Expand the Altiris Inventory Solution package. 2 Click Programs. You should see two programs: • Inventory Solution - Run Invisible • Inventory Solution - Run Visible To deploy package to distribution servers 1 Right-click Systems Management Server > Site Database > Packages > Inventory Solution > Distribution Points and select All Tasks > Manage Distribution Points. 2 In the Manage Distribution Points Wizards dialog box, verify that Copy the package to new distribution points is selected and click Next. 3 Click the check box to the left of the distribution server(s) that you wish to use and click Next. 4 Click Finish. Inventory Solution for Windows Reference 39 Chapter 4: Running Inventory Solution Using SMS to Deploy and Collect Inventory Solution Data To verify the target collection 1 Expand Collections and select All Windows NT Systems. 2 Verify that the collection contains the target Windows NT computers. To create advertisements 1 Right-click Systems Management Server > Site Database > Advertisements and select New > Advertisement. 2 Enter the Advertisement Properties and click OK. 3 Click on the Schedule tab and enter the Properties as appropriate for your environment and click OK. To check the package status 1 Right-click Systems Management Server > Site Database > System Status > Package Status and select Altiris Inventory Solution. 2 If necessary, press the F5 key to refresh the status. 3 In the right pane, verify that the package installed successfully. Inventory Solution for Windows Reference 40 Chapter 4: Running Inventory Solution Using SMS to Deploy and Collect Inventory Solution Data To check the advertisement status 1 Select Systems Management Server > Site Database > System Status > Advertisement Status and press the F5 key to refresh the results. This may take a little while to run on your target computers based on how SMS has been set up in your environment. Remove Agent Data From an SMS 2.0 Database In the BackOffice 4.5 resource kit, there is a tool to delete group classes. It is delgrp.exe. For the Delete Group Class tool to run correctly, it must be installed on an SMS primary site server. The installation is part of the BORK 4.5 installation. See the Readme.doc at the root of the BORK 4.5 CD to review the installation and operation instructions of this and other SMS tools. The syntax for the command is: delgrp “group” where “group” is the name of the Group Class from SMS SQL database. Obtain a list of the exact class names (which must be used, as well as the double quote marks around the name). 1 Run the following SQL query: select GroupClass from GroupMap Inventory Solution for Windows Reference 41 Chapter 4: Running Inventory Solution Configuration File 2 After making the query, make sure the DB box in the SQL Server Query Analyzer has the SMS database listed, and then click the green arrow button to execute the query bring up the results as shown below. 3 With the proper group name, execute the following command at the command prompt (Audit agent is used as the example): ..\delgrp.exe “ALTIRIS|AUDIT_SOFTWARE|1.0” (.. means the path to where ever the delgrp.exe is) for all of the groups that have been created by the Audit agent. This will delete the Group table and its contents from the site database. After doing this and allowing the database some time to refresh and stabilize (a few minutes or several hours depending on the activity of the server) it would probably be good to reset the site with the SMS Install program, but this is not required by the published instructions from Microsoft. Configuration File Inventory Solution uses several components to check for information about a Windows computer. The process is initiated by running AeXInvSoln.exe from the install path\Altiris\Notification Server\NSCap\Bin\Win32\X86 folder. AeXInvSoln.exe uses AeXInvSoln.ini for parameters that execute the individual inventory components. The default AeXInvSoln.ini is shown below: aexauditpls.exe /hidden /output xml aexmachinv.exe aexcustinv.exe /in .\AeXCustInvStd.cit /out AeXCustInvStd.nsi aexexchpls.exe /hidden /output xml aexsnplus.exe /output xml aexnsinvcollector.exe /hidden /o ..\..\..\EvtInbox Each of the above programs can be run with a /? command to identify available options. The AeXInvSoln.ini file is extendible, enabling administrators to call custom scripts or batch files as necessary. An example would be our AeXCustInv.exe agent, which lets you return custom inventory data from the registry, WMI, or from INI files. To run this agent as part of the inventory process, ensure that the AeXCustInv.exe (and any custom inventory scripts you may have created) is located in the same directory with the other agents you are using and then add AeXCustInv.exe / command line arguments as an entry in the INI file. Inventory Solution for Windows Reference 42 Chapter 4: Running Inventory Solution Windows Schedules Example 1 AeXAuditPls.exe /hidden AeXCustInv.exe /in AeXCustInv2.xml AeXNSInvCollector.exe /hidden /URL:http://NotificationServerName/Nscap/ postevent.asp You can also call a scripting host, command line, or batch file to perform other actions as necessary. For more details on AeXCustInv.exe and custom inventory scripts, see “Custom Inventory Agent Administration” on page 69. Another example is to use AeXInvSoln.exe to run the agents using AeXRunControl.exe. This allows greater flexibility in running AeXRunControl.exe such as letting you choose different times for each agent to run. Example 2 AeXRunControl.exe “Software Audit” 12 “aexauditpls.exe /hidden /output xml” /useHKCU AeXRunControl.exe “Machine Inventory” 24 aexmachinv.exe /useHKCU AeXRunControl.exe “Custom Inventory” 36 “aexcustinv.exe /in .\AeXCustInvStd.cit /out AeXCustInvStd.nsi” /useHKCU AeXRunControl.exe “Exchange Plus” 48 “aexexchpls.exe /hidden /output xml” /useHKCU AeXRunControl.exe “SN Plus” 60 “aexsnplus.exe /output xml” /useHKCU AeXRunControl.exe “NS Inventory Collector” 73 “aexnsinvcollector.exe / hidden /o ..\..\..\EvtInbox” /useHKCU Windows Schedules Notification Server creates several Windows schedules that can be used in your solutions. In addition, Inventory Solution creates one Windows schedule. You will find this schedule in the Windows Scheduled Tasks by clicking on Start > Settings > Control Panel > Scheduled Tasks. • NS.Modify VirtualMachine Item ResourceType - This Windows schedule is created to convert the resource type of a Virtual Machine resource from ‘Computer’ to ‘VirtualMachine’. It is enabled by default and is scheduled to run at 9:00 AM everyday, starting 1/1/2000. Inventory Solution for Windows Reference 43 Chapter 5: Troubleshooting This section lists common troubleshooting problems and gives probable resolutions. Quick Links • “How to Use Inventory Solution with a Port Other Than 80” on page 44 • “How to Post Inventory Solution Data Using HTTP with Web and E-mail Attachments” on page 44 • “Timeouts Posting Data from Remote Computers” on page 45 • “Log Files” on page 45 • “Inventory Solution Data Flow” on page 46 • “DLL Requirements when using Windows 95” on page 47 How to Use Inventory Solution with a Port Other Than 80 1 Configure your IIS server to support the monitoring of additional ports. a From Windows 2000, click Start > Programs > Administrative Tools > Internet Services Manager. b Double-click on the server name in the left pane. c Right-click Default Web Site and select Properties. d Select the Web Site tab. e Click Advanced. f Click Add. g In the TCP Port field, enter your desired port number. h Click OK. i Click OK. j Click OK. 2 Alter the Inventory Solution INI file (AeXInvSoln.ini). 3 Alter the AeXNSInvCollector.exe line so you are using the following URL format: http://server:port/Altiris/NS/postevent.asp Example: AeXNSInvCollector /url “http://myserver:80/Altiris/NS/postevent.asp” How to Post Inventory Solution Data Using HTTP with Web and E-mail Attachments See “Running Inventory Solution using HTTP, E-mail Deployment, or a File Server” on page 29 and “To run the Inventory Collector from a Web URL or an e-mail attachment” on page 29. Inventory Solution for Windows Reference 44 Chapter 5: Troubleshooting Timeouts Posting Data from Remote Computers When posting the data to Notification Server through HTTP (which happens when data is posted from the Altiris Agent or when you use the /URL argument with AeXNSInvCollector.exe) the data needs to be able to be posted within the active server page timeout period on your Notification Server. If your target computers experience problems posting the data before the timeout period, you can change the ASP timeout period. To change the timeout 1 Open the Internet Service Manager MMC console. 2 Expand the Default Web Site and select properties of the Altiris virtual directory. 3 From the Altiris properties, select the Configuration button in the Virtual Directory tab. 4 In the App Options tab change the ASP Script Timeout parameter to a higher number of seconds. Log Files Components that encounter errors when running place messages in a log file in the folder install path \Altiris\Notification Server\Logs. This is a text file in XML format that you can open in a text editor or within Internet Explorer to review the specific error messages. Inventory Solution for Windows Reference 45 Chapter 5: Troubleshooting Inventory Solution Data Flow The following figure shows the data flow for Inventory Solution. Description of the above graphic 1a - The Altiris Agent passes the data to the NSCap\EvtInbox directory. A thread created by the Altiris NS Receiver Service monitors the EvtInbox directory. When an NSE appears, the NS Receiver Service renames the NSE file and spawns a Router Object, which routes the NSE to a queue. This is usually used for stand alone inventory. 1b - The Altiris Agent passes the NSE via HTTP to the PostEvent.asp Web page. The NSE is passed through IIS, which spawns a Router Object. This Router Object routes the NSE to an event queue. This is how most NSEs get placed on the Notification Server. Inventory Solution for Windows Reference 46 Chapter 5: Troubleshooting 2 - The Router Object places the NSE into either the large event queue or the small event queue. The EvtQueue is the large event queue. This is primarily where inventory and other solution data is placed. The small event queue is primarily where status messages are placed. 3 - The NS Dispatcher Service monitors both event queues using two Dispatcher thread pools, one for the large event queue and one for the small event queue. NSEs get processed generally on a last in - first out basis. There is no order to which NSEs get processed. You cannot assume any order that the NSEs get processed. 4 - When an NSE appears in one of the event queues, the Dispatcher thread that is monitoring that queue moves the data into the Process directory. 5 - The NS Dispatcher Service, through a Dispatcher thread, gives the NSE in the Process directory to the Notification Server processes. 6 - The Notification Server processes create a process (Event Processor) that processes the event. This Event Processor finds which policy the NSE is attached to, looks at the Automated Actions that are in the policy, then acts on the NSE based on the policy and Automated Actions. This usually includes inserting the NSE data into the Notification Database. If the data is corrupted or cannot be processed, it is placed in a Bad event directory by the NS Dispatcher Service. Optional (can only happen if you have the Altiris Connector for SMS installed): 7 - If you have installed the Altiris Connector for SMS and the Notification Server is set up to forward data to SMS, MTS creates a process to pass the inventory data in native SMS format (MIF) to an SMS CAP (Client Access Point). 8 - The SMS Server picks up the inventory data from the SMS CAP. 9 - The SMS Server places the inventory data into the SMS database. DLL Requirements when using Windows 95 Stand-alone inventory uses DLL files that are placed on a computer when Internet Explorer 4.01 or later is installed. Computers running Windows 95 may not have enough disk space or memory to install and run Internet Explorer 4.01 or later. The following table shows the Internet Explorer DLL requirements needed to run stand-alone inventory on a Windows 95 computer. Agent Required DLL(s) Software Audit none required Custom Inventory updated AdvApi32.dll and OLE32.dll Machine Inventory setupapi.dll, cfgmgr32.dll, unicows.dll Exchange Inventory none required Inventory Collector unicows.dll Inventory Solution for Windows Reference 47 Agents This section provides information on the agents that you get when you install Inventory Solution. Quick Links “Software Audit Agent” on page 49 Performs an extensive audit of the programs and files that are on your computers. “Custom Inventory Agent” on page 69 Extracts values from the registry, INI files of the correct format, WMI queries, or file headers and reports these back as inventory data to Notification Server. “Exchange Agent” on page 82 Extracts mail profile information. “Serial Number Agent” on page 85 Reports detailed information about the serial number, computer model and manufacturer, memory modules, SMBIOS, and BIOS, providing a great way to track your business assets. “Machine Inventory Agent” on page 86 Collects software and hardware inventory. Inventory Solution for Windows Reference 48 Software Audit Agent The Software Audit agent discovers the applications and suites, such as Microsoft Office, on your computer without the hassle of maintaining a knowledge base. It also reports on used disk space of files such as MP3, DOC, AUI, etc. Whether working with one computer or thousands of computers, Software Audit agent provides you with an accurate picture of ALL the software installed on a computer. It's as if you searched Control Panel - Add/Remove Programs, the registry, the entire file system and carefully recorded the version number, path location, size, dates and the suite that the application is a part of and cataloged the information in one place for easy viewing. Audit provides much more than a raw dump of data - it provides much needed contextual information to help you really see what is important among the hundreds of files on your computer. For example, at a glance, you can see the browser or Office settings of a particular computer. For each file scanned, the following information is recorded (if available): Manufacturer, Product Name, Product Version, Language, File Name, File Size, Directory File Time, Executable Type, Internal Name, KnownAs, File Description, File Path, File Modification Time, and File Extension. Quick Links • “Software Audit Agent Overview” on page 49 • “Software Audit Agent Configuration” on page 54 • “Software Audit Agent Troubleshooting” on page 66 Software Audit Agent Overview • “Features and Benefits of the Software Audit Agent” on page 49 • “Input for the Software Audit Agent” on page 50 • “Customizing Audit Configuration” on page 50 • “audit.rul File Usage” on page 51 • “Files Needed to Run the Software Audit Agent” on page 51 • “Running the Software Audit Agent Using Logon Scripts” on page 51 • “How the Software Audit Agent Works” on page 52 Features and Benefits of the Software Audit Agent The Software Audit agent performs an extensive audit of the programs and files that are on your computers. This data can be viewed in real time or forwarded to a Notification Server. The Software Audit agent gathers product name, version, and language resource information out of the executable (EXE, DLL, OCX, and so forth) files that it finds on the disk. This is the same resource information that you can see by looking at the Version tab in the properties dialog of an executable file as seen in the Windows Explorer. Almost all Win32 executable files contain this resource information. Audit can generate the data in both MIF and XML formats. You can immediately view the XML formatted results of an Audit scan. This provides a real time support and diagnostic tool to track workstation software configuration issues. The XML data can also be loaded into the Notification Server database. The MIF data can be loaded to an SMS database. Inventory Solution for Windows Reference 49 Software Audit Agent Since the product name, version, and language resource information are part of the actual executable file, you can be sure that you are getting an accurate audit of what software is actually installed on your computers. For DOS and Windows 16-bit application files that do not contain resource information as part of the executable file, Audit looks up the name of the file in an audit.rul file to find an associated product name. Resource information that may be in Windows 16-bit applications is not used by the Software Audit agent. Only Windows 32-bit resource information is scanned by the Software Audit agent. The Software Audit agent can also notify you of any executable files that are on your computer that do not have resource information in them or an entry in the audit.rul file. Using this information, you can keep your audit.rul file up to date for legacy programs that are found in your environment. The full path, size, and executable type (DOS, Win16, Win32) of these unknown files are included in the output MIF. Easy to Customize The Software Audit agent comes with an easy to use configuration editor, found in install path\Altiris\Notification Server\NSCap\Bin\Win32\AeXAPedit.exe. This editor lets you easily customize how the Software Audit agent runs when scanning your computers. You can control settings such as which files are ignored in an audit scan, how to group sets of applications, and which drives and directories to include in the scan. (See “Modifying the Software Audit Agent Configuration File” on page 54.) Any file or product, such as the utilities included with the base operating system, can be excluded from the scan. This enables you to gather just the information you want from your computers and not receive a lot of unnecessary information about files and products that are either part of the operating system or products that you don't care to track. The Software Audit agent reports if an evaluation copy of the software or a licensed copy was run, the agent version, and the date the scan was run on a particular computer. This information is then visible as part of the inventory for that computer. Input for the Software Audit Agent The Software Audit agent receives input on how to run from the following sources: • Command line arguments control how the Software Audit agent will be run. • INI file that lists the scanning rules for local and remote computers. This file should be in the same directory as the auditpls.exe file. • audit.rul file is used to match files that do not have resource information in the file. This file should be in the same directory as the auditpls.exe file. You must copy your current version of this file to the agent directory. This is an optional file. Note: Inventory Solution does not provide a sample audit.rul file for you. If you are providing rules, you need to create this file. Command Line Arguments for AeXAuditpls For a listing of AeXAuditpls command line arguments, see “AeXAuditpls Executable” on page 95. Customizing Audit Configuration A sample INI file is included with the Software Audit agent: • auditpls.ini is the default INI file used by the Software Audit agent if no other INI file is specified on the command line. You can modify this INI file for use in your own network. You should use the Software Audit Agent Configuration Editor, AeXAPedit.exe, to edit the file. The Software Audit Agent Configuration Editor is an easy to use tool that lets you view and modify the various settings for the Software Audit agent. Inventory Solution for Windows Reference 50 Software Audit Agent audit.rul File Usage The audit.rul file is not required to run the Software Audit agent, but it will help in tracking the files that do not have any resource information in the executable that has been scanned (such as DOS applications). If there is resource information in the file, the audit.rul file is not used at all. The only information that is used out of the audit.rul file is the file name and optionally the file size. If there is a match of the file name and the file size, the associated package name for that file is used as the package name in the MIF that is created. No CRC or checksum validation is performed even if this information is stored in the audit.rul file. IMPORTANT: If you set the size to 0 or do not include a size, then the Software Audit agent informs you if it finds the file on the computer regardless of the size of the file. That is, it is a simple file name match. This can be very useful when you want to scan for data files that don't have resource data in them nor do they have a fixed size. Note: The way the Software Audit agent uses the audit.rul file is that if it finds ANY of the files that are listed in the section for the package, then that package will be reported. Also note that in parsing the audit.rul file, the name of the package must be surrounded in double quotes, and the names of the files and their sizes must each be on their own separate line. The following is a sample of an audit.rul file package 0 “Sample Product 5.0 English (International)” file “abc.exe” size 12345 file “xyz.exe” size 67890 package 1 “My private config file for xyx company” file “data1.dat” size 0 package 2 “Visual tests - automated” file “vistst.vis” IMPORTANT: The file lines under the package sections need to be indented at least one space relative to the package line. For example, the package lines should be on the left margin and the file lines indented at least one space from the left margin. If there is a file named abc.exe on the computer OR a file named xyz.exe and the file sizes match the settings in the audit.rul file, then the package will be reported in the output MIF file. Any CRC information stored in the audit.rul file is NOT used even if it is defined in the file. IMPORTANT: You must manually copy your audit.rul file into the directory from where the auditpls.exe file will be run. Files Needed to Run the Software Audit Agent When you run the Software Audit agent on target computers, there are two files that are needed along with one optional file: • AeXAuditpls.exe (see “Input for the Software Audit Agent” on page 50) • auditpls.ini (see “Customizing Audit Configuration” on page 50 and “Modifying the Software Audit Agent Configuration File” on page 54) • audit.rul (optional) (see “audit.rul File Usage” on page 51) Running the Software Audit Agent Using Logon Scripts Many Software Audit agent customers control the running of the Software Audit agent through a network logon script. The logon script references the auditpls.exe file and the Software Audit agent will run based upon the command line and auditpls.ini file parameters. For example, you can schedule the execution of the Software Audit agent so that it only runs every N number of hours. (See “Running AeXInvSoln.exe using a Logon Script” on page 21.) Inventory Solution for Windows Reference 51 Software Audit Agent How the Software Audit Agent Works This flow chart illustrates how the Software Audit agent performs its scans. Details of each step in the process are outlined below. Audit Agent 1. Begin Scan - Determine audit scan criteria 2. Start scan loop Yes 4. Disk usage counter Do next file 3. Data File? No 5. Read file resource data 6. Fill in KnownAs Data No 7. Pass general filters Yes 10. Write to special group 8. Special Group selection No 9. Write to standard group Yes 11. Also include in standard group No Yes 12. Done with file 1 Determine the command line arguments, and optionally the SMS version, to know where to place the XML and MIF files when they are produced. Inventory Solution for Windows Reference 52 Software Audit Agent 2 a Determine if the local computer should be scanned with the settings in the INI file. b Read from the designated INI file the list of remote drives to scan. c Determine the local hard drives attached to the computer. d Combine the drives from the previous two steps into a list. For each drive in the list, find all files with an extension that is contained in a list of extensions to scan. This list is obtained from the designated INI file. As the scan progresses, directories are tested against the excluded directories list for the local computer. All files in excluded directories are ignored. 3 Is this a data file who’s extension is found in Disk Usage of the Audit Configuration Editor (AeXAPedit)? 4 If yes, the file goes through the disk usage counter, then the Software Audit agent is done with the file. 5 For each qualifying file that matches one of the defined extensions, retrieve the following information: • File name and path • File date • File size • Product name (from resource) • Product version (from resource) • Manufacturer (from resource) • Language (from resource) • Internal Name (from resource) If there is no resource information in the retrieved file, the audit.rul file is examined for a matching file name and extension and file size. If a match is found, the product name from the audit.rul file is used. If no match is found in the audit.rul file, the file name (less the extension), uppercased, is used as the product name. The other resource information is left blank in the resulting output file(s) produced. 6 Fill in the Known As property for this record based upon any data set in the designated INI file. If no Known As mapping is defined, then the product name is placed in the Known As property. 7 For each qualifying file, compare the information retrieved in the preceding step against the exclusion list retrieved from the INI file. The following items may be present in the exclusion list: • Product Name (from resource) • Product Version (from resource) • Manufacturer (from resource) • Language (from resource) • File name (with extension) • File Date • File Size Any one or more of the items above may be specified in the exclusion list. If more than one item is specified, all specified items must match the equivalent items retrieved from the file for a file to be excluded. The strings that are present in the exclusion list can be regular expressions enabling the use of wildcard characters. These wildcard characters can be in the form “ABC*”, “*ABC”, and “*ABC*”. Inventory Solution for Windows Reference 53 Software Audit Agent Software Audit Agent Configuration If the retrieved file is not in the exclusion list, its Product Name and Product Version are compared against a list of Product Names and Versions already discovered during the current execution. If a match is found, the current file is added to the list of files associated with the Product/ Version. If no match is found, a new Product/Version entry is made. 8 Evaluate if the properties of the file designate that the data should be part of a special group. If so, write the data to the special group record in the output file(s). The data written to the output file(s) is constructed from the Product/Version list. XML files are posted in the target directory. MIF files are created in the local NOIDMIF directory on the target computer. Special group data is written to the output file(s). The name of the group and the group class are not the standard group, but rather the names as specified in the INI file. Data written to a special group is evaluated for inclusion in the standard group. The Software Audit agent finishes processing that file and then continues looking for additional files in the designated drives. If remote computers are to be scanned, a UNC connection is made to the share/volume and the files on the remote computer are scanned according to the same filtering logic described above. Software Audit Agent Configuration The Software Audit Agent Configuration Editor (AeXAPedit.exe) is a tool that helps you customize the Software Audit agent configuration files. With the editor, it is very easy to change and configure how the Software Audit agent runs. The Software Audit agent configuration files are used when the Software Audit agent scans a computer to produce the MIF files. The Software Audit Agent Configuration Editor is designed to be used by the administrator who is responsible for maintaining how the Software Audit agent is run. This tool is not visible to the end user when an Software Audit agent scan is run on the end user's computer. You do not ever need to make the Software Audit Agent Configuration Editor available to end users. IMPORTANT: It is recommended that the Software Audit Agent Configuration Editor (AeXAPedit.exe) and the Software Audit agent configuration file (*.ini) be in the same directory. If they cannot be in the same directory, these two files must be on the same computer. If they are on different computers, any changes to the Software Audit agent configuration file cannot be saved. Quick Links • “Modifying the Software Audit Agent Configuration File” on page 54 • “Scanning for a Single File or Files of a Given Extension” on page 55 • “Using the Software Audit Agent Configuration Editor” on page 56 Modifying the Software Audit Agent Configuration File To modify the Software Audit agent configuration file 1 Start the Audit Configuration Editor, install path\Altiris\Notification Server\NSCap\Bin\Win32\x86\AeXAPedit.exe. 2 Open the Software Audit agent configuration file (*.ini) that you want to modify. (A default configuration file named auditpls.ini is included with the Software Audit agent.) 3 Select the various tabs and change any information per your requirements. 4 Select File>Save to save the updated configuration file. 5 Run the Software Audit agent using the updated configuration file. Note that by default the Software Audit agent will use the auditpls.ini file in the same directory as auditpls.exe. Other INI file names can be specified for the Software Audit agent using the /INIFILE argument. Inventory Solution for Windows Reference 54 Software Audit Agent Software Audit Agent Configuration You might want to customize a configuration file for different files that you are scanning for. For example, you may want to have different file exclusion filters or change the name of the MIF groups where the data is reported. The default auditpls.ini file that is supplied with the Software Audit agent is simply a reference file for you to start from. Scanning for a Single File or Files of a Given Extension To scan for specific files or files with a specific extension 1 Open your auditpls.ini file with the Software Audit Agent Configuration Editor, AeXAPedit.exe. 2 In the File Masks tab of the editor, enter the proper file masks that you want to scan. This tells the Software Audit agent to process files of these file masks as part of the scan of the hard drive. 3 In the Exclusion Filters tab, you can specify files with certain extensions to exclude. 4 In the Special Groups tab, you can create a special group that includes just those files that you want reported. Click Add to create a special group. To edit a special group, click on the special group name, then click Properties. Using the configuration from the example below will place all comctl*.ocx, mcf*.dll, and vbrun*.dll files in a group called AeX SW MS DLLs. Inventory Solution for Windows Reference 55 Software Audit Agent Software Audit Agent Configuration The Advanced tab lets you select to scan in Package mode as opposed to File mode. File mode is the default unless you select Package mode. • Package Mode - Select this and click Yes to scan in Package mode. In Package mode, the scan will only report one instance of each file from a product package. A product package is defined by Product Name, Manufacturer, version (if selected), and language (if selected). If two scanned files have the same values for these properties, they are considered to be in the same product package and only the first file will be reported. • • • Use language in package compare package compare. - In Package mode, select Yes to use language in the Allow multiple versions per package - per package. In Package mode, select Yes to allow multiple versions File Mode - Clear the Package mode check box to select File mode. In File mode, each unique file will be reported. If there are multiple identical files, which are stored in multiple folders, only the first identical file will be reported. You can also select to Include files matching special group criteria in the standard group. Example: Suppose you have two files, one called “NSviewer.exe” and one called “NS.exe”, that both have Product Name = 'NS' and Manufacturer = 'Altiris'. In Package mode, if the scan views “NSviewer.exe” first, then only “NSviewer.exe” will be reported, and will represent the 'NS' package. In File mode, both “NSviewer.exe” and “NS.exe” are reported. Using the Software Audit Agent Configuration Editor Standard menu items are available on the File, Edit, and Help menus. When you have entered information in this editor, you must save your changes by clicking File > Save. The Software Audit Agent Configuration Editor interface has the following tabs: • “Advanced Tab” on page 57 • “Directories Tab” on page 58 Inventory Solution for Windows Reference 56 Software Audit Agent • “Disk Usage Tab” on page 59 • “Include Unknown Tab” on page 59 • “Exclusion Filters Tab” on page 59 • “File Masks Tab” on page 61 • “Known As Tab” on page 61 • “Manufacturer Known As Tab” on page 62 • “Overrides Tab” on page 62 • “Special Groups Tab” on page 63 Software Audit Agent Configuration Advanced Tab Under the Advanced tab you can make changes that override the default values used to generate data for MIF and XML files. Alternate MIF Directory - Indicates a user defined directory where the results of the scan should be placed. If this key is missing or blank, then the MIF file produced in the scan is placed in the NOIDMIF directory on the local target computer. Local MIF Name - This lets you name the MIF file that is created in the NOIDMIF directory on the local target computer. If no value is provided, then a file named audit*.mif is created in the NOIDMIF directory. Note that if you provide a file name, you need to also provide an extension of MIF so SMS will properly process the file. This feature is useful to be able to have the results of two different types of the Software Audit agent scans stored on the local computer. Note: The files are broken up into approximately 100 KB segments because SMS has a default limit for a single NOIDMIF. Slow mode delay (in milliseconds) - This indicates the number of milliseconds that the Software Audit agent will wait after scanning each file. Setting this value will cause the Software Audit agent to run much more slowly. However it will reduce the rate of disk I/O on the computer being scanned. If you run the Software Audit agent with a /hidden argument, this causes the scan to be much less noticeable on the end-user's workstation. Values from 5 to 20 are generally sufficient to make the scan much less noticeable. If the value is set in the hundreds, the scan can take many hours. The Software Audit agent has been built with a lower priority on the thread so that even if the hard drive is seeking a lot, regular applications being used by the user should still function quickly because the Software Audit agent will give them the processor. Override Default Settings for the Audit Group - Changing the Group Name and Group Class - Generally you don't need to change the defaults of the group names and the group classes. However, you can control the settings of how the data is reported to the database. If you want to maintain two separate snapshots on a computer, then you would need to modify the group names and group classes to keep the data from the two snapshots separate in the database. Report Groups - This specifies which groups of data to place in the output file(s). If Standard is selected, then only the products matching the standard group criteria will be reported. The standard group is AeX SW Audit Software. All other groups (except the disk usage, the audit, and disk usage summary) are special groups. If Special is selected, then only products matching the criteria for inclusion in one of the special groups will be placed in the output file. Both will generate entries for both groups. You might want to use the special group to be able to quickly limit the set of data that the Software Audit agent reports. For example, if you only wanted to know about files in Microsoft Office and Internet Explorer files, you could define the criteria for inclusion in those special groups and then only those files would be reported. Use Language in package compare - If this is set to Yes, then the value of the language attribute is used to determine a unique product. If it is set to No, the language is not tested when checking to see if a file belongs to a package. Manufacturer, Product Name, Product Version and Language are the attributes that can be used to determine a unique package. This argument tells the Software Audit agent whether to use Language or not. Inventory Solution for Windows Reference 57 Software Audit Agent Software Audit Agent Configuration Allow Multiple Versions Per Package - If this is set to Yes, files are checked for belonging to a package on the basis of 1) manufacturer, 2) product name, 3) product version, and 4) language. If this is set to No, files are checked on the basis of 1) manufacturer, 2) product name, and 3) language. (The product version is NOT used.) Selecting Yes means that if the Software Audit agent encounters 2 files, both with identical properties except for product version, then it will report both files. Product Exclusion Match - Indicates whether a product name that is used in an exclusion section needs to be an exact string match of the product name found in the scanned file or a partial match of a sub string. The default value is Substring. The possible values are Exact and Substring (case insensitive). Default Output Format - The Software Audit agent can generate output files in MIF and XML formats. Note that these settings can be overridden by the /output command line argument. XML Output Path - This lists the folder where the NSI file (contains the data in XML format) will be created. By default, the file will be created in the install path\Altiris\Inventory folder. Note that this setting can be overridden by the /o command line argument. Directories Tab Under the Directories tab you can specify which directories will or will not be included in the scan. For example, you may want to exclude the Program Files directory. The sub-directories under Program Files will also be excluded in the scan. The Software Audit agent includes all local drives by default. You can then choose to exclude one or more directories from the local drives from the scan. You can also choose to include remote directories (UNC or mapped) in the scan. Note: Subdirectories under the excluded or included directories are also excluded from or included in the scan, respectively. You can exclude directories with the exclusion option. Selecting only some directories to scan is difficult if not impossible, because you would have to exclude every other directory on the drive and you may not know what they are unless every computer in your environment is set up the same and stays the same. If one directory is different from what is explicitly defined in the exclusions list, you will not get the results you want. Do not use the exclusion option if you only want to know what is in certain directories. The option for including directories (Include this remote directory) is only for remote directories (directories which are not on the local computer). This option will only work well if all the computers using the same auditpls.ini file have the same mapped drive letters. Included directories are the first pass inclusion filter. Next, the excluded directories filter is applied when evaluating whether a directory should be scanned. The excluded directories is the list of directories to explicitly exclude from the set of directories that match the include criteria. For example, if you select Scan all local drives, you may still want to exclude C:\recycler and %temp% from the list of directories to be scanned. The listed directories are excluded from the scan as well as all subdirectories under the named directory. To specify a drive for inclusion or exclusion, simply designate <drive letter>:\ such as C:\. The Directories page supports wildcards. Note: Environment variables may be substituted to designate directories to exclude. The TEMP environment variable would be a typical environment variable to use. Environment variables are designated by being surrounded by the % symbol. Usage To include a remote directory, enter the directory location in the Include this remote directory field (or browse to the directory by clicking the Browse button), then click Add. To exclude a directory, enter the directory location in the Directory field (or browse to the directory by clicking the Browse button), then click Add. To remove a directory from either the include or exclude lists, select the directory, then click the button. Remove Inventory Solution for Windows Reference 58 Software Audit Agent Software Audit Agent Configuration Disk Usage Tab The Disk Usage page allows you to enter the file extensions you want to be included in a disk usage scan. For example, you may want to find out how much disk space is being consumed on target computers by digital audio files. You would enter extensions such as MP3, RM, WMA, and so on. Usage Enter the file extension in the Extension field and click Add. Or, select a file extension in the list and click Remove. Extension Include Unknown Tab The Include Unknown page lets you control the reporting of unknown files by type. Unknown files do not have a file header. If files have a file header, the Audit.rul file is not consulted. If unknown files do not have a file header but have an entry in the Audit.rul file, they will be included. It is only when files do not have a file header and do not have an entry in the Audit.rul file that this option needs to be selected so they can be included. Default unknown file information includes: • Product Name (from Description) • File Name • File Size • Directory File Time • Executable Type • Known As • File Path • File Modification Time • File Extension You can define whether you want to be notified of these files on a per executable file type basis. Thus if you want to know of unmatched files that are Win32 executables but not unmatched DOS executables, you control it through these checkboxes. Include Unknown also effects the XML output. To use this option, an Audit.rul file must be included in the same directory as the Software Audit agent is running from. However, the Overrides option in the Configuration Editor is preferable to using the Audit.rul file. The Overrides option is more powerful than using the Audit.rul file. Exclusion Filters Tab The Exclusion Filters page enables you to specify criteria to exclude files from the scan. This allows you to exclude files you do not care about. Any file that meets the filter criteria will not be evaluated for inclusion in the results XML file or for inclusion in the MIF file. Note to users of Application Management Solution: You can copy and paste entries from a File Snapshot Editor rule into the Exclusion Filters Rules. This makes it very simple to add to your exclusion filters. If you don't want to track given files for audit analysis, add this into the exclusion filters. You can add filters, delete filters, or change the properties of existing filters. Select the appropriate button on the page for the associated action on the selected filter. You can sort on any column by clicking on the column header. Columns can be resized by selecting the column divider and moving the mouse left or right. Column order can be changed by clicking a column header and then dragging to the new location. Inventory Solution for Windows Reference 59 Software Audit Agent Software Audit Agent Configuration Filters can be copied and pasted into the clipboard. Filters are available in the clipboard in a tab delimited format. Using this, you can easily export the data to a spreadsheet or other reporting tool. When the text <any> appears in a cell, it indicates that this file property will not be used when the Baseline program is evaluating exclusion filters. The Filter Properties dialog lets you specify whether a given file property will be used as a filter criteria. Each exclusion filter must contain at least one of the values described below. If more than one value is specified, the values for all keys specified must be matched for a product to be excluded. Exclusion criteria are ADDED together when comparing with a particular file. The exclusion criteria are Filename - Specifies a string to be compared with the retrieved file name. The comparison is a caseinsensitive comparison of the entire string, excluding trailing white space. Product Name - Specifies a string to be compared with the product name retrieved from the resource table. The comparison is a case-insensitive comparison of the entire string, excluding trailing white space. So a string of “operating system” will exclude any file with the words operating system in the product name. Product Version - Specifies a string to be compared with the product version retrieved from the resource table. The comparison is a case-insensitive comparison of the entire string, excluding trailing white space. Manufacturer - Specifies a string to be compared with the manufacturer string retrieved from the resource table. The comparison is a case-insensitive comparison of the entire string, excluding trailing white space. Language - Specifies a string to be compared with the language string retrieved from the resource table. The comparison is a case-insensitive comparison of the entire string, excluding trailing white space. FileSize - Specifies a file size in bytes to be compared with the retrieved file size. This is an exact numeric comparison. All of the fields of the Exclusion Filters page support wildcards. To add an exclusion filter 1 Click the Add button. 2 In the General tab, if you want to retrieve information from a specific file, click the Get Resource Information From File button, navigate to a file, then click Open. 3 To match to a file name, select Filename match required, then enter the file name in the Filename field. 4 To match to a directory name, select Directory match required, then enter the directory name in the Directory field. Note: This is only available if you have selected Filename match required. 5 To match to a product name, select Product name required, then enter the product name in the Product name field. 6 To match to a product version, select Product version required, then enter the product version in the Product version field. 7 To match to a manufacturer, select Manufacturer required, then enter the manufacturer in the Manufacturer field. Select Only qualify if Manufacturer blank or missing Manufacturer field is blank or missing. if you want the filter to work only if the 8 In the Advanced tab, to match to a language, select Language match required, then enter the language in the Language field. 9 To match to a file size, select File size required, then enter the file size in the File size field. 10 Click OK to save the changes. Inventory Solution for Windows Reference 60 Software Audit Agent Software Audit Agent Configuration To edit an exclusion filter 1 Select the exclusion filter you want to edit. 2 Click the Properties button. 3 Make the changes you want, then click OK. To delete an exclusion filter 1 Select the exclusion filter you want to delete. 2 Click the Delete button. 3 Click OK. File Masks Tab The File Masks page is where you specify which file masks are included in the Software Audit agent scan. Note: This tab used to be known as the Extensions tab. It only allowed you to enter extensions. Now you can enter file masks as well as extensions, providing you much more flexibility. IMPORTANT: If you include data file masks, you must also select on the Include Unknown tab the option for 'invalid' files. Data files do not have header/resource information and they are considered 'invalid' files because the Software Audit agent uses header information. You can also use the Overrides section to give data files some header information and then this option would not be necessary. For example, for the value *.doc, you could give the files a product name, manufacturer, language, and version and then they would be included automatically without having the Include Unknown option selected. Of course, if you do this, all *.doc files will have the same product name, manufacturer, language, and version information. They would just have different file names and paths. File masks are in the form of: *.exe test*.xl? Note: If there is not a “.” in the name, “*.” is automatically prepended so old style entries (exe, doc) will still work. This way, your old INI's will not be broken. You can include data file extensions as well. If you want to scan for files without an extension, you can enter: *. Usage 1 Enter a file mask in the File Mask field. 2 Click the Add button. 3 The file masks that you want reported are displayed in the File Masks list. 4 To delete a file mask from the list, select a file mask in the File Masks list, then click Remove. Known As Tab The settings under this tab allow you to define a name based on a product’s Internal Name which is read from the version resource data. For example, the internal name for the game Minesweeper is winmine, but the game itself is known as Minesweeper. This is useful for reporting purposes. For example, you may want to track all of the components of Microsoft Office or various components of the operating system such as Internet Explorer. Inventory Solution for Windows Reference 61 Software Audit Agent Software Audit Agent Configuration When the Software Audit agent finds a file and scans the resource data, the Known As attribute is always initially set to the Product Name. The Known As value is changed in the following situation: If the Software Audit agent is being run with an INI file which has Known As mappings defined, and if the Internal Name of the file is defined in this list, then the Known As attribute will be changed to the value of that key. The Known As attribute is reported in the MIF for easier tracking purposes. The fields in the Known As page support wildcards. Usage Enter the Internal Name and the Known As name and click Add. To find the Internal Name of a program, right-click the program file and select Properties from the menu. In the Properties dialog box, click the Version tab. Under the Other version information heading, click Internal Name. Example Assume that you want to know if duplicate copies of MFC runtime DLLs are on your computer. You can use the Internal Name of MFC40.DLL, MFC.DLL, and provide a Knows As name of MFC Runtime DLL. This way, reports that utilize this information will have a better context about the nature of the file. If you do not supply a Known As mapping, then the product name will be substituted for the Known As field. Manufacturer Known As Tab The Manufacturer Known As page lists the mappings of manufacturer names to a common manufacturer name. A number of manufacturers do not consistently use the same characters in the manufacturer field of their applications. Each entry lets you specify a string, which is automatically converted to a regular expression. Then, any time the Software Audit agent encounters a file that matches the regular expression, it will replace it with the Manufacturer Known As value. The benefit of this is that, as the data is loaded into the Notification Server, a consistent string for the manufacturer is used. For example, suppose you have files with the following values for manufacturer: • Microsoft Corp. • Microsoft(r) Corporation • Microsoft Corporation Enter “Microsoft” in the Manufacturer name field and “Microsoft Corporation” in the Replace with field, then click Add. All the variants of Microsoft will then be reported under the same Manufacturer name. You can also enter a regular expression in the Regular Expression field. To remove an alias, click on the alias, then click Remove. The fields in the Manufacturer Known As page support wildcards. Overrides Tab Under the Overrides tab, you can override the properties of a file in order to clean up the information before it is reported into your database. For example, suppose in looking at report data you note that various data would be more useful if it was presented slightly differently. With the overrides, you can define exactly how data will be reported back to the database regardless of the version resource data that is already present in the file. All of the fields of the Overrides page support wildcards. This can be useful as you work with files that might have similar names, such as different versions of the same product. Items in the Overrides tab are applied first before any other processing. The Overrides look to all of the other rules in the Software Audit agent as though the information was retrieved from the file header/resource information in the way the Overrides set it. If there are rules in the Known as field Inventory Solution for Windows Reference 62 Software Audit Agent Software Audit Agent Configuration on the Known As page which map the internal name (as set in the Overrides) to something else (even if the Overrides had set the Known as to something else) the Known as field on the Known As page is given preference. See “Known As Tab” on page 61. To add override properties 1 Click the Add button. 2 Specify the match criteria and the override values for a file. a In the A file with this property column, enter the information about the file. A blank value in this column designates “any” value. If you want to retrieve information from a specific file, click the Get Resource Information From File button, navigate to the file, then click Open. b In the is to be overridden with this property column, enter the overriding information. A blank value in this column carries over the value from the A file with this property column. 3 Select Use file size, and then enter a file size if there is a file with a specific file size whose information you want to override. 4 Select Use directory time, and then enter a time if the file whose information you want to override is in a directory with this time stamp. 5 Select Use file modification time, and then enter a time if the file whose information you want to override has this time stamp. 6 Click OK to save the changes. To edit override properties 1 Select an overrides from the list. 2 Click the Properties button. 3 Edit the fields as needed. 4 Click OK to save the changes. To delete override properties 1 Select an overrides from the list. 2 Click the Delete button. Special Groups Tab The Special Groups page lets you identify a group of files you want to be tracked together. When you specify the group name and the group class, a new table is created in the Notification Server database with the group’s applications. This improves the reporting options on those applications. For example, you may want to create special groups to track items such as Microsoft Office components, Operating System components, games, standard desktop applications, or any other logical grouping of data that you may want in your environment. To be useful, the special group must also provide some selection filter information. This consists of a prescription of logical operations to be performed on attributes, and the list of attribute key/value pairs to match to. The six attributes used are: • Filename • Internal Name • Known As • Manufacturer • Product Name • Product Version Inventory Solution for Windows Reference 63 Software Audit Agent Software Audit Agent Configuration The columns that are generated in special groups are the same columns that are generated in the standard group. However, since the group name is different, the data is loaded into a different table in the database. This lets you organize your software audit data according to how you want to view the information. Each special group has its own group name and group class. You must fill in these parameters. Then you must also define the criteria of which files of which properties meet the criteria for inclusion into these special groups. Logical operations may be AND or OR and are prescribed in the following way: Manufacturer logical op = AND Product Name logical op = AND Product Version logical op = AND Etc. The default for logical operations is OR. If there is only one attribute with an AND, it becomes an OR. For example, [SpecialGroup.5] GroupName= SpecialGroup5 ClassName=SpecialGroupClass5 Manufacturer Logical Op = AND Manufacturer = Microsoft Corporation Manufacturer= Altiris would cause any file with a manufacturer of Microsoft Corporation or Altiris to be matched. IMPORTANT: Logical operations always apply between different attributes; they apply between Filename, Manufacturer, Product Name, Product Version, Internal Name, KnownAs. They never apply between different instances of a given attribute, such as between Manufacturer = Microsoft Corporation, and Manufacturer = Altiris. The logic operator used between different instances of a given attribute is ALWAYS an OR. In addition to the logical operators, a list of attributes should be given in the form of key/value pairs. Any attribute may occur any number of times. For example: Manufacturer = Microsoft Corporation Manufacturer= Altiris Manufacturer= Borland Manufacturer= Apple Computer Manufacturer= Cyberware Manufacturer= Lotus Manufacturer= Novell If a file contains ANY of the above manufacturer values, it is matched for the manufacturer attribute. In general, each attribute has a vector of values. If a file matches any of the values in that vector, then that attribute is matched. After an attribute vector is matched for a specific file, the other attribute vectors are tested. Then the logical operations are performed between attributes. This is done for each file, for each special group. When a group match occurs, the file information is buffered for that special group. Allow files matching special group criteria in the standard group is a global setting that lets you specify whether files/products that are part of a special group should also be evaluated for inclusion in the standard group. If this setting is cleared, files which match a special group definition will only be reported in that special group even if they match the overall settings for the standard group (AeX SW Audit Software). If this setting is selected, then files which match a special group definition will also be matched against the standard group definition and they will be included in the standard group if they meet the criteria. For SMS clients, the data is placed in the NOIDMIF directory on the client. Inventory Solution for Windows Reference 64 Software Audit Agent Software Audit Agent Configuration To add a Special Group 1 Click the Add button. 2 In the New Special Group dialog box, in the General tab, type the name of your group in the Name field. 3 In the Class field, enter the class grouping. 4 Enter a GUID (Globally Unique Identifier) for this Special Group. Generate a new GUID using a utility like guidgen.exe and copy the same GUID for the GUID value. 5 Select an attribute from the Attribute drop-down list. 6 In the Value field, enter a value or browse to find the value you want. Note: You cannot browse if you have selected Known As in the Attribute drop-down list. For example, if you have selected Filename in the Attribute drop-down list, browse to a file that you want included in the group, select it, then click Open. 7 Repeat the previous step until all desired values are listed under Attribute Values. 8 Click the Advanced tab. This tab lets you select to scan in Package mode as opposed to File mode. 9 If you want to use Package mode, select the Package mode check box, then click the Yes radio button. Clear the Package mode check box to select File mode. 10 11 If you want to use language in the package compare, click the Yes radio button under Use language in package compare. If you want to allow multiple versions per package, click the Yes radio button under Allow multiple versions per package. 12 Select Include files matching group criteria in the standard group if desired. This places the files in the standard group whether or not they pass the exclusion filter parameters. 13 Click OK to close the New Special Group dialog box. To create a data class for a new Special Group 1 Add a new Special Group as explained in To add a Special Group. 2 Locate the SpecialGroup.config file in install path\Altiris\Inventory\Config. 3 Copy this SpecialGroup.config file and paste it with a different name (for example: New_SW_Group_Name.Config or SW Visio.config). 4 Edit the New_SW_Group_Name.Config file using an editor such as Notepad.exe. 5 Replace the text “XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX” with the newly generated GUID that was generated in Step 4 in To add a Special Group. 6 Replace all the occurrences of the text “NEW SW SPECIAL GROUP NAME” with the new SW Special Group name that you want to create. Examples are provided in the SpecialGroups.config file. 7 Save this config file. 8 Edit the InventorySolution.config file that is located in the install path\Inventory Solution\Config folder a In the ProductInstallation section, locate the following comment: <!-- Add the reference of SpecialGroup.config file that you created e.g. <items source=”New_SW_Group_Name.config”></items> --> b After this comment, add the following line: <items source=”New_SW_Group_Name.config”></items> Note: Replace New_SW_Group_Name.config with the name that you gave to the new file you created. c Save the InventorySolution.config file. Inventory Solution for Windows Reference 65 Software Audit Agent 9 Software Audit Agent Troubleshooting Run AexConfig.exe from a command prompt and configure InventorySolution.config. This creates the new dataclass in Normalized form (see “Normalization” in Inventory Solution Help). To edit the properties of a Special Group 1 Select a Special Group. 2 Click the Properties button. 3 Make the changes to the group that you want. 4 Click OK. To delete a Special Group 1 Select a Special Group. 2 Click the Delete button. Software Audit Agent Troubleshooting Run auditpls /? for help on the available command line arguments. The output data is a MIF file in the NOIDMIFs directory and an NSI file in the install path\Altiris\Inventory folder. Quick Links • “How to Scan For Data (XLS, DOC, PPT, QWB, etc.) Files” on page 66 • “How to Use the Software Audit Agent Through a Logon Script for Windows 95/98” on page 66 • “How to Find Just One File With the Software Audit Agent” on page 67 • “How to Handle Win32 Files when the Software Audit Agent does not Currently Read the Version Resource Information” on page 68 How to Scan For Data (XLS, DOC, PPT, QWB, etc.) Files To scan for data files you must have the Invalid argument set to No as in the following example. [Exclude Audit.rul Unknowns] Exclude DOS=Yes Exclude WIN16=Yes Exclude VXD=Yes Exclude OS/2=Yes Exclude WIN32=Yes Exclude INVALID=No The reason for this is that the Software Audit agent tests the file to determine what type it is (DOS, WIN16, etc.) and data files do not return a match for any of the classifications that the Software Audit agent uses, so the Software Audit agent classifies them as invalid. So if the exclude section for invalid is set to yes, these files will be excluded even if their extension (XLS, PPT, DOC, etc.) is included in the extensions to be scanned. Note: You can view the overall count information by using the Disk Usage page. How to Use the Software Audit Agent Through a Logon Script for Windows 95/98 Create a script to copy down to the clients the auditpls.exe and INI files. Copy them into a directory which is sure to be in the path, like the windows directory. Then the Software Audit agent can be called from a start command in the logon script. Since auditpls.exe will be running locally on the computer there will be no pagefault errors by auditpls.exe when the logon script finishes processing, exits, and takes down the connection to the server established during the logon process. Inventory Solution for Windows Reference 66 Software Audit Agent Software Audit Agent Troubleshooting The reason this is necessary is that Win95/98 removes the connection (during the logon process Win95/98 makes a connection to the Netlogon share which it maps as the Z: drive) that any program uses if it is being run from the Netlogon share. Using the start command in a logon script to call a program lets the logon script finish processing, exit, and lets the user start using the desktop, when run on Windows NT. In Windows 95/98 programs called with the start command depend on the Z: drive mapping for their connection and Win95/98 will remove this connection as soon as it is done processing. So either the Software Audit agent needs to be called without using the start command (which means the logon script will pause until the Software Audit agent is done processing) or copy the Software Audit agent files to the client and call them with the start command. How to Find Just One File With the Software Audit Agent To find one or a few files, you will need to modify the auditpls.ini file. You can use the following sections which are the crucial sections to make this work: • This is the exclusion section which will exclude all files. [exclusion.2] manufacturer=a [exclusion.2] product name=a [exclusion.2] manufacturer=e [exclusion.2] product name=e [exclusion.2] manufacturer=i [exclusion.2] product name=i [exclusion.2] manufacturer=o [exclusion.2] product name=o [exclusion.2] manufacturer=u [exclusion.2] product name=u [exclusion.2] manufacturer= [exclusion.2] product name= • This is the section that will find just the one file you want. # This is where you put in the information on which file you want to file. # You can look for the file by any single attribute or combination according to the rules for special groups [Special Group.1] Group Name=Audit Software classname=ALTIRIS|AUDIT_SOFTWARE|1.0 internal name = invPLSNT (Note: Add any additional inclusion properties here for other files to find.) • This section of the INI file might need some modifications: # If the file you are looking for is not a Win32 file you will need to change some of these exclude lines [Exclude Audit.rul Unknowns] Exclude DOS=YES Exclude WIN16=YES Exclude VXD=YES Exclude OS/2=YES Exclude WIN32=yes Exclude INVALID=YES Note: Typically the best way to find a file is by the internal name. Inventory Solution for Windows Reference 67 Software Audit Agent Software Audit Agent Troubleshooting How to Handle Win32 Files when the Software Audit Agent does not Currently Read the Version Resource Information The Software Audit agent can inventory Windows 32-bit files where the version resource information does not fit the standard that the Software Audit agent was built to handle. In the Software Audit Agent Configuration Editor, put a check mark in the WIN32 checkbox in your existing auditpls.ini file. The Software Audit agent will be able to find the file and report the file name, size, date, type of file, and the product and internal name fields will be populated with the file name (minus the dot and extension - .dll, .exe, etc.). Inventory Solution for Windows Reference 68 Custom Inventory Agent Software Audit Agent Troubleshooting Custom Inventory Agent Inventory Solution provides a utility that extracts values from the registry, INI files of the correct format, WMI queries, or file headers and reports these back as inventory data to Notification Server. This utility is called Custom Inventory (AeXCustInv.exe). It can be run from within the inventory agent INI file. Note: For advanced users, professional services are available through Altiris. Contact your Altiris representative for more information. Custom Inventory is a utility that will read a given input file, perform appropriate text substitutions, and write a resulting output file. The substitutions are based on a simple syntax including some basic control structures, output directives and expressions allowing the retrieving of values from sources such as the registry, INI files, WMI, and file header information. In Inventory Solution, this will typically be used to generate Notification Server Inventory (NSI) format files. However the first principle of the Custom Inventory agent is that it is completely unassuming about the format of the template and works in a pure text processing manner. The Custom Inventory agent is useful because it lets you collect customized data. A file named AeXCustInv.xml is provided as a template and is in the same directory where AeXCustInv.exe is found. You must customize this file before running the Custom Inventory agent. Custom Inventory uses the information found in AeXCustInv.xml to create a file called AeXCustInv.nsi. It then places AeXCustInv.nsi in the inventory output folder (the default is install path\Altiris\express\Inventory). Quick Link • “Custom Inventory Agent Administration” on page 69 Custom Inventory Agent Administration Custom Inventory reads scripts that indicate what item settings to scan. In order for Custom Inventory to work, Internet Explorer 4.01 or higher must be present on the computer. The sample script AeXCustInv.xml is included with the Inventory Solution files. AeXCustInv.xml must be present in the same directory where AeXCustInv.exe resides. You can edit AeXCustInv.xml by adding or removing sections to customize the set of data reported in the output NSI file. Simply use the existing AeXCustInv.xml as the basis for the syntax. When you edit this file, make sure that for each new group that you create, you use a custom name. AeXCustInv.xml is a template file and is not valid XML. It contains placeholders that require valid XML substitutions. The Custom Inventory agent reads AeXCustInv.xml, replaces the placeholders, then creates a valid NSI file, AeXCustInv.nsi. The file AeXCustInv.nsi is then placed in the inventory output folder (the default is install path\Altiris\Inventory). • “Custom Inventory Agent Command Line Arguments” on page 69 • “XML File Syntax and Examples” on page 70 Custom Inventory Agent Command Line Arguments For a listing of Custom Inventory agent command line arguments, see “AeXCustInv Executable” on page 96. Inventory Solution for Windows Reference 69 Custom Inventory Agent Software Audit Agent Troubleshooting XML File Syntax and Examples The Custom Inventory agent uses text substitution according to certain placeholders. These are marked using the delimiters <% and %> and commencing with a keyword such as in <%set … %>. All recognized placeholders are evaluated in turn and the placeholders are either removed or replaced with a result according to the statement. If a placeholder for any statement other than write or writexml is followed only by white space, then up to and including the end of line is removed. The line or lines the placeholder is on will be removed if nothing else is on that line or lines. Placeholders, in particular the foreach, can span multiple lines. Nesting any of the following statements and control structures are allowed. For example, you can set up a loop of registry sub-keys and use the values retrieved to then base another loop (possibly consisting of other registry keys and values) or use in a nested WMI loop. You can also use conditionals (i.e. if) within loops, based on loop variable expressions. Following is a listing of the syntax used to extract data, as well as a number of example classes that demonstrate the use of this syntax. To use these examples, copy the desired text into a Notepad text file of its own and name this file AeXCustInv.xml. Place this file in the same directory as the AeXCustInv.exe file and run this executable. The output will be placed in the inventory output folder (the default is install path\Altiris\express\Inventory). Alternatively, a command line can be used to select the input/output file name and location. Note: The writexml tag takes the output and runs it through a filter to make sure it is XML compliant. It only gets output if it is XML compliant. Standard Expressions <%set varname= “expression” %> <%write “expression” %> Example <%set var1 = “My Value”%> <%write “example text”%> Note: Binary data is written out as a string. The length of the string is limited to 255 chars, which represents 85 bytes of binary data. Example c4= “<%write “reg:HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\DirectX\InstalledVersion”%>” If InstalledVersion is the binary number 00 00 00 07 00 00 00 00, then c4 in the NSI file would be the following string: c4= “00 00 00 07 00 00 00 00” <%writexml “expression” %> Example c4= “<%writexml “reg:HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\DirectX\InstalledVersion”%>” This causes an EscapeXmlText to be done. “reg:path” Example <%set variable= “reg:HKLM\Software\Altiris\AeXNS\Version” %> This lets you look up a registry value. “ini:path\[section]\name” Example <%set path= “c:\altiris\AClient\AClient.ini” %> <%write “ini:%path%\[section34]\group” %> This lets you look up an INI file value. Inventory Solution for Windows Reference 70 Custom Inventory Agent Software Audit Agent Troubleshooting Standard Expressions “file:%filepath%|FileProperty” This lets you retrieve file header information. The following values can be used for FileProperty. They all represent fields within a file’s version header block. • FILENAME - name of the file without the path portion • FILE_VERSION • PRODUCT_NAME • PRODUCT_VERSION • MANUFACTURER • LANGUAGE • INTERNAL_NAME • FILESIZE - not contained in the version header block • PATH - the full path of the file without the filename (this is not contained in the version header block) • MODIFIED_DATE • ORIGINAL_DATE • DESCRIPTION • COPYRIGHT The following property can be used for FileProperty and will return “Yes” or “No” based on whether the file is a Windows computer protected file: • IS_SYSTEM_PROTECTED - Win2K/XP/ME Only, otherwise returns “No” The following properties can be used for FileProperty and are obtained from the Win32 API “GetFileAttributes” for the file: • IS_ATTR_ARCHIVE • IS_ATTR_COMPRESSED • IS_ATTR_DEVICE • IS_ATTR_DIRECTORY • IS_ATTR_ENCRYPTED • IS_ATTR_HIDDEN • IS_ATTR_NORMAL • IS_ATTR_OFFLINE • IS_ATTR_READONLY • IS_ATTR_NOT_CONTENT_INDEXED • IS_ATTR_REPARSE_POINT • IS_ATTR_SPARSE_FILE • IS_ATTR_SYSTEM • IS_ATTR_TEMPORARY Examples <%set var1=“file:%filepath%\wmplayer.exe|PRODUCT_VERSION”%> <%writexml “file:%filepath%\wmplayer.exe|PRODUCT_NAME”%> <%writexml “file:%FILELOCATION%|IS_ATTR_HIDDEN”%> You may specify any environment variable within any part of your input file and it will be resolved prior to any processing. Example <%set file= “%path%\AClient.ini” %> Inventory Solution for Windows Reference 71 Custom Inventory Agent Software Audit Agent Troubleshooting Statements Conditional <%if <expression> %> <statement> <%endif%> <expression> = simple expressions: x = 'y', x like ?y, x > y, x < y, x <> y, x!=y If the expression evaluates to true, then all the text between the if and endif lines are included, with standard AeXCustInv processing performed upon them. Otherwise, the lines are omitted. The expressions supported are simple binary expressions using operators (=, <>, <, >, like). Variables may be used on either side of the operator. The like operator allows matching against regular expressions. Complex expressions involving the testing of values read from such as the registry may be achieved by first setting the value into a variable. Examples <%if %var1 = “My Value”%> <%set ver= “reg:HKLM\Software\Altiris\eXpress”%> <%if %ver% = “5.0”%> <%set enabled= “wmi:obj.Enabled”%> <%if %enabled% = “true”%> <%set path= “HKLM\Software\Altiris\eXpress”%> <%set nsver= “%path%\Notification Server\Version”%> <%set nscver= “%path%\Altiris Agent\Version”%> <%if %nsver% = “%nscver%”%> WMI For Each <%foreach wmiobject= “o” namespace= “namespace” wql= “select ...” %> c0= “wmi:o.propertyname1” c1= “wmi:o.propertyname2” <%next%> Registry For Each <%foreach regkey= “k” path= “HKLM\Software…” %> c0= “key: k.propertyname1” c1= “key: k.propertyname2” <%next%> Setting a variable <%set varname= “expression” %> This results in the variable being available for use in subsequent AeXCustInv expressions using the syntax %varname% (see example below). The entire placeholder is replaced with an empty string (i.e. it is not written to the output). Examples <%set var1 = “My Value”%> Writing out an evaluated expression <%write “expression” %> The entire placeholder is replaced with the resulting evaluation of the expression, not including the quotes. <%writexml “expression” %> Same as with write above, with the result being replaced as appropriate for use as an XML attribute or element value. Examples <%write “hello world”%> <%write “My Value is %var1%!”%> <MyNode text= “<%writexml “My Value is %var1%!”%>”/> Inventory Solution for Windows Reference 72 Custom Inventory Agent Software Audit Agent Troubleshooting Statements Iteration of registry keys <%foreach regkey= “k” path= “reg path expression” %> arbitrary text - typically includes some write statements using a key: expression. <%next%> The reg path expression can contain variables. The key: expression allows referencing the key variable to access a value of the key and is illustrated in the example below. Keyname You can access the registry key name itself by specifying the reserved word: “%keyname%” Default value for a key You can access the default value for a registry key by specifying the reserved word: “%default%” Example <%foreach regkey= “k” path= “HKLM\Software\Altiris\eXpress\Notification Server“ %> Version= “<%write “key:k.Version”%>” Path= “<%write “key:k.Path”%>” Key= “<%write “key:k.%keyname%”%>” DefValue= “<%write “key:k.%default%”%>” <%next%> Iteration of WMI object collection <%foreach wmiobject= “o” namespace= “namespace” wql= “select ...” user= “UserID” pw= “PW” %> arbitrary text - typically includes some write statements using a wmi: expression <%next%> Note: UserID and PW are optional. The namespace and wql values can contain variables. The wmi: expression allows referencing the WMI object to access a property of the object and is illustrated in the example below. Example <%foreach wmiobject=“o” namespace=“ROOT\CIMV2” wql=“select * from __EventFilter” user=“MYDOMAIN\jennifer” pw=“myPW” %> Start object Name=“<%write “wmi:o.Name”%>” Class=“<%write “wmi:o.__Class”%>” End object <%next%><%next%> Writing a section of the input file to a separate file Use the <%Startfile%> <%endfile%> block to designate that the text outlined by that block should be written to a separate output file. Keyword Reference Foreach (wmi) <%foreach wmiobject=“arbitraryID” namespace=“WBEM namespace” wql=“WMI Query”%> user=“UserID” pw=“PW” (Note: UserID and PW are optional) . <%next%> Foreach (Reg) <%foreach regkey=“arbitraryID” throttle=“%THROTTLEEVERY%,%SLEEPMS%” path=“registry path” maxIO=“100000000000000”%> . <%next%> Inventory Solution for Windows Reference 73 Custom Inventory Agent Software Audit Agent Troubleshooting Keyword Reference If <%if Conditional Statement %> . <%endif%> Set <%Set “Statement”%> Write <%Write “Statement”%> Writexml <%Writexml “Statement”%> Startfile (with specific filename) <%startfile name=“filename”%> . <%endfile%> Startfile (with specific tempfile extension) <%startfile tempfileext= “temp filename extension”%> . <%endfile%> Inventory Solution for Windows Reference 74 Custom Inventory Agent Software Audit Agent Troubleshooting Variables AeXCustInv.exe supports several variables for use by input scripts. The following demonstrates these variables and how they can be used within XML input to control the NSI output. For WMI and IE detection, if the variables have a value, then the component was found. Otherwise, the variable value will be empty. Note: These variable require AeXCustinv version 1.0.0.18 or greater. The variable names are: OS_NAME: The operating system in use. Possible values are: • “DOS” • “Windows3” • “WindowsCE” • “9X” • “NT” • “W2K” • “XP” OS_MAJOR: The ‘major’ version of the OS. OS_MINOR: The ‘minor’ version of the OS. OS_BUILD: The build number of the OS. OS_SP: The service pack level of the OS. WMI_MAJOR: The ‘major’ version of WMI found on the computer (empty if WMI not found). WMI_MINOR: The ‘minor’ version of WMI found on the computer (empty if WMI not found). IE_MAJOR: The ‘major’ version of Internet Explorer found on the computer (empty if IE not found). IE_MINOR: The ‘minor’ version of Internet Explorer found on the computer (empty if IE not found). Below is a sample script showing how these values can be used: Os Information: %OS_NAME% %OS_MAJOR%.%OS_MINOR% build:%OS_BUILD% Service Pack:%OS_SP% OS_VARNAME = %OS_NAME% OS_MAJOR_VARNAME = %OS_MAJOR% OS_MINOR_VARNAME = %OS_MINOR% OS_BUILD_VARNAME = %OS_BUILD% OS_SP_VARNAME= %OS_SP% <%if %WMI_MAJOR% != “”%> WMI Found on machine. Version: %WMI_MAJOR%.%WMI_MINOR% WMI_MAJOR = %WMI_MAJOR% WMI_MINOR = %WMI_MINOR% <%endif%> <%if %IE_MAJOR% != “”%> IE Found on machine. Version: %IE_MAJOR%.%IE_MINOR% IE_MAJOR = %IE_MAJOR% IE_MINOR = %IE_MINOR% <%endif%> The following are some examples that produce valid NSI output files. Example 1: WMI Query <?xml version=“1.0” encoding=“windows-1252”?> <InventoryClasses> <InventoryClass name=“CustInv Sample” manufacturer='CompanyABC' description=’ ’ platform='Win32' version='1.0' mifClass='COMPANYABC|CUSTINVSAMPLE|1.0'> <xml xmlns:s=“uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882” xmlns:dt=“uuid:C2F41010-65B3-11d1-A29F-00AA00C14882” xmlns:rs=“urn:schemas-microsoft-com:rowset” xmlns:z=“#RowsetSchema”> <s:Schema id=“RowsetSchema”> <s:ElementType name=“row” content=“eltOnly” rs:updatable=“true”> <s:AttributeType name=“c0” rs:name=“Event Filter Name” rs:number=“1” rs:basecolumn=“Event Filter Name” rs:keycolumn=“true” mifAttrId=“1”> <s:datatype dt:type=“string” dt:maxLength=“255”/> </s:AttributeType> <s:AttributeType name=“c1” rs:name=“Event Filter Class” rs:number=“2” Inventory Solution for Windows Reference 75 Custom Inventory Agent Software Audit Agent Troubleshooting rs:basecolumn=“Event Filter Class” rs:nullable=“true” mifAttrId=“2”> <s:datatype dt:type=“string” dt:maxLength=“255”/> </s:AttributeType> </s:ElementType> </s:Schema> <rs:data> <%set path=“HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\\MSSQLSERVER”%> <%set var1=“reg:%path%\Client\DB-Lib\AutoAnsiToOem”%> <%if %var1%=“ON”%> <%foreach wmiobject=“o” namespace=“ROOT\CIMV2” wql=“select * from __EventFilter”%> <z:row c0=“wmi:o.Name” c1=“wmi:o.__Class”/> <%next%> <%endif%> </rs:data> </xml> </InventoryClass> </InventoryClasses> Example 2: Registry Sub-Key Enumeration <?xml version=“1.0” encoding=“windows-1252”?> <InventoryClasses> <InventoryClass name=“CustInv Sample” manufacturer='CompanyABC' descripion=’ ’ platform='Win32' version='1.0' mifClass='COMPANYABC|CUSTINVSAMPLE|1.0'> <xml xmlns:s=“uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882” xmlns:dt=“uuid:C2F41010-65B3-11d1-A29F-00AA00C14882” xmlns:rs=“urn:schemas-microsoft-com:rowset” xmlns:z=“#RowsetSchema”> <s:Schema id=“RowsetSchema”> <s:ElementType name=“row” content=“eltOnly” rs:updatable=“true”> <s:AttributeType name=“c0” rs:name=“ClassName” rs:number=“1” rs:basecolumn=“ClassName” rs:keycolumn=“true” mifAttrId=“1”> <s:datatype dt:type=“string” dt:maxLength=“255”/> </s:AttributeType> <s:AttributeType name=“c1” rs:name=“IpsecId” rs:number=“2” rs:basecolumn=“IpsecId” rs:nullable=“true” mifAttrId=“2”> <s:datatype dt:type=“string” dt:maxLength=“255”/> </s:AttributeType> </s:ElementType> </s:Schema> <rs:data> <%set path=“HKEY_LOCAL_MACHINE\SOFTWARE\ALTIRIS\EXPRESS”%> <%set var1=“reg:%path%\Altiris Agent\VERSION”%> <%if %var1% like “?.0.0.?”%> <%foreach regkey=“key1” path=“HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\IPSec\Policy\Local”%> <z:row c0=“key:key1.ClassName” c1=“key:key1.ipsecid”/> <%next%> <%endif%> </rs:data> </xml> </InventoryClass> </InventoryClasses> Example 3: Registry and INI Files <?xml version=“1.0” encoding=“windows-1252”?> <InventoryClasses> <InventoryClass name=“CustInv Sample” manufacturer='CompanyABC' descripion=’ ’ platform='Win32' version='1.0' mifClass='COMPANYABC|CUSTINVSAMPLE|1.0'> <xml xmlns:s=“uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882” xmlns:dt=“uuid:C2F41010-65B3-11d1-A29F-00AA00C14882” xmlns:rs=“urn:schemas-microsoft-com:rowset” xmlns:z=”#RowsetSchema”> <s:Schema id=“RowsetSchema”> <s:ElementType name=“row” content=“eltOnly” rs:updatable=“true”> <s:AttributeType name=“c0” rs:name=“Auto ANSI to OEM” rs:number=“1” rs:basecolumn=“Auto ANSI to OEM” rs:keycolumn=“true” mifAttrId=“1”> <s:datatype dt:type=“string” dt:maxLength=“10”/> </s:AttributeType> <s:AttributeType name=“c1” rs:name=“Use Intl Settings” rs:number=“2” Inventory Solution for Windows Reference 76 Custom Inventory Agent Software Audit Agent Troubleshooting rs:basecolumn=“Use Intl Settings” rs:nullable=“true” mifAttrId=“2”> <s:datatype dt:type=“string” dt:maxLength=“10”/> </s:AttributeType> <s:AttributeType name=“c2” rs:name=“SQL Server Version” rs:number=“3” rs:basecolumn=“SQL Server Version” rs:nullable=“true” mifAttrId=“3”> <s:datatype dt:type=“string” dt:maxLength=“15”/> </s:AttributeType> </s:ElementType> </s:Schema> <rs:data> <%set filepath=“C:\Program Files\Altiris\Notification Server\NSCap\ Bin\Win32\X86\ExchPls.ini”%> <%set path=“HKEY_LOCAL_MACHINE\SOFTWARE\\MICROSOFT\MSSQLSERVER”%> <z:row c0=“<%write “reg:%path%\Client\DB-Lib\AutoAnsiToOem”%>” c1=“<%write “reg:%path%\Client\DB-Lib\UseIntlSettings”%>” c2=“<%write “reg:%path%\MSSQLSERVER\CurrentVersion\CurrentVersion”%>” /> </rs:data> </xml> </InventoryClass> </InventoryClasses> Example 4a: Reading File Header Information <?xml version=“1.0” encoding=“windows-1252”?> <InventoryClasses> <InventoryClass name=“Windows Server Version” manufacturer='CompanyABC' description='' platform='Win32' version='1.0' mifClass='CompanyABC|Win_Serv_Ver|1.0'> <xml xmlns:s=“uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882” xmlns:dt=“uuid:C2F4101065B3-11d1-A29F-00AA00C14882” xmlns:rs=“urn:schemas-microsoft-com:rowset” xmlns:z=“#RowsetSchema”> <s:Schema id=“RowsetSchema”> <s:ElementType name=“row” content=“eltOnly” rs:updatable=“true”> <s:AttributeType name=“c0” rs:name=“Modified_Date” rs:number=“1” rs:keycolumn=“true” mifAttrId=“1”> <s:datatype dt:type=“string” dt:maxLength=“30”/> </s:AttributeType> <s:AttributeType name=“c1” rs:name=“File_Size” rs:number=“2” rs:nullable=“true” mifAttrId=“2”> <s:datatype dt:type=“int” dt:maxLength=“4”/> </s:AttributeType> </s:ElementType> </s:Schema> <rs:data> <%set filepath=“%windir%\lanmannt.bmp”%> <z:row c0=“<%writexml “file:%filepath%|Modified_Date”%>” c1=“<%writexml “file:%filepath%|FileSize”%>” /> </rs:data> </xml> </InventoryClass> </InventoryClasses> Example 4b: Reading File Header Information <%set filepath=“reg:HKEY_LOCAL_MACHINE\Software\Microsoft\MediaPlayer\Installation Directory”%> <%set var1=“file:%filepath%\wmplayer.exe|PRODUCT_VERSION”%> <%if %var1%!=“”%> <z:row c0 = “Windows Media Player” c2=“<%writexml “file:%filepath%\wmplayer.exe|PRODUCT_NAME”%>” c3=“<%writexml “file:%filepath%\wmplayer.exe|PRODUCT_VERSION”%>” c8=“<%writexml “file:%filepath%\wmplayer.exe|PATH”%>” /> <%endif%> <%if %var1%=“”%> <%set var1=“file:%filepath%\mplayer2.exe|PRODUCT_VERSION”%> <%endif%> <%if %var1%!=“”%> <z:row Inventory Solution for Windows Reference 77 Custom Inventory Agent Software Audit Agent Troubleshooting c0 = “Windows Media Player” c2=“<%writexml “file:%filepath%\mplayer2.exe|PRODUCT_NAME”%>” c3=“<%writexml “file:%filepath%\mplayer2.exe|PRODUCT_VERSION”%>” c8=“<%writexml “file:%filepath%\mplayer2.exe|PATH”%>” /> <%endif%> Example 4c: Reading File Header Information <?xml version=“1.0” encoding=“windows-1252”?> <InventoryClasses> <InventoryClass name='Registered Files' manufacturer='CompanyABC' description='' version='1.0' platform='Win32' mifClass='CompanyABC|REGFILES|1.0'> <xml xmlns:s=“uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882” xmlns:dt=“uuid:C2F41010-65B311d1-A29F-00AA00C14882” xmlns:rs=“urn:schemas-microsoft-com:rowset” xmlns:z=“#RowsetSchema”> <s:Schema id=“RowsetSchema”> <s:ElementType name=“row” content=“eltOnly” rs:updatable=“true”> <s:AttributeType name=“c0” rs:name=“Reg Path” rs:number=“1” rs:basecolumn=“Auto Path” rs:keycolumn=“true” mifAttrId='1'> <s:datatype dt:type=“string” dt:maxLength=“255”/> </s:AttributeType> <s:AttributeType name=“c1” rs:name=“Filename in Registry” rs:number=“2” rs:basecolumn=“Filename in Registry” rs:keycolumn=“true” mifAttrId='2'> <s:datatype dt:type=“string” dt:maxLength=“255”/> </s:AttributeType> <s:AttributeType name=“c2” rs:name=“Filename” rs:number=“3” rs:basecolumn=“Filename” rs:keycolumn=“true” mifAttrId='3'> <s:datatype dt:type=“string” dt:maxLength=“255”/> </s:AttributeType> <s:AttributeType name=“c3” rs:name=“Product Name” rs:number=“4” rs:basecolumn=“Product Name” rs:keycolumn=“true” mifAttrId='4'> <s:datatype dt:type=“string” dt:maxLength=“255”/> </s:AttributeType> <s:AttributeType name=“c4” rs:name=“Product Version” rs:number=“5” rs:basecolumn=“Product Version” rs:keycolumn=“true” mifAttrId='5'> <s:datatype dt:type=“string” dt:maxLength=“255”/> </s:AttributeType> <s:AttributeType name=“c5” rs:name=“Manufacturer” rs:number=“6” rs:basecolumn=“Manufacturer” rs:keycolumn=“true” mifAttrId='6'> <s:datatype dt:type=“string” dt:maxLength=“255”/> </s:AttributeType> <s:AttributeType name=“c6” rs:name=“Language” rs:number=“7” rs:basecolumn=“Language” rs:keycolumn=“true” mifAttrId='7'> <s:datatype dt:type=“string” dt:maxLength=“255”/> </s:AttributeType> <s:AttributeType name=“c7” rs:name=“Internal Name” rs:number=“8” rs:basecolumn=“Internal Name” rs:keycolumn=“true” mifAttrId='8'> <s:datatype dt:type=“string” dt:maxLength=“255”/> </s:AttributeType> <s:AttributeType name=“c8” rs:name=“FileSize” rs:number=“9” rs:basecolumn=“FileSize” rs:keycolumn=“true” mifAttrId='9'> <s:datatype dt:type=“string” dt:maxLength=“255”/> </s:AttributeType> <s:AttributeType name=“c9” rs:name=“Path” rs:number=“10” rs:basecolumn=“Path” rs:keycolumn=“true” mifAttrId='10'> <s:datatype dt:type=“string” dt:maxLength=“255”/> </s:AttributeType> <s:AttributeType name=“c10” rs:name=“Creation Date” rs:number=“11” rs:basecolumn=“Creation Date” rs:keycolumn=“true” mifAttrId='11'> <s:datatype dt:type=“string” dt:maxLength=“255”/> </s:AttributeType> <s:AttributeType name=“c11” rs:name=“Last Modified Date” rs:number=“12” rs:basecolumn=“Last Modified Date” rs:keycolumn=“true” mifAttrId='12'> <s:datatype dt:type=“string” dt:maxLength=“255”/> </s:AttributeType> <s:AttributeType name=“c12” rs:name=“Description” rs:number=“13” rs:basecolumn=“Description” rs:keycolumn=“true” mifAttrId='13'> <s:datatype dt:type=“string” dt:maxLength=“255”/> </s:AttributeType> <s:AttributeType name=“c13” rs:name=“Copyright” rs:number=“14” rs:basecolumn=“Copyright” rs:keycolumn=“true” mifAttrId='14'> <s:datatype dt:type=“string” dt:maxLength=“255”/> Inventory Solution for Windows Reference 78 Custom Inventory Agent Software Audit Agent Troubleshooting </s:AttributeType> <s:AttributeType name=“c14” rs:name=“Is Attribute Hidden” rs:number=“15” rs:basecolumn=“Is Attribute Hidden” rs:keycolumn=“true” mifAttrId='15'> <s:datatype dt:type=“string” dt:maxLength=“255”/> </s:AttributeType> <s:AttributeType name=“c15” rs:name=“Is Attribute Read Only” rs:number=“16” rs:basecolumn=“Is Attribute Read Only” rs:keycolumn=“true” mifAttrId='16'> <s:datatype dt:type=“string” dt:maxLength=“255”/> </s:AttributeType> <s:AttributeType name=“c16” rs:name=“Is Attribute System” rs:number=“17” rs:basecolumn=“Is Attribute System” rs:keycolumn=“true” mifAttrId='17'> <s:datatype dt:type=“string” dt:maxLength=“255”/> </s:AttributeType> </s:ElementType> </s:Schema> <rs:data> <%set THROTTLEEVERY=“3”%> <%set SLEEPMS=“40”%> <%set BASEPATH=“HKEY_CLASSES_ROOT\CLSID”%> <%foreach regkey=“key1” throttle=“%THROTTLEEVERY%,%SLEEPMS%” path=“%BASEPATH%”%> <%set SUBKEY=“%BASEPATH%\key:key1.%keyname%”%> <%foreach regkey=“key2” path=“%SUBKEY%” maxIO=“100000000000000”%> <%if key:key2.%keyname%=“InProcServer32”%> <%set FILELOCATION=“key:key2.%default%”%> <%if %FILELOCATION% != “”%> <z:row c0=“<%writexml “%SUBKEY%\key:key2.%keyname%”%>” c1=“<%writexml “%FILELOCATION%”%>” c2=“<%writexml “file:%FILELOCATION%|FILENAME”%>” c3=“<%writexml “file:%FILELOCATION%|PRODUCT_NAME”%>” c4=“<%writexml “file:%FILELOCATION%|PRODUCT_VERSION”%>” c5=“<%writexml “file:%FILELOCATION%|MANUFACTURER”%>” c6=“<%writexml “file:%FILELOCATION%|LANGUAGE”%>” c7=“<%writexml “file:%FILELOCATION%|INTERNAL_NAME”%>” c8=“<%writexml “file:%FILELOCATION%|FILESIZE”%>” c9=“<%writexml “file:%FILELOCATION%|PATH”%>” c10=“<%writexml “file:%FILELOCATION%|ORIGINAL_DATE”%>” c11=“<%writexml “file:%FILELOCATION%|MODIFIED_DATE”%>” c12=“<%writexml “file:%FILELOCATION%|DESCRIPTION”%>” c13=“<%writexml “file:%FILELOCATION%|COPYRIGHT”%>” c14=“<%writexml “file:%FILELOCATION%|IS_ATTR_HIDDEN”%>” c15=“<%writexml “file:%FILELOCATION%|IS_ATTR_READONLY”%>” c16=“<%writexml “file:%FILELOCATION%|IS_ATTR_SYSTEM”%>” /> <%endif%> <%endif%> <%next%> <%next%> </rs:data> </xml> </InventoryClass> </InventoryClasses> Example 5: FOREACH FILE loop to list all ocx files in the Windir and Subdirs <?xml version=”1.0” encoding=”windows-1252”?> <InventoryClasses> <InventoryClass name='All OCX Files in Windir and subdirs' manufacturer='Altiris' description='' version='1.0' platform='Win32' mifClass='ALTIRIS|REGFILES|1.0'> <xml xmlns:s=”uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882” xmlns:dt=”uuid:C2F41010-65B311d1-A29F-00AA00C14882” xmlns:rs=”urn:schemas-microsoft-com:rowset” xmlns:z=”#RowsetSchema”> <s:Schema id=”RowsetSchema”> <s:ElementType name=”row” content=”eltOnly” rs:updatable=”true”> <s:AttributeType name=”c0” rs:name=”Filename” rs:number=”1” rs:basecolumn=”Filename” rs:keycolumn=”true” mifAttrId='1'> <s:datatype dt:type=”string” dt:maxLength=”255”/> </s:AttributeType> <s:AttributeType name=”c1” rs:name=”Product Name” rs:number=”2” rs:basecolumn=”Product Name” rs:keycolumn=”true” mifAttrId='2'> <s:datatype dt:type=”string” dt:maxLength=”255”/> Inventory Solution for Windows Reference 79 Custom Inventory Agent Software Audit Agent Troubleshooting </s:AttributeType> <s:AttributeType name=”c2” rs:name=”Product Version” rs:number=”3” rs:basecolumn=”Product Version” rs:keycolumn=”true” mifAttrId='3'> <s:datatype dt:type=”string” dt:maxLength=”255”/> </s:AttributeType> <s:AttributeType name=”c3” rs:name=”Manufacturer” rs:number=”4” rs:basecolumn=”Manufacturer” rs:keycolumn=”true” mifAttrId='4'> <s:datatype dt:type=”string” dt:maxLength=”255”/> </s:AttributeType> <s:AttributeType name=”c4” rs:name=”Language” rs:number=”5” rs:basecolumn=”Language” rs:keycolumn=”true” mifAttrId='5'> <s:datatype dt:type=”string” dt:maxLength=”255”/> </s:AttributeType> <s:AttributeType name=”c5” rs:name=”Internal Name” rs:number=”6” rs:basecolumn=”Internal Name” rs:keycolumn=”true” mifAttrId='6'> <s:datatype dt:type=”string” dt:maxLength=”255”/> </s:AttributeType> <s:AttributeType name=”c6” rs:name=”FileSize” rs:number=”7” rs:basecolumn=”FileSize” rs:keycolumn=”true” mifAttrId='7'> <s:datatype dt:type=”string” dt:maxLength=”255”/> </s:AttributeType> <s:AttributeType name=”c7” rs:name=”Path” rs:number=”8” rs:basecolumn=”Path” rs:keycolumn=”true” mifAttrId='8'> <s:datatype dt:type=”string” dt:maxLength=”255”/> </s:AttributeType> <s:AttributeType name=”c8” rs:name=”Creation Date” rs:number=”9” rs:basecolumn=”Creation Date” rs:keycolumn=”true” mifAttrId='9'> <s:datatype dt:type=”string” dt:maxLength=”255”/> </s:AttributeType> <s:AttributeType name=”c9” rs:name=”Last Modified Date” rs:number=”10” rs:basecolumn=”Last Modified Date” rs:keycolumn=”true” mifAttrId='10'> <s:datatype dt:type=”string” dt:maxLength=”255”/> </s:AttributeType> <s:AttributeType name=”c10” rs:name=”Description” rs:number=”11” rs:basecolumn=”Description” rs:keycolumn=”true” mifAttrId='11'> <s:datatype dt:type=”string” dt:maxLength=”255”/> </s:AttributeType> <s:AttributeType name=”c11” rs:name=”Copyright” rs:number=”12” rs:basecolumn=”Copyright” rs:keycolumn=”true” mifAttrId='12'> <s:datatype dt:type=”string” dt:maxLength=”255”/> </s:AttributeType> <s:AttributeType name=”c12” rs:name=”Is Attribute Hidden” rs:number=”13” rs:basecolumn=”Is Attribute Hidden” rs:keycolumn=”true” mifAttrId='13'> <s:datatype dt:type=”string” dt:maxLength=”255”/> </s:AttributeType> <s:AttributeType name=”c13” rs:name=”Is Attribute Read Only” rs:number=”14” rs:basecolumn=”Is Attribute Read Only” rs:keycolumn=”true” mifAttrId='14'> <s:datatype dt:type=”string” dt:maxLength=”255”/> </s:AttributeType> <s:AttributeType name=”c14” rs:name=”Is Attribute System” rs:number=”15” rs:basecolumn=”Is Attribute System” rs:keycolumn=”true” mifAttrId='15'> <s:datatype dt:type=”string” dt:maxLength=”255”/> </s:AttributeType> <s:AttributeType name=”c15” rs:name=”Is Windows System Protected” rs:number=”16” rs:basecolumn=”Is Windows System Protected” rs:keycolumn=”true” mifAttrId='16'> <s:datatype dt:type=”string” dt:maxLength=”255”/> </s:AttributeType> </s:ElementType> </s:Schema> <rs:data> <%set THROTTLEEVERY=”30”%> <%set SLEEPMS=”30”%> <%foreach file=”file1” subdirs=”yes” throttle=”%THROTTLEEVERY%,%SLEEPMS%” path=”%windir%\*.ocx” maxIO=”5000”%> <z:row c0=”<%writexml “forfile:file1.FILENAME”%>” c1=”<%writexml “forfile:file1.PRODUCT_NAME”%>” c2=”<%writexml “forfile:file1.PRODUCT_VERSION”%>” c3=”<%writexml “forfile:file1.MANUFACTURER”%>” c4=”<%writexml “forfile:file1.LANGUAGE”%>” c5=”<%writexml “forfile:file1.INTERNAL_NAME”%>” c6=”<%writexml “forfile:file1.FILESIZE”%>” c7=”<%writexml “forfile:file1.PATH”%>” c8=”<%writexml “forfile:file1.ORIGINAL_DATE”%>” Inventory Solution for Windows Reference 80 Custom Inventory Agent Software Audit Agent Troubleshooting c9=”<%writexml “forfile:file1.MODIFIED_DATE”%>” c10=”<%writexml “forfile:file1.DESCRIPTION”%>” c11=”<%writexml “forfile:file1.COPYRIGHT”%>” c12=”<%writexml “forfile:file1.IS_ATTR_HIDDEN”%>” c13=”<%writexml “forfile:file1.IS_ATTR_READONLY”%>” c14=”<%writexml “forfile:file1.IS_ATTR_SYSTEM”%>” c15=”<%writexml “forfile:file1.IS_SYSTEM_PROTECTED”%>” /> <%next%> </rs:data> </xml> </InventoryClass> </InventoryClasses> Example 6: Enumerating VALUES of a Single Registry Key <?xml version=”1.0” encoding=”windows-1252”?> <InventoryClasses> <InventoryClass name=”CustInv Sample” manufacturer='CompanyABC' description='' platform='Win32' version='1.0' mifClass='COMPANYABC|CUSTINVSAMPLE|1.0'> <xml xmlns:s=”uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882” xmlns:dt=”uuid:C2F4101065B3-11d1-A29F-00AA00C14882” xmlns:rs=”urn:schemas-microsoft-com:rowset” xmlns:z=”#RowsetSchema”> <s:Schema id=”RowsetSchema”> <s:ElementType name=”row” content=”eltOnly” rs:updatable=”true”> <s:AttributeType name=”c0” rs:name=”Name” rs:number=”1” rs:keycolumn=”true” mifAttrId=”1”> <s:datatype dt:type=”string” dt:maxLength=”255”/> </s:AttributeType> <s:AttributeType name=”c1” rs:name=”type” rs:number=”2” rs:nullable=”true” mifAttrId=”2”> <s:datatype dt:type=”string” dt:maxLength=”255”/> </s:AttributeType> <s:AttributeType name=”c2” rs:name=”Value” rs:number=”3” rs:nullable=”true” mifAttrId=”3”> <s:datatype dt:type=”string” dt:maxLength=”255”/> </s:AttributeType> </s:ElementType> </s:Schema> <rs:data> <%set RegPath=”HKEY_LOCAL_MACHINE\SOFTWARE\Altiris\eXpress\Notification Server\Solutions\{3AD26790-F471-11F2-8246-0F101B34B9DF}”%> <%foreach regvalue=”val1” path=”%RegPath%”%> <z:row c0=”<%writexml “key:val1.name”%>” c1=”<%writexml “key:val1.type”%>” c2=”<%writexml “key:val1.value”%>” /> <%next%> </rs:data> </xml> </InventoryClass> </InventoryClasses> Inventory Solution for Windows Reference 81 Exchange Agent Software Audit Agent Troubleshooting Exchange Agent The Exchange agent scans mail profile information and adds this information to your database. The Exchange agent gathers information from the Exchange Server directory and associates the Exchange mailbox properties with the local computer's inventory in the database through the creation of a MIF or NSI file. With the Exchange agent, you can customize the set of properties that are scanned from the Exchange server directory and added to the database. You can also customize the names of the properties so that the data appears in your database just as you would like it to appear. For example, there is a property in the Exchange directory called Custom Attribute 1. If you use this property in your Exchange server implementation to specify the employee cost center, then in the MIF or NSI file created by the Exchange agent you can set the name of the attribute to be Cost Center. Cost Center then is the name of the attribute as seen in the Resource Explorer. The Exchange agent also works with Microsoft Exchange 2000 in an Active Directory environment. Note: The user must be logged on to the computer for the Exchange Agent to work correctly. Note: If users have Microsoft Outlook on the target computer and they are a low-rights user, the Exchange agent will still work. Read rights will be granted so the data can be gathered. Quick Links • “How the Exchange Agent Works” on page 82 • “Exchange Agent Configuration” on page 82 • “Customizing the Data Reported” on page 82 • “Exchange Agent Administration” on page 83 • “Exchange Agent Troubleshooting” on page 84 How the Exchange Agent Works The Exchange agent enumerates each mail profile that is defined on the computer. For each profile, the set of mail providers is returned. If the Microsoft Exchange Server is one of the mail providers in a profile, then Exchange agent gathers information about the mailbox that the profile is set up to read. This information is then converted to a MIF or NSI file that is registered with the target computer. Depending on the file type, the Exchange agent does one of the following: • Places a MIF file called exchpls.mif in the NOIDMIF directory on the target computer. • Places an NSI file in the install path\Altiris\express\Inventory folder. Exchange Agent Configuration • “Customizing the Data Reported” on page 82 • “Exchange Agent Administration” on page 83 • “Exchange Agent Troubleshooting” on page 84 Customizing the Data Reported The default exchpls.ini file that is shipped with the Exchange agent contains the configuration to gather the most commonly requested settings out of the Exchange directory. Normally you don't need to customize the exchpls.ini file from the default settings. Inventory Solution for Windows Reference 82 Exchange Agent Software Audit Agent Troubleshooting However, if you do want to gather additional data or change the names of attributes as they appear in the SMS database, the exchpls.ini file has the following format: [Exch EMail Property.7] # PR_STREET_ADDRESS, Attribute Tag = 0x3A29001E Attribute Name = Street Address Attribute ID = 7 Each section is of the format [Exch EMail Property.<index>] where <index> is some unique positive integer. If the <index> is not unique, then only a single instance of the <index> will be processed. Lines that start with # are comments. Other characters in the line are ignored. The Attribute Tag is a HEX value which corresponds to the ID of the property that is to be gathered from the Exchange directory. The format of the string is 0x plus the rest of the HEX value. The Attribute Name is the value of the attribute name that is generated in the exchpls.mif file The Attribute ID is the Decimal ID of the attribute that is generated in the exchpls.mif file. The attributes are output in the exchpls.mif in the order they appear in the exchpls.ini file. This order is not significant to SMS. The Attribute Name and the Attribute ID are significant to SMS. Also, note that the Attribute Tag is in HEX and the Attribute ID is in Decimal. Note: For a complete list of the attributes that are available to be gathered from the Exchange directory, see “Appendix A: Exchange Directory Values” on page 88. IMPORTANT: After you have associated a given attribute tag and attribute name with a given attribute ID, you cannot easily change this without causing issues in SMS. When SMS has processed a MIF with a given context for a given attribute ID, all future MIFs of that group are expected to retain the same attribute name and context for that ID. When a MIF is processed by SMS there is a history file that is created. This history file contains the context of what MIF attribute names are associated with which MIF attribute IDs for a given MIF group class. If you create new MIF files that change this data, SMS will report an error when processing the MIF even though the MIF file does not have any syntax errors. If you want to change what data is reported or the names of attributes, you should change both the Attribute Name as well as the Attribute ID so that they are distinct from all other Attribute Names and Attribute IDs that have previously been used for that group class. IMPORTANT: There are two hard coded attribute names and IDs that are always generated for a group when the Exchange agent runs. These are: START ATTRIBUTE Name = “Profile” ID = 98 Type = String(256) Access = Read-Only Storage = Specific Value = “Some Profile Name” END ATTRIBUTE START ATTRIBUTE Name = “Default Profile” ID = 99 Type = String(256) Access = Read-Only Storage = Specific Value = “Yes” END ATTRIBUTE Note: Do not use these attribute IDs in your own defined sections in the exchpls.ini file. Exchange Agent Administration For Exchange agent to properly run, the file AeXExchPls.ini must exist in the same directory as the AeXExchPls.exe file. The AeXExchPls.ini file specifies the set of Exchange directory attributes that are to be gathered and written in the AeXExchPls.mif file. If the AeXExchPls.ini file does not exist Inventory Solution for Windows Reference 83 Exchange Agent Software Audit Agent Troubleshooting in the same directory as AeXExchPls.exe, then you will get an error dialog indicating that the INI file cannot be found. If the INI file is not properly formatted, then you may get other error messages indicating various issues in trying to interpret the contents of the INI file. If you run the Exchange agent in hidden mode, then any error messages about a missing or badly formed AeXExchPls.ini file are not presented to the user, and no MIF file is created. Command Line Arguments for the Exchange agent For a listing of the Exchange agent command line arguments, see “AeXExchPls Executable” on page 97. Exchange Agent Troubleshooting • Use the /? command line argument when running Exchange agent to get the usage details. • MIF files will be created in the NOIDMIF directory and an NSI file will be created in install path \Altiris\express\Inventory. • The user must be on the network to get data from the directory. If Outlook has not run on Windows 2000 and the user is not an administrator, you may not be able to get user data. Inventory Solution for Windows Reference 84 Serial Number Agent Software Audit Agent Troubleshooting Serial Number Agent The Serial Number agent reports detailed information about the serial number, computer model and manufacturer, memory modules, SMBIOS, and BIOS. This provides a great way to track your business assets. How many times has your management asked, “How many of each PC model type do we have?” Or “Where did all that memory we purchased go to?” The Serial Number agent reports these full details. Quick Links • “Serial Number Agent Administration” on page 85 • “Serial Number Agent Troubleshooting” on page 85 Serial Number Agent Administration The default settings of Serial Number (which you can override with the command line arguments) write MIF files to an XML formatted file called snplus.nsi in the install path\Altiris\express\Inventory folder and to the NOIDMIF directory on an SMS client. The NSI file can be viewed with the Altiris NSI file viewer which is included with Notification Server. The reports for the Serial Number agent come with reports that indicate which computers have run Serial Number agent. These reports will also indicate which computers may not be reporting serial number data. When a computer is scanned and no serial number is found, a file called sndata.bin is generated and left in the root of the C: drive on the computer where the scan took place. You can forward this sndata.bin file to Altiris Support through e-mail at [email protected]. Altiris Support can analyze the file to see if support can be added to gather the serial number data. Command Line Arguments for the Serial Number agent For a listing of the Serial Number agent command line arguments, see “AeXSNPlus Executable” on page 102. Serial Number Agent Troubleshooting • When a computer is scanned and no information is found, a file called sndata.bin is generated and left in the root of the C: drive on the computer where the scan took place. • Serial Number information is offered by most larger PC manufacturers. There are cases where serial number information is simply not available to be retrieved. A log file will be created to track and identify if the serial number can be extracted. Contact [email protected] for details on how to train the Serial Number agent to gather the serial number data from these new computers. Inventory Solution for Windows Reference 85 Machine Inventory Agent Software Audit Agent Troubleshooting Machine Inventory Agent The Machine Inventory agent is used to collect software and hardware inventory. Command Line Arguments for the Machine Inventory agent For a listing of the Machine Inventory command line arguments, see “AeXMachInv Executable” on page 99. To exclude inventory groups from being inventoried, you can create an INI file containing the groups to be excluded. This file should be placed in the same directory as AeXMachInv.exe. For a list of inventory groups, see “Appendix C: Inventory Solution Data Reference” on page 105. Example Suppose you want to exclude the following groups from the Machine Inventory results. • • • • • • AeX EU Logon Users AeX EU Results AeX OS Results AeX OS User Profiles AeX OS Desktop AeX OS Internet Explorer To do this, you first create a file, MachInv.ini, which lists these group names. Then place this file in the same directory as AeXMachInv.exe. MachInv.ini contents: AeX AeX AeX AeX AeX AeX EU EU OS OS OS OS Logon Users Results Results User Profiles Desktop Internet Explorer Next, run AeXMachInv as follows: AeXMachInv /ini MachInv.ini Note: You can include only the files found in the INI file by using the /inc parameter. Inventory Solution for Windows Reference 86 Reference This reference section provides command line arguments and other detailed information you may need when using Inventory Solution. Quick Links “Appendix A: Exchange Directory Values” on page 88 Provides a table of Exchange directory values. “Appendix B: Program Command Line Arguments” on page 95 Provides command line arguments for programs provided by Inventory Solution. “Appendix C: Inventory Solution Provides a list of inventory tables that are found in Data Reference” on page 105 the Notification Server database. Inventory Solution for Windows Reference 87 Appendix A: Exchange Directory Values Property Name HEX Value PR_ACCOUNT 0x3a00001e PR_ACCOUNT_W 0x3a00001f PR_ACCOUNT_A 0x3a00001e PR_ALTERNATE_RECIPIENT 0x3a010102 PR_CALLBACK_TELEPHONE_NUMBER 0x3a02001e PR_CALLBACK_TELEPHONE_NUMBER_W 0x3a02001f PR_CALLBACK_TELEPHONE_NUMBER_A 0x3a02001e PR_CONVERSION_PROHIBITED 0x3a03000b PR_DISCLOSE_RECIPIENTS 0x3a04000b PR_GENERATION 0x3a05001e PR_GENERATION_W 0x3a05001f PR_GENERATION_A 0x3a05001e PR_GIVEN_NAME 0x3a06001e PR_GIVEN_NAME_W 0x3a06001f PR_GIVEN_NAME_A 0x3a06001e PR_GOVERNMENT_ID_NUMBER 0x3a07001e PR_GOVERNMENT_ID_NUMBER_W 0x3a07001f PR_GOVERNMENT_ID_NUMBER_A 0x3a07001e PR_BUSINESS_TELEPHONE_NUMBER 0x3a08001e PR_BUSINESS_TELEPHONE_NUMBER_W 0x3a08001f PR_BUSINESS_TELEPHONE_NUMBER_A 0x3a08001e PR_OFFICE_TELEPHONE_NUMBER 0x3a08001e PR_OFFICE_TELEPHONE_NUMBER_W 0x3a08001f PR_OFFICE_TELEPHONE_NUMBER_A 0x3a08001e PR_HOME_TELEPHONE_NUMBER 0x3a09001e PR_HOME_TELEPHONE_NUMBER_W 0x3a09001f PR_HOME_TELEPHONE_NUMBER_A 0x3a09001e PR_INITIALS 0x3a0a001e PR_INITIALS_W 0x3a0a001f PR_INITIALS_A 0x3a0a001e PR_KEYWORD 0x3a0b001e PR_KEYWORD_W 0x3a0b001f Inventory Solution for Windows Reference 88 Appendix A: Exchange Directory Values PR_KEYWORD_A 0x3a0b001e PR_LANGUAGE 0x3a0c001e PR_LANGUAGE_W 0x3a0c001f PR_LANGUAGE_A 0x3a0c001e PR_LOCATION 0x3a0d001e PR_LOCATION_W 0x3a0d001f PR_LOCATION_A 0x3a0d001e PR_MAIL_PERMISSION 0x3a0e000b PR_MHS_COMMON_NAME 0x3a0f001e PR_MHS_COMMON_NAME_W 0x3a0f001f PR_MHS_COMMON_NAME_A 0x3a0f001e PR_ORGANIZATIONAL_ID_NUMBER 0x3a10001e PR_ORGANIZATIONAL_ID_NUMBER_W 0x3a10001f PR_ORGANIZATIONAL_ID_NUMBER_A 0x3a10001e PR_SURNAME 0x3a11001e PR_SURNAME_W 0x3a11001f PR_SURNAME_A 0x3a11001e PR_ORIGINAL_ENTRYID 0x3a120102 PR_ORIGINAL_DISPLAY_NAME 0x3a13001e PR_ORIGINAL_DISPLAY_NAME_W 0x3a13001f PR_ORIGINAL_DISPLAY_NAME_A 0x3a13001e PR_ORIGINAL_SEARCH_KEY 0x3a140102 PR_POSTAL_ADDRESS 0x3a15001e PR_POSTAL_ADDRESS_W 0x3a15001f PR_POSTAL_ADDRESS_A 0x3a15001e PR_COMPANY_NAME 0x3a16001e PR_COMPANY_NAME_W 0x3a16001f PR_COMPANY_NAME_A 0x3a16001e PR_TITLE 0x3a17001e PR_TITLE_W 0x3a17001f PR_TITLE_A 0x3a17001e PR_DEPARTMENT_NAME 0x3a18001e PR_DEPARTMENT_NAME_W 0x3a18001f PR_DEPARTMENT_NAME_A 0x3a18001e PR_OFFICE_LOCATION 0x3a19001e PR_OFFICE_LOCATION_W 0x3a19001f PR_OFFICE_LOCATION_A 0x3a19001e PR_PRIMARY_TELEPHONE_NUMBER 0x3a1a001e PR_PRIMARY_TELEPHONE_NUMBER_W 0x3a1a001f PR_PRIMARY_TELEPHONE_NUMBER_A 0x3a1a001e PR_BUSINESS2_TELEPHONE_NUMBER 0x3a1b001e PR_BUSINESS2_TELEPHONE_NUMBER_W 0x3a1b001f Inventory Solution for Windows Reference 89 Appendix A: Exchange Directory Values PR_BUSINESS2_TELEPHONE_NUMBER_A 0x3a1b001e PR_OFFICE2_TELEPHONE_NUMBER 0x3a1b001e PR_OFFICE2_TELEPHONE_NUMBER_W 0x3a1b001f PR_OFFICE2_TELEPHONE_NUMBER_A 0x3a1b001e PR_MOBILE_TELEPHONE_NUMBER 0x3a1c001e PR_MOBILE_TELEPHONE_NUMBER_W 0x3a1c001f PR_MOBILE_TELEPHONE_NUMBER_A 0x3a1c001e PR_CELLULAR_TELEPHONE_NUMBER 0x3a1c001e PR_CELLULAR_TELEPHONE_NUMBER_W 0x3a1c001f PR_CELLULAR_TELEPHONE_NUMBER_A 0x3a1c001e PR_RADIO_TELEPHONE_NUMBER 0x3a1d001e PR_RADIO_TELEPHONE_NUMBER_W 0x3a1d001f PR_RADIO_TELEPHONE_NUMBER_A 0x3a1d001e PR_CAR_TELEPHONE_NUMBER 0x3a1e001e PR_CAR_TELEPHONE_NUMBER_W 0x3a1e001f PR_CAR_TELEPHONE_NUMBER_A 0x3a1e001e PR_OTHER_TELEPHONE_NUMBER 0x3a1f001e PR_OTHER_TELEPHONE_NUMBER_W 0x3a1f001f PR_OTHER_TELEPHONE_NUMBER_A 0x3a1f001e PR_TRANSMITABLE_DISPLAY_NAME 0x3a20001e PR_TRANSMITABLE_DISPLAY_NAME_W 0x3a20001f PR_TRANSMITABLE_DISPLAY_NAME_A 0x3a20001e PR_PAGER_TELEPHONE_NUMBER 0x3a21001e PR_PAGER_TELEPHONE_NUMBER_W 0x3a21001f PR_PAGER_TELEPHONE_NUMBER_A 0x3a21001e PR_BEEPER_TELEPHONE_NUMBER 0x3a21001e PR_BEEPER_TELEPHONE_NUMBER_W 0x3a21001f PR_BEEPER_TELEPHONE_NUMBER_A 0x3a21001e PR_USER_CERTIFICATE 0x3a220102 PR_PRIMARY_FAX_NUMBER 0x3a23001e PR_PRIMARY_FAX_NUMBER_W 0x3a23001f PR_PRIMARY_FAX_NUMBER_A 0x3a23001e PR_BUSINESS_FAX_NUMBER 0x3a24001e PR_BUSINESS_FAX_NUMBER_W 0x3a24001f PR_BUSINESS_FAX_NUMBER_A 0x3a24001e PR_HOME_FAX_NUMBER 0x3a25001e PR_HOME_FAX_NUMBER_W 0x3a25001f PR_HOME_FAX_NUMBER_A 0x3a25001e PR_COUNTRY 0x3a26001e PR_COUNTRY_W 0x3a26001f PR_COUNTRY_A 0x3a26001e PR_BUSINESS_ADDRESS_COUNTRY 0x3a26001e Inventory Solution for Windows Reference 90 Appendix A: Exchange Directory Values PR_BUSINESS_ADDRESS_COUNTRY_W 0x3a26001f PR_BUSINESS_ADDRESS_COUNTRY_A 0x3a26001e PR_LOCALITY 0x3a27001e PR_LOCALITY_W 0x3a27001f PR_LOCALITY_A 0x3a27001e PR_BUSINESS_ADDRESS_CITY 0x3a27001e PR_BUSINESS_ADDRESS_CITY_W 0x3a27001f PR_BUSINESS_ADDRESS_CITY_A 0x3a27001e PR_STATE_OR_PROVINCE 0x3a28001e PR_STATE_OR_PROVINCE_W 0x3a28001f PR_STATE_OR_PROVINCE_A 0x3a28001e PR_BUSINESS_ADDRESS_STATE_OR_PROVINCE 0x3a28001e PR_BUSINESS_ADDRESS_STATE_OR_PROVINCE_W 0x3a28001f PR_BUSINESS_ADDRESS_STATE_OR_PROVINCE_A 0x3a28001e PR_STREET_ADDRESS 0x3a29001e PR_STREET_ADDRESS_W 0x3a29001f PR_STREET_ADDRESS_A 0x3a29001e PR_BUSINESS_ADDRESS_STREET 0x3a29001e PR_BUSINESS_ADDRESS_STREET_W 0x3a29001f PR_BUSINESS_ADDRESS_STREET_A 0x3a29001e PR_POSTAL_CODE 0x3a2a001e PR_POSTAL_CODE_W 0x3a2a001f PR_POSTAL_CODE_A 0x3a2a001e PR_BUSINESS_ADDRESS_POSTAL_CODE 0x3a2a001e PR_BUSINESS_ADDRESS_POSTAL_CODE_W 0x3a2a001f PR_BUSINESS_ADDRESS_POSTAL_CODE_A 0x3a2a001e PR_POST_OFFICE_BOX 0x3a2b001e PR_POST_OFFICE_BOX_W 0x3a2b001f PR_POST_OFFICE_BOX_A 0x3a2b001e PR_BUSINESS_ADDRESS_POST_OFFICE_BOX 0x3a2b001e PR_BUSINESS_ADDRESS_POST_OFFICE_BOX_W 0x3a2b001f PR_BUSINESS_ADDRESS_POST_OFFICE_BOX_A 0x3a2b001e PR_TELEX_NUMBER 0x3a2c001e PR_TELEX_NUMBER_W 0x3a2c001f PR_TELEX_NUMBER_A 0x3a2c001e PR_ISDN_NUMBER 0x3a2d001e PR_ISDN_NUMBER_W 0x3a2d001f PR_ISDN_NUMBER_A 0x3a2d001e PR_ASSISTANT_TELEPHONE_NUMBER 0x3a2e001e PR_ASSISTANT_TELEPHONE_NUMBER_W 0x3a2e001f PR_ASSISTANT_TELEPHONE_NUMBER_A 0x3a2e001e PR_HOME2_TELEPHONE_NUMBER 0x3a2f001e Inventory Solution for Windows Reference 91 Appendix A: Exchange Directory Values PR_HOME2_TELEPHONE_NUMBER_W 0x3a2f001f PR_HOME2_TELEPHONE_NUMBER_A 0x3a2f001e PR_ASSISTANT 0x3a30001e PR_ASSISTANT_W 0x3a30001f PR_ASSISTANT_A 0x3a30001e PR_SEND_RICH_INFO 0x3a40000b PR_WEDDING_ANNIVERSARY 0x3a410040 PR_BIRTHDAY 0x3a420040 PR_HOBBIES 0x3a43001e PR_HOBBIES_W 0x3a43001f PR_HOBBIES_A 0x3a43001e PR_MIDDLE_NAME 0x3a44001e PR_MIDDLE_NAME_W 0x3a44001f PR_MIDDLE_NAME_A 0x3a44001e PR_DISPLAY_NAME_PREFIX 0x3a45001e PR_DISPLAY_NAME_PREFIX_W 0x3a45001f PR_DISPLAY_NAME_PREFIX_A 0x3a45001e PR_PROFESSION 0x3a46001e PR_PROFESSION_W 0x3a46001f PR_PROFESSION_A 0x3a46001e PR_PREFERRED_BY_NAME 0x3a47001e PR_PREFERRED_BY_NAME_W 0x3a47001f PR_PREFERRED_BY_NAME_A 0x3a47001e PR_SPOUSE_NAME 0x3a48001e PR_SPOUSE_NAME_W 0x3a48001f PR_SPOUSE_NAME_A 0x3a48001e PR_COMPUTER_NETWORK_NAME 0x3a49001e PR_COMPUTER_NETWORK_NAME_W 0x3a49001f PR_COMPUTER_NETWORK_NAME_A 0x3a49001e PR_CUSTOMER_ID 0x3a4a001e PR_CUSTOMER_ID_W 0x3a4a001f PR_CUSTOMER_ID_A 0x3a4a001e PR_TTYTDD_PHONE_NUMBER 0x3a4b001e PR_TTYTDD_PHONE_NUMBER_W 0x3a4b001f PR_TTYTDD_PHONE_NUMBER_A 0x3a4b001e PR_FTP_SITE 0x3a4c001e PR_FTP_SITE_W 0x3a4c001f PR_FTP_SITE_A 0x3a4c001e PR_GENDER 0x3a4d0002 PR_MANAGER_NAME 0x3a4e001e PR_MANAGER_NAME_W 0x3a4e001f PR_MANAGER_NAME_A 0x3a4e001e Inventory Solution for Windows Reference 92 Appendix A: Exchange Directory Values PR_NICKNAME 0x3a4f001e PR_NICKNAME_W 0x3a4f001f PR_NICKNAME_A 0x3a4f001e PR_PERSONAL_HOME_PAGE 0x3a50001e PR_PERSONAL_HOME_PAGE_W 0x3a50001f PR_PERSONAL_HOME_PAGE_A 0x3a50001e PR_BUSINESS_HOME_PAGE 0x3a51001e PR_BUSINESS_HOME_PAGE_W 0x3a51001f PR_BUSINESS_HOME_PAGE_A 0x3a51001e PR_CONTACT_VERSION 0x3a520048 PR_CONTACT_ENTRYIDS 0x3a531102 PR_CONTACT_ADDRTYPES 0x3a54101e PR_CONTACT_ADDRTYPES_W 0x3a54101f PR_CONTACT_ADDRTYPES_A 0x3a54101e PR_CONTACT_DEFAULT_ADDRESS_INDEX 0x3a550003 PR_CONTACT_EMAIL_ADDRESSES 0x3a56101e PR_CONTACT_EMAIL_ADDRESSES_W 0x3a56101f PR_CONTACT_EMAIL_ADDRESSES_A 0x3a56101e PR_COMPANY_MAIN_PHONE_NUMBER 0x3a57001e PR_COMPANY_MAIN_PHONE_NUMBER_W 0x3a57001f PR_COMPANY_MAIN_PHONE_NUMBER_A 0x3a57001e PR_CHILDRENS_NAMES 0x3a58101e PR_CHILDRENS_NAMES_W 0x3a58101f PR_CHILDRENS_NAMES_A 0x3a58101e PR_HOME_ADDRESS_CITY 0x3a59001e PR_HOME_ADDRESS_CITY_W 0x3a59001f PR_HOME_ADDRESS_CITY_A 0x3a59001e PR_HOME_ADDRESS_COUNTRY 0x3a5a001e PR_HOME_ADDRESS_COUNTRY_W 0x3a5a001f PR_HOME_ADDRESS_COUNTRY_A 0x3a5a001e PR_HOME_ADDRESS_POSTAL_CODE 0x3a5b001e PR_HOME_ADDRESS_POSTAL_CODE_W 0x3a5b001f PR_HOME_ADDRESS_POSTAL_CODE_A 0x3a5b001e PR_HOME_ADDRESS_STATE_OR_PROVINCE 0x3a5c001e PR_HOME_ADDRESS_STATE_OR_PROVINCE_W 0x3a5c001f PR_HOME_ADDRESS_STATE_OR_PROVINCE_A 0x3a5c001e PR_HOME_ADDRESS_STREET 0x3a5d001e PR_HOME_ADDRESS_STREET_W 0x3a5d001f PR_HOME_ADDRESS_STREET_A 0x3a5d001e PR_HOME_ADDRESS_POST_OFFICE_BOX 0x3a5e001e PR_HOME_ADDRESS_POST_OFFICE_BOX_W 0x3a5e001f PR_HOME_ADDRESS_POST_OFFICE_BOX_A 0x3a5e001e Inventory Solution for Windows Reference 93 Appendix A: Exchange Directory Values PR_OTHER_ADDRESS_CITY 0x3a5f001e PR_OTHER_ADDRESS_CITY_W 0x3a5f001f PR_OTHER_ADDRESS_CITY_A 0x3a5f001e PR_OTHER_ADDRESS_COUNTRY 0x3a60001e PR_OTHER_ADDRESS_COUNTRY_W 0x3a60001f PR_OTHER_ADDRESS_COUNTRY_A 0x3a60001e PR_OTHER_ADDRESS_POSTAL_CODE 0x3a61001e PR_OTHER_ADDRESS_POSTAL_CODE_W 0x3a61001f PR_OTHER_ADDRESS_POSTAL_CODE_A 0x3a61001e PR_OTHER_ADDRESS_STATE_OR_PROVINCE 0x3a62001e PR_OTHER_ADDRESS_STATE_OR_PROVINCE_W 0x3a62001f PR_OTHER_ADDRESS_STATE_OR_PROVINCE_A 0x3a62001e PR_OTHER_ADDRESS_STREET 0x3a63001e PR_OTHER_ADDRESS_STREET_W 0x3a63001f PR_OTHER_ADDRESS_STREET_A 0x3a63001e PR_OTHER_ADDRESS_POST_OFFICE_BOX 0x3a64001e PR_OTHER_ADDRESS_POST_OFFICE_BOX_W 0x3a64001f PR_OTHER_ADDRESS_POST_OFFICE_BOX_A 0x3a64001e Inventory Solution for Windows Reference 94 Appendix B: Program Command Line Arguments This appendix is a quick reference of the programs found in the Altiris Inventory Solution Reference. These programs are: • “AeXAuditpls Executable” on page 95 • “AeXCustInv Executable” on page 96 • “AeXExchPls Executable” on page 97 • “AeXInvSoln Executable” on page 98 • “AeXMachInv Executable” on page 99 • “AeXNSInvCollector Executable” on page 99 • “AeXRunControl Executable” on page 101 • “AeXSNPlus Executable” on page 102 AeXAuditpls Executable For more information on the Audit agent, see “Input for the Software Audit Agent” on page 50. AeXAuditpls [/?] [/ini filename] [/hidden] [/file] [/dd] [/output format] [/o path] AeXAuditpls Parameters Parameter Description ? Shows a usage dialog. ini filename If this argument is set, Audit uses the user-supplied file, filename, as the Audit INI file rather than the default file. The default file name is auditpls.ini and is found in the same directory as AeXAuditpls. The filename may be relative or absolute. • If the /ini argument is used without a file name, Audit will not run. • If execution was attempted in hidden mode (see /hidden argument), the program exits without notification. • If execution is in the default non-hidden mode, an error dialog is displayed indicating an INI file name error. hidden Makes the progress dialog invisible. End users will not be able to cancel the scan unless they kill the process with Task Manager. This is the argument that is usually used when running the agent as it ensures that it will run on the computer without the user canceling the scan. Inventory Solution for Windows Reference 95 Appendix B: Program Command Line Arguments AeXAuditpls Parameters Parameter Description file Audits individual files rather than packages. Auditing in package mode is the default. There is no explicit packages argument. • In the Package mode, only one file from each package will be added to the output. This is the first instance of a file with a unique manufacturer, product name, language, and (optionally) version. • In the File mode, each file will be added to the output, even if other files for the same product name and version have already been reported. Generally the Package mode should be used as this results in a much smaller output file being created. File mode is used for gathering version resource information for all the files on the computer. dd Delayed dismiss. This only works in non-hidden mode and causes a message box to be opened at the end of the run. The user has an indefinite period to examine data. Without the /dd argument, the user has 4 seconds after the beep (after the run) to examine data, then the window automatically closes. output format The possible values are XML, MIF, or both. These settings override settings defined in the auditpls.ini file. XML output data is used for real time viewing of the results. XML format is also used to load the data into Notification Server. MIF output is used by SMS. An SMS client must be configured on the computer for MIF output to be generated. o path The directory where XML output data should be generated. This setting is ignored if the output is configured for MIF only. This takes precedence over the setting in the auditpls.ini file. AeXCustInv Executable For more information on the Custom Inventory agent, see “Custom Inventory Agent” on page 69. AeXCustInv [/?] [/d VariableName=VariableValue] [/debug] [/delfile] [/sfdir] [/sfmsecs milliseconds] [/o NSI File Full Path] [/out NSI File Name] [/in in File Path] [/indir directory] AeXCustInv Parameters Parameter Description ? Shows a usage dialog. d VariableName=VariableValue User defined variable. This parameter lets you specify the value of a variable defined within the input file. For example, if you created an input file that had a variable defined within it called %MyVar%, you could specify a value for %MyVar% by assigning MyVar a value on the command line: AeXCustInv.exe /d MyVar=Altiris Note: Do not specify the ‘%’ symbols on the command line variable name. When this parameter is used, AeXCustInv will resolve all occurrences of %MyVar% within the input file to the variable value specified on the command line. Example: Before: manufacturer='%MyVar%' After: manufacturer='Altiris' Inventory Solution for Windows Reference 96 Appendix B: Program Command Line Arguments AeXCustInv Parameters Parameter Description debug Runs AeXCustInv in DEBUG mode. This option displays detailed debugging information and reports it as AeXCustInv is running. If any errors occur during the AeXCustInv run, a message box will appear detailing the error, along with the filename and line number where the error occurred. The error will also be written to the error log. delfile Deletes the input file when finished processing. This instructs AeXCustInv to delete the input file after it has been successfully processed. If the input file is not successfully processed it will not be deleted. sfdir Startfile directory. This designates the name of the directory to write the results of a STARTFILE statement block from the input. The STARTFILE block represents a block of input beginning with <%startfile and ending with <%endfile%>. All input between these keywords will be written to a separate file to this directory. The default is the normal inventory output directory. sfmsecs milliseconds Startfile delay milliseconds. This is the number of milliseconds to delay before writing the file containing the STARTFILE block. o NSI File Full Path The optional parameter specifying the full path to the input and output XML files. If this parameter is not specified, the directory where the utility is located is used. out NSI File Name The optional parameter for specifying the output XML file name. If this parameter is not specified, a default file name is used. in in File Path The optional parameter specifying the input XML file name. If this parameter is not specified, a default file name is used. indir directory Specifies the “container” directory where multiple input XML files are located based on the current executable platform (9x, NT, etc.). When used, AeXCustInv will determine the current platform, then scan a specific subdirectory of the parent for all XML files and process them. directory is a parent directory containing one or more subdirectories of a specific name: • “Win9x” • “WinNT” • “Win2K” • “WinXP” Example: 1. You are running AeXCustInv on Win2K and have a number of XML files to be processed: file1.xml, file2.xml and file3.xml. 2. You place these XML files in a directory called c:\CustInvFiles\Win2K. 3. You run AeXCustInv with the following command line: AeXCustInv /indir c:\CustInvFiles 4. AeXCustInv determines that it is running on Win2K. It then processes all files in c:\CustInvFiles\Win2K\*.xml. 5. The output goes to the standard inventory output directory as file1.nsi, file2.nsi, file3.nsi. AeXExchPls Executable For more information on the Exchange agent, see “Exchange Agent Administration” on page 83. AeXExchPls [/?] [/hidden] [/dd] [/log] [/output format] [/o path] Inventory Solution for Windows Reference 97 Appendix B: Program Command Line Arguments AeXExchPls Parameters Parameter Description ? Shows a usage dialog. hidden If this argument is set, Exchange agent makes the progress dialog invisible. End users will not be able to cancel the scan unless they kill the process with Task Manager. This is the argument that is usually used when running the agent as it ensures that it will run on the computer without the user canceling the scan. dd If this argument is set, there is a delayed dismiss. This only works in non-hidden mode, and causes a message box to be opened at the end of the run so that the user has an indefinite period to examine data. Without the /dd argument, the user has 4 seconds after the beep (after the run) to examine data, then the window automatically closes. log If this argument is set, Exchange agent generates a trace log for any errors encountered in the current executable directory that can be used for troubleshooting and support purposes. This log file is placed in the Notification Server\Logs directory. output format The possible values are XML, MIF, or both. These settings override settings defined in the AeXExchPls.ini file. XML output data is used for real time viewing of the results. XML format is also used to load the data into Notification Server. MIF output is used by SMS. An SMS client must be configured on the computer for MIF output to be generated. o path The directory where XML output data should be generated. This setting is ignored if the output is configured for MIF only. By default, the AeXExchPls.nsi file is created in the TEMP directory on the local computer. AeXInvSoln Executable For more information on AeXInvSoln, see “Running Inventory Solution without the Altiris Agent” on page 21. AeXInvSoln [/?] [/s Configuration File] [/o Output Path] [Flags] AeXInvSoln Parameters Parameter Description ? Shows a usage dialog. s Configuration File The batch commands or INI file path. Note: These files can include # or REM to signify a commented line. For example: #This is a commented line REM So is this AeXMachInv.exe REM The above will run Inventory Solution for Windows Reference 98 Appendix B: Program Command Line Arguments AeXInvSoln Parameters Parameter Description o Output Path If this switch is used, the following happens: - the output path is created (if it does not exist) for the other agents to use - if the /cleanbeforerun or /cleanafterrun flags are included, then the output path is created. If the output path already exists and has files in it, those files are deleted. The other agents can then use this directory. Flags Additional runtime parameters: • /hidden - run in silent mode. No prompting on errors or completion. Runs invisible to the end user. • /prompt - Dialog remains open after completion. • /forcenoprompt - Closes after completion (regardless of errors). If this is not used, the window will stay open if there are errors, and close if there are no errors. • /cleanbeforerun - Cleans the install path\Altiris\Inventory folder before running. This forces completely new NSI files to be reported because there is no previous history for AeXNSInvCollector.exe to compare against. • /cleanafterrun - Deletes all NSI files and removes the install path\Altiris\Inventory folder after running. • /nocancel - No cancel button access. The end user can view the window, but cannot close it. AeXMachInv Executable For more information on the Machine Inventory agent, see “Machine Inventory Agent” on page 86. AeXMachInv [/?] [/o NSI File Full Path] [/outfilename NSI File Name] [/ini ini File Path] [/inc] [/norbin] [/zfp] AeXMachInv Parameters Parameter Description ? Shows a usage dialog. o NSI File Full Path The NSI file output path. Specifies the directory to write the files to. If this argument also includes a file, then only a single file will be written to the output path. outfilename NSI File Name The name of the NSI file to be generated. Specifies a specific file to be written to, relative to the default output directory (hence no multi file output). If neither the /o or the /outfilename arguments are used, then AeXMachInv will generate multiple files in the default output directory. ini ini File Path The full path including filename of MachInv INI file. This is used to specify those groups included or excluded from the AexMachInv run. The default is to exclude named groups but see the /inc parameter below. inc Include groups named in the MachInv INI file and exclude all others. The default is to exclude. norbin Will not include the recycle bin when scanning the hard drive for disk space used. zfp Zero footprint mode. No registry entries will be created by this run. These registry entries track IP, disk, and memory changes. AeXNSInvCollector Executable For more information on Inventory Collector, see “Customizing Data Reported by Inventory Solution” on page 27. Inventory Solution for Windows Reference 99 Appendix B: Program Command Line Arguments AeXNSInvCollector [/?] [/s SourceDir] { [/o DestDir] [/NSCTRANSPORT] [/v Server] [/url “URL”] [/mapi “Recipient”] [/mapiprofile “Profile”] [/mapiprompt] } [/a Alias] [/floppy FloppyDir] [/UseGUID] [/interval seconds] [/outGuid GUID] [/retry times] [Flags] AeXNSInvCollector Parameters Parameter Description ? Shows a usage dialog. s SourceDir The source directory for the inventory files. The default is Program Files\Altiris\express\Inventory. o DestDir The destination directory for the NSE file. The default is Program Files\Altiris\express\Outbox. NSCTRANSPORT Specifies that the Client Transport is used to relay inventory events to the server specified by the /v argument. v Server Specifies the Server name of the destination directory for the Notification Server remote event file. url “URL” Specifies the URL for the NS remote event file to be posted to. The URL must be doublequoted. If Inventory Collector cannot resolve the URL “http://ServerName.altiris.com/Altiris/NS/ postevent.asp”, it backs off to “http://ServerName/Altiris/NS/postevent.asp”, where ServerName is the name of the Notification Server. The /interval argument lets you tell how long to wait if loading postevent.asp fails. The /retry argument lets you tell how many times to retry if loading postevent.asp fails. mapi “Recipient” Specifies the recipient that the NSE attachment will be sent to using MAPI. The recipient must put the NSE attachment into the Event Outbox in order to use it. Example: aexnsinvcollector /mapi “[email protected]” mapiprofile “Profile” Specifies the profile used to send the NSE attachment using MAPI. This is useful if all users use the same profile name. Example: aexnsinvcollector /mapiprofile “MS Exchange Settings” mapiprompt If the user is not logged onto e-mail, and the /mapi or /mapiprofile arguments are used, /mapiprompt allows the e-mail logon prompt screen to appear. This is only needed if the e-mail program does not log on automatically. If /mapiprompt is not used with /mapi or /mapiprofile and the e-mail program does not log on automatically, /mapi and /mapiprofile will not be able to send the NSE attachment. a Alias The alias for the scenario. The default is “AltirisWin32Inventory”. floppy FloppyDir The destination directory of the Notification Server remote event file in Floppy-mode. The default is A:\. UseGUID If set, the machine GUID is sent up as the machine identifier. If there is no machine GUID available, the machine identity (name and domain) is sent up. If this parameter is not used, the machine identity gets sent up as the machine identifier instead of the machine GUID. Inventory Solution for Windows Reference 100 Appendix B: Program Command Line Arguments AeXNSInvCollector Parameters Parameter Description interval seconds This affects the URL argument (postevent.asp). The URL argument tries loading postevent.asp. If it fails, it retries in seconds. The default is 1. /outGuid GUID This causes a GUID to be generated which is used as the name of the NSE. This argument was created because the NSE names on one computer could not be guaranteed to be unique from NSE names generated on other computers. NSE names are unique in the directory they are created in on a particular computer. However, in large environments, these NSE names can be duplicated. /retry times This affects the URL argument (postevent.asp). The URL argument tries loading postevent.asp. If it fails, it retries this many times. The default is 3. Flags Additional runtime parameters: • /hidden - run in silent mode. No prompting on errors or completion. • /noprompt - closes after completion (if no errors). • /forcenoprompt - closes after completion (regardless of errors). • /nocheck - processes all files, regardless of whether they have changed since the last run. • /zfp - zero footprint mode. Example: AeXNSInvCollector /url “http://myserver/Altiris/NS/postevent.asp” /hidden /zfp AeXRunControl Executable AeXRunControl supports two modes of operation. The first is used to specify an interval to run CommandLine and to maintain it. The second mode is used to generate a random day to execute AeXRunControl. If you want to only have a program execute once a month or once a week, then AeXRunControl can be used to randomly generate this day. The first time AeXRunControl is used in Mode 2, it will generate a day of the Week or Month from the interval given at the command line (RangeMin and RangeMax). Every consequent execution of AexRunControl will check to see if the mode (WEEKLY/MONTHLY) or range has changed. If not, it will only execute CommandLine if the last execution was before the scheduled time, and the current time is after the scheduled time. Should any of the command line arguments to AeXRunControl change, a new scheduled day will be generated. Usage: Mode 1 AeXRunControl [Key] [Number of Hours] [CommandLine] [ [/useHKCU]|[/d:#min-#max] ] Mode 2 AeXRunControl [/rndschedule] [Key] [CommandLine] [WEEKLY|MONTHLY] [RangeMin] [RangeMax] [ Inventory Solution for Windows Reference 101 Appendix B: Program Command Line Arguments [/useHKCU]|[/d:#min-#max]|[/now] ] AeXRunControl Parameters Parameter Description Key ID Name for the command you are controlling and is used as a registry key to store when it was last run (for example: “Inventory Solution”). Number of Hours Number of hours between running (for example: 48 = 2 days). CommandLine The command to execute (for example: “\\NS\nscap\bin\win32\x86\AeXInvSoln.exe”). The CommandLine argument must be surrounded by parentheses if you pass parameters. WEEKLY|MONTHLY The string WEEKLY or MONTHLY to denote the time period of the schedule. (This is not case sensitive – “weekly” or “Weekly” are valid). RangeMin and RangeMax The lower and upper bounds for the randomly generated day of the week/month (restricted to 1-7 and 1-31 respectively). Weekdays are: 1 = Sunday, 2 = Monday, etc. useHKCU Normally, the registry entries are written to HKey Local Machine (HKLM), but the user may not have Admin rights to write to this location. In this case, this argument will cause it to be written to HKey Current User (HKCU). d:#min-#max This argument will generate a delay each time the CommandLine program is run. When this argument is used, AeXRunControl will wait for a time between #min and #max (the delay is in seconds) before actually executing the CommandLine. rndschedule Signifies the use of the format (Mode 2) that supports the randomized schedule. now If this is the first time that the CommandLine program is run, this argument will cause the program to execute, as well as generate a scheduled day for it to execute next time. Normally, the first time AeXRunControl is used, it will generate the scheduled day, and only run if the current day is on or after that day. The now argument can only be used with the rndschedule argument. AeXSNPlus Executable For more information on the Serial Number agent, see “Serial Number Agent Administration” on page 85. AeXSNPlus [/?] [/AllowChars ccc] [/visible] [/dd] [/datapath path] [/output format] [/o path] [/ini filename] [/ChkModel] [/ToSecs x] [/AToSecs x] [/DelaySeconds x] [/ForceSN field] [/ErrPath path] [/InfPath path] [/MIFPath path] [/CENames] [/LogPath path] [/NoSNData16] [/NoWbem] [/NoWebmifSNFound] Inventory Solution for Windows Reference 102 Appendix B: Program Command Line Arguments AeXSNPlus Parameters Parameter Description ? Shows a usage dialog. AllowChars ccc A serial number will typically include only letters, numbers, space, or dash. All other characters are ignored. By specifying characters represented by ccc, you can include support for additional characters. Example: /AllowChars +, will cause AexSNPlus to also consider '+' and ',' as valid characters. visible Shows the status during execution. dd Delayed dismiss. This only works in non-hidden mode and causes a message box to be opened at the end of the run. The user has an indefinite period to examine data. Without the /dd argument, the user has 4 seconds after the beep (after the run) to examine data, then the window automatically closes. datapath path The directory for the Serial Number agent to place all SNPlus and SNData output. This excludes XML and MIF output. Use /O for XML output. output format The possible values are XML, MIF, or both. XML output data is used for real time viewing of the results. XML format is also used to load the data into Notification Server. MIF output is used by SMS. An SMS client must be configured on the computer for MIF output to be generated. o path If this argument is set, the Serial Number agent places the output XML in path. ini filename This contains the full path and filename of the INI file for the Serial Number agent to use. ChkModel If this argument is set, the Serial Number agent inspects and replaces a bad computer model with a good computer model and vice versa. ToSecs x If this argument is set, <x> contains the number of seconds to allow each internal SNData.exe to run. The default is 5. This excludes the last run. Use /AToSecs x to apply to the last run as well. Note: The minimum value for this argument is 5. Any number under 5 is ignored. AToSecs x If this argument is set, x contains the number of seconds to allow each internal SNData.exe to run, including the last run. The default is 5. Note: The minimum value for this argument is 5. Any number under 5 is ignored. DelaySeconds x If this argument is set, x contains the number of seconds after computer startup to wait before executing. The default is 300 seconds (5 minutes). ForceSN field If this argument is set, field is the alternate computer field to use as the serial number, regardless of the presence of other fields. The allowable values are asset, baseboard, and enclosure. The field will still be validated. ErrPath path If this argument is set, path is the directory for the Serial Number agent to write diagnostic files when the serial number is not detected. This can contain a relative path specifier. InfPath path If this argument is set, path is the directory for the Serial Number agent to write diagnostic files regardless of whether or not there was an error. This can contain a relative path specifier. MIFPath path If this argument is set, path is the directory for the Serial Number agent to write a copy of the MIF file produced. This can contain a relative path specifier. NoSNData16 The argument tells AexSNPlus to not run its 16 bit version if the 32 bit version fails while gathering serial number information. NoWbem Instructs AexSNPlus not to execute its internal Wbem client as part of its serial number retrieval process. This option is used for those rare cases where the execution of the Wbem client crashes on the computer. NoWebmifSNFound Will not launch the Wbem client program if AexSNPlus was able to successfully obtain a valid serial number. Inventory Solution for Windows Reference 103 Appendix B: Program Command Line Arguments AeXSNPlus Parameters Parameter Description CENames Results in AeXSNPlus writing its output MIFs using the same old group NAME and CLASS names that were in place prior to release 5.1. This way, existing AeXSNPlus customers can continue to run the program with no SMS table name changes and no loss of history. If you are upgrading from a previous version of AeXSNPlus, and you don’t use the CENames argument, the names will change in the following manner: the references to “CE . . .” will be replaced with “AeX . . .” and “ComputingEdge . . .” will be replaced with “Altiris . . ..” For Example: OLD: Name=“CE HW Memory Modules” Class= “ComputingEdge|MemMod|2.0” NEW: Name=“AeX HW Memory Modules” Class= “Altiris|MemMod|2.0” SMS will drop the old table names and thus the history associated with these tables. If you are upgrading and don’t want to lose this information, use the CENames argument. LogPath path Lets you specify an override to the output path used for logging (default is c:\). AeXSNPlus checks the target directory before writing the log file (snplus.log). If it is unavailable, it tries using the TMP directory. If that is unavailable, no logging occurs. Inventory Solution for Windows Reference 104 Appendix C: Inventory Solution Data Reference The following table displays a list of inventory tables that are found in the Notification Server database. Table Name Description AeX AC Client Agent Provides information about any Altiris Agents installed on the target computer. AeX AC Client Connectivity Provides information about Altiris Agent connectivity. AeX AC Identification Provides summary level inventory information about the target computer (OS, User info, etc). AeX AC Inventory Results Contains information about the last inventory scan. AeX AC Location Contains Domain distinguished name information. AeX AC Machine Usage Contains computer usage information. AeX AC NT Services Contains information on NT services installed on the target computer. AeX AC Primary User Contains information about the Primary User of a target computer for a given interval. AeX AC Resource Inventory Summary Contains summary information on resource inventory. AeX AC Roles Determines role of target computer based on installed software and services. AeX AC SMS Client Properties Contains information regarding SMS Client settings. AeX AC TCPIP Contains detailed TCPIP information, settings, and configuration data for target computers. AeX DB ODBC Drivers Contains ODBC driver information. AeX DB MDAC Contains MDAC information. AeX DB SQL Server Contains SQL server information. AeX AX Discovery Contains discovery information. AeX EU Contact Detail Contains location and contact information for Exchange User accounts discovered on the target computer. AeX EU Logon Users Contains information regarding logon user activity on target computers. AeX EU Mail Profiles Contains the installed e-mail profiles for target computers. AeX EU Results Contains information regarding the last user inventory scan. AeX HW ActiveTcpUdpPorts Contains information on active TCP and UDP ports. AeX HW BIOS Contains BIOS details for target computers. AeX HW CPU Contains CPU information for target computers. Inventory Solution for Windows Reference 105 Appendix C: Inventory Solution Data Reference AeX HW Disk Space Usage Contains information on how much space TMP and recycle bin files are consuming on the target computer. AeX HW Logical Disk Contains information about the logical drive partitions on the target computer. AeX HW Logical Disk Changes Tracks changes to the logical drive partitions on the target computer. AeX HW Memory Contains total physical memory and page file size on the target computer. AeX HW Memory Changes Tracks changes to the total physical memory and page file on the target computer. AeX HW Memory Modules Contains information about installed RAM modules on the target computer. AeX HW Modems Contains information on installed modems on the target computer. AeX HW Monitor Contains information on the monitor(s) attached to the target computer. AeX HW Mouse Contains information about installed mouse devices on the target computer AeX HW Network Cards Contains information regarding installed network adapters on the target computer. AeX HW PCI Bus Contains information regarding devices using the PCI bus on the target computer. AeX HW PCMCIA Devices Contains information on installed PCMCIA devices on the target computer. AeX HW Physical Disk Contains information on installed physical disk drives on the target computer (NT/2000/XP). AeX HW Printer Contains information on installed printers on the target computer, network and local. AeX HW SCSI Contains information on installed SCSI devices on the target computer. AeX HW Serial Number Contains serial number, manufacturer, and asset tag information for the target computer. AeX HW SMBIOS Contains information about SMBIOS and DMI abilities on the target computer. AeX HW Video Contains information on installed video adapters and drivers on the target computer. AeX HW Video Monitor Contains information on installed display devices on the target computer. AeX OS ACLs Contains Access Control List information on the target computer. AeX OS Add Remove Programs Contains information on software packages registered by the Windows installer on the target computer. AeX OS Admin Group Contains information on membership in the local admin group for the target computer. AeX OS AT Scheduler Contains information on the AT command list. AeX OS Audit Policy Contains information on the audit settings on the target computer. AeX OS Desktop Contains information about the target computer Desktop settings. AeX OS IIS Contains information on target computers which have IIS installed. AeX OS Internet Explorer Contains IE configuration and version settings for the target computer. AeX OS Memory Management Contains information and settings for paging files for the target computer. AeX OS Network Provider Contains information on installed network providers on the target computer. Inventory Solution for Windows Reference 106 Appendix C: Inventory Solution Data Reference AeX OS Network Shares Contains information on shared directories/files on the target computer. AeX OS Operating System Contains version and installation information for the OS on the target computer. AeX OS Provider Order Contains information on the order for installed network providers on the target computer. AeX OS Quick Fix Engineering Contains information on installed OS updates for Win 9x computers with WMI installed. AeX OS RAS Server Contains configuration information for target computers hosting RAS services. AeX OS Results Contains information on installed script hosting engines on the target computer. AeX OS System Contains basic Domain and User information for current logged on user when inventory was performed on the target computer. AeX OS System Devices Contains information on installed system devices that appear in Device Manager on the target computer. AeX OS Task Scheduler Contains information on tasks scheduled via the Windows Task Scheduler on the target computer. AeX OS TCPIP Changes Tracks changes to TCPIP information on the target computer. AeX OS Time Zone Contains information on the Time Zone settings on the target computer. AeX OS Updates Contains information on installed OS updates on the target computer (NT/2000/XP). AeX OS User Profiles Contains information about installed local accounts on the target computer. AeX OS Win16 Subsystem Contains information on the Win16 subsystem configuration on the target computer. AeX OS Windows 9x Contains OS installation information specific to Windows 9x computers. AeX OS Windows NT Contains OS information and settings specific to Windows NT/2000/XP computers. AeX SW Audit Results Contains summary information on the last software inventory performed on the target computer. AeX SW Audit Software Contains detailed file information for installed applications on the target computer. AeX SW [Special Group] Contains file details based on a special group definition. AeX USB Bus Contains USB bus information. AeX VirtualMachine Contains virtual machine information. Inventory Solution for Windows Reference 107 Index A Advanced tab 57 advertisement creating 40 status 41 AeXAuditpls 19, 25, 27, 95, 96, 97, 98, 99, 101, 102 AeXCustInv 19, 69, 96 AeXExchPls 97 AeXExchpls 25, 27 AeXInvSoln 98 AeXInvSoln.exe 27 AeXInvSoln.ini 42 AeXMachInv 19, 27, 99 AeXNSInvCollector 19, 25, 27, 99 aexnsinvcollector 28 AeXRunControl 101 AeXSNPlus 19, 25, 27, 102 AeXWebInvPkg.exe 30 agent 27 Agent deployment 35 Altiris Agent 20 deployment 35 Application Management 59 Audit agent 49 benefits 49 configuration 50, 54 customization 50 files 51 finding one file 67 how it works 52 input 50 logon scripts 51 removing data from SMS 41 scanning for data 66 troubleshooting 66 using with login script 66 auditpls.ini 50 B Baseline 59 BIOS 8 C checking package status 40 clean after run mode 23 clean before run mode 23 collecting data through SMS 36 collection verifying target 40 command line argument 25 comparing files 24 compatibility operating systems 11 SMS 9 configuration editor 56 copyright 2 creation date of document 2 D data customizing 27 posting 29 data class create for special group 65 data collection through SMS 36 data flow 46 data output format 25 data reference 105 deploying a package 39 deployment 9 Directories tab 58 document print date 2 E e-mail 29, 34 using to run Inventory Solution 23 e-mail attachment 44 e-mail distribution 19 Exchange agent 82 administration 83 configuration 82 data reported to SMS 82 how it works 82 troubleshooting 84 Exclusion Filters Tab 59 F file required 36 searching for 55 file access from network 34 file compare 24 File Masks Tab 61 floppy disk creating 34 floppy disk based Inventory Solution 8, 34 format of data output 25 frequency of scan 35 Inventory Solution for Windows Reference H HTTP posting 44 I input command line argument 25 integrating with SMS 9 introduction 7 inventory 105 Inventory Collector 28 inventory posting 35 inventory results 26 inventory scan 35 Inventory Solution agent 27 data flow 46 running 19 running from e-mail 23 running from Web page 23 with Altiris Agent 20 inventory table reference 105 K Known As Tab 61 L legal notice 2 log 45 logon script 21 logon script agent deployment 35 M managing patches 29 Manufacturer Known As Tab 62 MIF output 36 N NetWare 14, 28, 34 network file access 34 NOIDMIF directory 84, 85 NOIDMIFS folder 25 notice 2 Notification Server Event file 27 NSE file 27 NSI file 24 O OS updates 29 output command line argument 25 output data format 25 Overrides Tab 62 108 Index overview 7 P package creation for SMS 37 package definition file 36 package deployment 39 package status checking 40 patches managing 29 patent 2 PC serial number 8 PDF 36 port 44 posting data 29 posting inventory data 35 product version 2 R removing Audit agent data 41 report 29 reporting customizing data 27 required files 36 running Inventory Solution 19 S scan frequency 35 searching for files 55 security 25 serial number 8 Serial Number agent 85 administration 85 troubleshooting 85 SMS collection of data 36 compatibility 9 integration 9 package creation 37 Software Audit agent 49 Special Groups tab 63 status of advertisement 41 status of package 40 T target collection 40 timeout 45 trademark 2 U UNIX 14, 28, 30, 34 updates 29 using a floppy disk 34 V version 2 W web inventory package 14, 30 Web page 23 Win32 API 27 Z zero footprint mode 19, 34 Inventory Solution for Windows Reference 109