Book Image

Enterprise PowerShell Scripting Bootcamp

By : Brenton J.W. Blawat
Book Image

Enterprise PowerShell Scripting Bootcamp

By: Brenton J.W. Blawat

Overview of this book

Enterprise PowerShell Scripting Bootcamp explains how to create your own repeatable PowerShell scripting framework. This framework contains script logging methodologies, answer file interactions, and string encryption and decryption strategies. This book focuses on evaluating individual components to identify the system’s function, role, and unique characteristics. To do this, you will leverage built-in CMDlets and Windows Management Instrumentation (WMI) to explore Windows services, Windows processes, Windows features, scheduled tasks, and disk statistics. You will also create custom functions to perform a deep search for specific strings in files and evaluate installed software through executable properties. We will then discuss different scripting techniques to improve the efficiency of scripts. By leveraging several small changes to your code, you can increase the execution performance by over 130%. By the end of this book, you will be able to tie all of the concepts together in a PowerShell-based Windows server scanning script. This discovery script will be able to scan a Windows server to identify a multitude of components.
Table of Contents (21 chapters)
Enterprise PowerShell Scripting Bootcamp
Credits
About the Author
About the Reviewer
www.PacktPub.com
Customer Feedback
Preface
3
Working with Answer Files
Index

Installed software detection


Detecting software on your system can be a difficult task. While the WMI win32_product class has a record of each Microsoft Installer (MSI)-installed software on your system, it is strongly recommended you do NOT use this class. When you query the win32_product class, it reconfigures each MSI software installed on your system. This can create unintended service disruptions due to applications being reinstalled, configurations being overwritten, and MSI repairs not completing successfully:

The preceding screenshot displays one of the multiple messages generated when the win32_product class is invoked. You will see that the Windows installer forces a reconfiguration of the installed software product. You will also see a reconfiguration status and error status message. If you accidently use the win32_product class, you can scan the event log for status messages and properly reinstall the application upon error.

Tip

Avoid using the win32_product class in your scripts...