SCCM 2012 - .vbs to force Hardware Inventory/Software Inventory on client

With SCCM 2012 there are 3 ways to force Hardware Inventory/software Inventory.

1) Create a Client Policy and deploy it to the client with the scheduled required

2) Create two .vbs like the following:

HARDWARE INVENTORY


hInventoryActionID = "{00000000-0000-0000-0000-000000000001}"
Set oLocator = CreateObject("WbemScripting.SWbemLocator")
Set oServices = oLocator.ConnectServer( , "root\ccm\invagt")
oServices.Delete "InventoryActionStatus.InventoryActionID=""" & hInventoryActionID & """"
wscript.sleep 3000
Set cpApplet = CreateObject("CPAPPLET.CPAppletMgr")
Set actions = cpApplet.GetClientActions
For Each action In actions
If Instr(action.Name,"Hardware Inventory") > 0 Then
action.PerformAction
End if
Next


For more information, refer to the following MSDN article: http://msdn.microsoft.com/en-us/library/cc144592.aspx

SOFTWARE INVENTORY

sInventoryActionID = "{00000000-0000-0000-0000-000000000002}"
Set oLocator = CreateObject("WbemScripting.SWbemLocator")
Set oServices = oLocator.ConnectServer( , "root\ccm\invagt")
oServices.Delete "InventoryActionStatus.InventoryActionID=""" & sInventoryActionID & """"
wscript.sleep 3000
Set cpApplet = CreateObject("CPAPPLET.CPAppletMgr")
Set actions = cpApplet.GetClientActions
For Each action In actions
If Instr(action.Name,"Software Inventory") > 0 Then
action.PerformAction
End if
Next



For more information, refer to the following MSDN article: http://msdn.microsoft.com/en-us/library/cc145432.aspx

3) use this tool where its possible to force/call HW/SW inventory from menu
http://sourceforge.net/projects/smsclictr/