Recently I happened to work with Powershell to create a tool will contain all resources required to automate the basic activities done on a day to day basis.
First the basic task was to create a inventory report of all the workstations in the corporate environment that was part of the domain. This was done using scripting and powershell and the output would be written to a text file on a particular folder on the server. This script is called via the login script so that the script can be called automatically when the user logs in the next day.
However we faced some particular scenarios where this didnt work as expected.
1). This script worked perfectly only on windows xp professional and failed to work on windows 2000 professional.
2). Since the servers are running round the clock and locked and never logged off the network. hence it was uncertain how to capture the information from the servers without usage of the login script.
3). The script could only capture the details as found in the registry key HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall.
But there are some third party applications that do not write to this registry or they never create registry entries because they were created with a different installer apart from msi (Microsoft Windows Installer). Also if the application is not installed on the root drive but another partition then it is not possible to trace it.
It was good to see the usage of Powershell to capture inventory information at a breeze with hundreds of computers in a domain and that also without any man power which would have taken several days to complete.
