Hightower Posted November 28, 2011 Posted November 28, 2011 Hey, I installed SCCM and pushed the client out and it installed on all machines. But the install had a problem so I went through again with a new SCCM install. Now when trying to push the client out, nothing happens. The console reports that the client is installed, but I have a seperate collection that only populates with 'v0 or higher' of the client, and this only lists 33 computers. I know I'm not explaining this very well, so I've attached a screenshot to help further explain. It shows: 1) 300 clients listed in the all systems. Most of these have the client installed according to this screen, only machines that haven't been on lately don't 2) Only 33 clients are in the collection I made specially for only machines that have the client 3) The query for the custom collection - this is the query as demoed on CBT Nuggets video, and it properly worked on my first SCCM install. I've tried the normal methods of refreshing the screen. Anybody got any ideas?
Hightower Posted November 28, 2011 Author Posted November 28, 2011 As an update, I've just tried pushing out the client through the GPO method which was successful but still these do not show up in the custom container.
Hightower Posted November 29, 2011 Author Posted November 29, 2011 Okaaaaay. Seems that the clients already believe they've sent the latest information to the server, probably because the old SCCM and new SCCM have the same computer name and site code. What is working is running a forced hardware inventory. It's telling the client "I don't care what you have already given me, I want it again" - this then seems to resync things. However, the problem lies in that I have ~300 to force a hardware inventory, and the only method I can find to do it with is this script: 'Reset SMS Hardware Inventory Action to force a full HW Inventory Action sInventoryActionID = "{00000000-0000-0000-0000-000000000001}" ' Get a connection to the "root\ccm\invagt" namespace (where the Inventory agent lives) Dim oLocator Set oLocator = CreateObject("WbemScripting.SWbemLocator") Dim oServices Set oServices = oLocator.ConnectServer( , "root\ccm\invagt") ' Delete the specified InventoryActionStatus instance oServices.Delete "InventoryActionStatus.InventoryActionID=""" & sInventoryActionID & """" 'Pause 3 seconds to allow the action to complete. wscript.sleep 3000 '###################################### 'Run a SMS Hardware Inventory 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 This script works fine as a local admin user, or a network admin user, but when allocating it to all machines via GPO I get a permission denied error on this line: action.PerformAction So, it may be that this script needs tweaking, it may be that this script won't work and I need to find another method, but can somebody please help?!
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now