'Following is a sample custom inventory sript gathering information from a WMI Query '=================================================================================================================== ' On Error Resume Next 'Create instance of Wbem service object, connect to namespace and run wmi query strComputer = "." Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2") Set objCIMObj = objWMIService.ExecQuery("SELECT * FROM AltirisAgent_Package") '=================================================================================================================== 'Create instance of Altiris NSE component dim nse set nse = WScript.CreateObject ("Altiris.AeXNSEvent") ' Set the header data of the NSE ' Please don't modify this GUID nse.To = "{1592B913-72F3-4C36-91D2-D4EDA21D2F96}" nse.Priority = 1 'Create Inventory data block. Here assumption is that the data class with below guid is already configured on server dim objDCInstance set objDCInstance = nse.AddDataClass ("Altiris Agent Package2") dim objDataClass set objDataClass = nse.AddDataBlock (objDCInstance) For each objInfo in objCIMObj 'Add a new row dim objDataRow set objDataRow = objDataClass.AddRow 'Set columns objDataRow.SetField 0, objInfo.PackageID objDataRow.SetField 1, objInfo.Name objDataRow.SetField 2, objInfo.CacheFolder objDataRow.SetField 3, CStr(objInfo.PackageSize) objDataRow.SetField 4, objInfo.ContainsFiles strTasks = Join(objInfo.Tasks, ",") objDataRow.SetField 5, strTasks objDataRow.SetField 6, objInfo.CleanupAfter objDataRow.SetField 7, objInfo.Status Next nse.SendQueued