Background:
While running some reports on server hardware I realized that some of the servers were missing the serial, manufacturer, and model information. Being that I needed this information for inventory forwarding and system model counts. After identifying the systems I realized that all of these systems were Windows 2008 64Bit. So I called Altiris and they acknowledged that this is a know issue and is not likely to be resolved until NS 7.0. Well I need this data in the reports today not months down the road.
The Problem:
The issue appears to be in the aexsnplus.exe uses 16bit code and the 16bit subsystem is removed from Windows 2008 64bit, so the aexsnplus.exe ends failing to run.
The Solution:
Since the information we’re looking is available in a couple WMI classes (Win32_ComputerSystem & Win32_BIOS), I figured I could easily create a built in custom inventory task to get the data, but the stars did not appear to align, and still I returned invalid data. Not letting this minor setback get in the way of inventory, I ended up creating a quick and dirty vbscript that would generate the NSI file. Then I created a new hardware inventory ini file replace the line:
aexsnplus.exe /output xml
With:
cscript getsn.vbs
After the new ini file was created, and the vbscript placed in the following directory:
\\YourNSserver\NSCap\Bin\Win32\X86\Inventory Solution
I created a new program in the Inventory Agent Package referencing my new ini file.
AeXInvSoln.exe /s AEXINVHWSN.ini
Then created a new Inventory Task for the new program targeting only the Windows 2008 64 bit systems and let her rip.
Outcome:
I now have my Serial Number, Model & Manufacturer available for all my Windows 2008 64bit systems. I have attached the vbscript and ini file used to make this possible.
W2K8_SN.zip (1.29 kb)
UPDATE:
Altiris has released a updated AeXSNPlus.exe that appears to resolve the issue. You can follow the instructions in the link below.
https://kb.altiris.com/display/1/kb/article.asp?aid=43427