About the author
Jon White is a software engineer who lives and works in the idyllic surroundings of Seattle’s eastern suburbs. An original member of the PowerShell team at Microsoft, his professional career started in the Administrative Tools group in Windows Server. As a hobbyist, Jon learned programming in his early teens after his father bought an 8088-based PC clone at a second-hand shop. The PC came with MS-DOS 2.0, which featured debug.exe with a 16-bit disassembler, but no assembler. As a result, Jon’s first dive into programming was disassembling long tables of bytes to create a reverse-lookup dictionary for manually converting assembly programs into executable binary code. Coincidentally, later in life he filed the bug which removed debug.exe from 64-bit Windows. As a member of the PowerShell team, he wrote the language’s first production script, when he converted the team’s test harness from Perl to PowerShell script in 2004. When he’s not working (or writing about work) he’s either sailing or playing with fire in the backyard. You can contact him at firstname.lastname@example.org.
Michael Naixin Li is the Senior Test Lead working on the Windows PowerShell team and currently oversees the testing of Windows PowerShell 2.0. Before Windows PowerShell, Michael worked on various major projects at Microsoft, including the development of MSN 1.x and 2.x, quality management for the COM Services component in Windows 2000, NetDocsWeb Client Access, Web Services in Hailstorm, and Software Licensing Service in Windows Vista. Before joining Microsoft, Michael was an assistant professor at Shanghai University of Science and Technology (now called Shanghai University). He holds a Ph.D. in Computer Science from Colorado State University.
Scott Happell has been working as a software engineer and tester for 10 years. Three of those years have been on the Windows PowerShell team, which was what brought him to Microsoft from New Jersey, where he worked at an Internet startup that went belly-up. Scott recently left Microsoft to become a recording engineer/rock star and is trying to find cool ways to use PowerShell to help him create music.
George Xie was a Senior Developer in the Windows PowerShell team for three years, mainly focusing in the area of snap-in model and scripting language. Recently George joined Windows Mobile organization for the Mobile Device Management product. Before joining Microsoft, George worked for Siebel Systems Inc. for several years.
Krishna Chythanya Vutukuri is a Software Developer working on theWindows PowerShell team. Before Windows PowerShell, Krishna worked on various projects atMicrosoft, which included the development of Windows Presentation Foundation. Before joining Microsoft, Krishna held various product development positions at Hewlett-Packard India Software Operations and Wipro Technologies. He holds a M.Sc (Tech.) in Information Systems from Birla Institute of Technology and Science, Pilani, India.
Providing you with the programmer?s approach to understanding Windows PowerShell, this book introduces the concepts, components, and development techniques for building software packages that leverage the power of PowerShell. The author team of PowerShell experts shows you how PowerShell makes writing code easy by providing a runtime engine with its own parser, plus you?ll discover that with PowerShell, all of the .NET Framework objects become accessible via scripting, making PowerShell a very powerful addition to your toolbox and a popular choice for future development.
; May 2008
338 pages; ISBN 9780470289860Read online
, or download in secure PDF format
Title: Professional Windows PowerShell Programming
Author: Arul Kumaravel; Jon White; Michael Naixin Li; Scott Happell; Guohui Xie; Krishna C. Vutukuri
Chapter 1: Introduction to PowerShell.
Chapter 2: Extending Windows PowerShell.
Chapter 3: Understanding the Extended Type System.
Chapter 4: Developing Cmdlets.
Chapter 5: Providers.
Chapter 6: Hosting the PowerShell Engine in Applications.
Chapter 7: Hosts.
Chapter 8: Formatting&Output.
Appendix A: Cmdlet Verb Naming Guidelines.
Appendix B: Cmdlet Parameter Naming Guidelines.
Appendix D: Provider Base Classes and Overrides/Interfaces.
Appendix E: Core Cmdlets for Provider Interaction.