In the first installment, we talked about the personal qualities that will help you get ahead in Windows Administration. In the second installment, we talked about the importance of being able to script (using DOS batch scripts, VBScript, and Powershell) because this enables you to be much more productive and automate more of your work. In this installment, we’re going to talk about some system administration and support tools that you should be familiar with. These tools will help you be a more effective problem solver, scripter, and application packager.
WMI Code Creator
This older Microsoft tool is a great resource for creating VBScript code that accesses Windows Management Instrumentation (WMI) objects. WMI can provide a wealth of information about the hardware and software on a PC. It can help control processes and services, identify installed patches, and more. WMI Code Creator has two great functions for VBScript writers: (1) It allows you to browse live WMI values on the PC you’re running it against, and (2) It provides sample VBScript code that provides the same values for any PC.
Because Microsoft is phasing VBScript out in favor of PowerShell, it can be a little hard to find this tool online. Unfortunately, for copyright reasons I can’t post it here.
For PowerShell scripting, the PowerShell Scriptomatic from Microsoft can make it much easier to write PowerShell scripts which use WMI information. Just as with the WMI Code Creator above, this tool generates PowerShell code to access WMI information.
Windows Sysinternals Tools
Years ago, a man named Mark Russinovich made quite a name for himself by creating a set of tools to help himself solve unusual and difficult Windows problems. The resulting “Sysinternals” tools became so popular and valuable that Microsoft itself brought them on board. If you support, troubleshoot, and administer Windows and haven’t worked with these tools you have been missing out. Mastery of the Sysinternals tools can make you a much more effective administrator and application packager.
What kinds of things can you do with the Sysinternals tools? Here are a few:
- Process Explorer: This tool provides far more detail than the Windows Task Manager, including which processes host other processes (e.g., you can see what is running under “svchost.exe”, which threads the process is running, what TCP/IP connections it makes, text strings inside the executable, where the executable is located, etc.
- Pslist: A command line tool that lists the processes currently running on the current PC or any PC the administrator can reach on the LAN.
- Autoruns: Shows all of the software that runs during startup. This can be helpful in finding and removing malware, or identifying resource-sapping software.
- Pskill: Kill a process running on the local or a remote PC from the command line.
- Handle: Shows all the files open on the computer and the processes which have them open.
The Sysinternals page linked above provides some excellent examples of how these tools can be used to troubleshoot challenging problems.
AutoIt – Automation and Scripting Language
AutoIt is a tool which can be used to automate many GUI-based processes and perform a variety of other administrative tasks. While it’s not the best way to automate software installations or certain other tasks, it does have its uses.
Orca – Windows Installer Editor
Orca is a Microsoft tool which can be used to view and modify the contents of Microsoft Installer (MSI) and template (MST) files. Orca can also create MST files from existing MSI files. This can be useful in application packaging, when you need to adjust an installation.
There are a number of other tools you may find valuable in work as a Windows Desktop Administrator. Most of these aren’t free, but you can download trial versions that will both help you become familiar with their function and perhaps give you the justification to convince your employer to purchase them for you:
- Sapien PrimalScript and PrimalForms: This is a development environment for VBScript, DOS batch scripts, and PowerShell scripts. It features auto-complete, syntax highlighting, and much more. I use it almost daily. Unfortunately, it’s not cheap.
- Quest Software MSI Studio: When you’re planning to deploy an application which can’t be made to install silently, you’ll want a tool that can turn that application into a standard Windows Installer (MSI) file. MSI Studio is one of the best and most cost-effective tools on the market for doing this. Wise Package Studio (approaching end-of-life) and Flexera AdminStudio are also excellent products (but more expensive).
- LANDesk, SCCM, or Altiris: These are two of the most popular client management tools on the market. LANDesk, for example, can provide client hardware and software inventory, patch management, software deployment, and more.
- VMware Workstation or Oracle VirtualBox: When doing application packaging and patch testing, it’s important not to damage the PC you use every day.
- VirusTotal: This web site can scan any file you upload to it with approximately 40 different antivirus engines. When you’re dealing with a suspected item of malware, running it through this service may identify the nastiness within.
- VMware vSphere and VMware View: In this economy, many organizations are turning to virtual machines as a cost-effective solution to deploying physical PCs. ESX Server is a popular hosting platform, and a limited-functionality free version is available. VMware View is a tool for deploying virtual machines on-demand.