System Info from Remote Windows PCs in a Domain
-
Saturday, December 29, 2012 1:22 AM
I am trying to get info on computers within a domain like physical memory, C: D: drive capacity/ free space, the state of several services, BIOS version and system up time output into one file along with machines that could not be accessed.
I can find a couple of scripts that can do some of these tasks like "Arposh PC Reporter" but I do not have the talent to put these all into one script that will import a file of computernames and export a file with the above info as well as the computers that were unreachable.
The registry key value "version" from HKEY_LOCAL_MACHINE\SOFTWARE\Program\Name
The statuses of 4 different services & the creation dates of a couple of files in D:\Folder\Run.exe.
Hardware/ BIOS inventory.
I have searched the internet to no avail and would appreciate being pointed in the right direction.
Cheers.
All Replies
-
Saturday, December 29, 2012 1:49 AMModerator
Have you searched the script gallery?
http://gallery.technet.microsoft.com/
Search on words like inventory, memory, "drive space", bios. You are unlikely to find the exact script that meets all of your requirements, but you should find the pieces needed for each element. If you are not comfortable with scripting, you have selected a complicated task for your first project. We can help with specific questions, but don't expect a turnkey solution.
Long ago I coded a VBScript program to inventory all computers in the domain and document several things in an Excel spreadsheet. The program is linked here:
http://www.rlmueller.net/Inventory.htm
Some of the information can be retrieved from AD, even if the machine is offline. Then the program pings each computer to see if it is available. If the computer is unavailable, this is documented in the spreadsheet. The program uses WMI to connect to each computer to retrieve more information. The possible error if the WMI connection fails is trapped and reported in the spreadsheet. You could expand on this program by using other WMI classes to retrieve more information. Many of these WMI classes are demonstrated in the Script Gallery. I saw several examples that inventory software installed, for example. There are also other examples of inventory programs.
Richard Mueller - MVP Directory Services
-
Saturday, December 29, 2012 1:49 AM
Sorry but did you look in the repository.
If you cannot find what you want you will likely have to learn how to write a script.
Happy New Year ¯\_(ツ)_/¯
-
Saturday, December 29, 2012 1:56 AM
Thank you for your reply, happy new year to you also!
I will be working over he new year as I have a tight deadline to meet.
-
Saturday, December 29, 2012 2:17 AM
Have you searched the script gallery?
Search on words like inventory, memory, "drive space", bios. You are unlikely to find the exact script that meets all of your requirements, but you should find the pieces needed for each element. If you are not comfortable with scripting, you have selected a complicated task for your first project. We can help with specific questions, but don't expect a turnkey solution.
Long ago I coded a VBScript program to inventory all computers in the domain and document several things in an Excel spreadsheet. The program is linked here:
Some of the information can be retrieved from AD, even if the machine is offline. Then the program pings each computer to see if it is available. If the computer is unavailable, this is documented in the spreadsheet. The program uses WMI to connect to each computer to retrieve more information. The possible error if the WMI connection fails is trapped and reported in the spreadsheet. You could expand on this program by using other WMI classes to retrieve more information. Many of these WMI classes are demonstrated in the Script Gallery. I saw several examples that inventory software installed, for example. There are also other examples of inventory programs.
Richard Mueller - MVP Directory Services
Thank you fr your response, yes I did search but could not find an exact match, as you rightly say, I guess I was hoping someone had already been down this road and had a ready made answer...
I am not yet familiar enough to splice and graft scripts.
-
Saturday, December 29, 2012 12:33 PM
Learning to 'borrow' scripts is one of the first things a scripter needs to learn. <grin> It is very, very rare to find a script that does exactly what you want. You need to learn to find something that does something similar to what you are looking for and play with it a while to make it do what you want. It may not look pretty or be efficient when you first start, but after a while it gets to the point where you want to write a script to anything you have to do more than once.tim
- Marked As Answer by Bill_StewartMicrosoft Community Contributor, Moderator Sunday, December 30, 2012 12:40 AM
-
Saturday, December 29, 2012 12:40 PMModerator
Plaigarism as a scripting technique is underrated.
"I'm stealing that." is high praise to a scripter.
[string](0..33|%{[char][int](46+("686552495351636652556262185355647068516270555358646562655775 0645570").substring(($_*2),2))})-replace " "
- Edited by mjolinorMicrosoft Community Contributor, Moderator Saturday, December 29, 2012 12:41 PM
-
Saturday, December 29, 2012 2:21 PM
haha obviously aiming too high with my first "mooch"
As I said in my original post "Arposh PC Reporter" comes pretty close but needs a lot of work to hit my target.
I will "borrow" this if there is nothing closer? :-)
-
Saturday, December 29, 2012 9:56 PMModerator
Hi,
Tim Cerling's response is right on target. It is very, very unlikely that someone has already written a feature-complete script that fulfills your exact design specifications. Hence, you will need to write the script yourself. You can use code samples and code from other scripts as building blocks to create a script that does exactly what you need. Here is the place to ask questions if you get stuck on specifics. Here is not the place to ask for others to design a complete script for you. There are two main reasons for this:
1. You won't learn how to do it yourself if others do it for you.
2. If additional features and/or changes are needed, this means another round of messages in the forum and more coding work for others, which essentially means others are doing free consulting work for you. This is not respectful of others' time.
If you build upon your own knowledge, you can extend your own script yourself and learn even more in the process. If you're doing this and you get stuck, then you can ask for help on the specifics.
Bill
-
Saturday, December 29, 2012 10:05 PM
Much appreciated, thank you for your time.
It's good to know the support is here should I need it in future.
Kind regards.

