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