So in my last two posts I was discussing how to build a script for forcing a SCCM client inventory and how to build a custom collection for them to deploy to.
There is still one more problem, as I stated in the first post, you need to run the script against the proper interpreter. As more and more people begin to adopt Windows 7 x64 into their environments this issue will become more and more prevalent. Fortunately there is a simple solution. Build in your package source directory multiple batch files that contain the following in them:
if exist %systemroot%\SysWOW64\cscript.exe goto 64
cscript "inventory.vbs /full"
exit
:64
%systemroot%\SysWOW64\cscript.exe "inventory.vbs /full"
exit
You will want to build one for each variant of the script you will be running. This also eliminates the need of creating double of every package>program and prevents you from having to do any advertisement restrictions, it will all be managed at run time. Modify lines 2 and 5 of your bat file for whatever you need to be run and you are all set.
Finally, one more note of interest.
When building your advertisement, make sure the data is being downloaded before execution (default setting). For good measure make sure it’s also enabled for unprotected distribution points under the advertisement schedule page.
As far as the command line is concerned it just needs to be:
batfilename.bat
That’s it for now.
Also, I plan on posting a guide for building a Powershell script you can schedule to pull AD information to a SQL database which you can leverage for quick information gathering. Until then, have a good one.
2 Comments
I wish I “got” these posts…love you!
It’s enough you read them and try 😉