内容简介
    PowerShell 是一种新的命令行外壳和脚本语言,用于进行系统管理和自动化。本书的作者由微软专家团队组成,从程序员的角度对Windows PowerShell编程技术进行介绍,不仅讲解了PowerShell的核心模块和基本概念,还提供了大量利用PowerShell强大功能构建软件包的实用开发技巧,是学习PowerShell编程的最佳参考。    在学习过程中,您不仅会发现PowerShell的SDK为应用程序提供了完整的技术支持,还将体验PowerShell的全新技术,它使所有.NET Framework对象都可以通过脚本访问,这也使得PowerShell有望成为最受欢迎的工具和对Windows管理员来说最重要的语言。一旦开始编写命令行类的工具程序,您就会惊奇地发现PowerShell可以使您将注意力集中在核心业务逻辑上。相信这款由微软精心打造的软件会为您的编程生活带来额外的惊喜和收获。本书主要内容  创建PowerShell的Snap-in  开发自定义的Cmdlet  创建自定义的提供者  调用PowerShell执行引擎  实现宿主用户接口  类型扩展及格式化
本书读者对象 本书面向希望拓展Windows PowerShell功能,或者使用PowerShell技术来扩展自己的应用程序的开发人员和程序员。本书源代码下载及技术支持http://www.tupwk.com.cn/downpage
欢迎阅读本书。 2003年,在微软的一个会议中心,来自微软管理控制台小组的工程师们组织了一个座谈会,他们举行了一个关于升级版MMC的原型演示活动,我有幸参加了这个会议。自微软发布第一个以Internet为中心的服务器操作系统,即Windows 2000 Server操作系统后,他们收到了来自Windows系统管理员用户大量的意见反馈,这些反馈并不都是称赞性的。那个原型演示就是微软公司早期针对这些反馈意见做出的回应之一。 自基于DOS的文本文件管理器开发以来,Windows 2000 Server操作系统经过了长期的演化。在其发展过程中,有很长一段时间人们认为它只适合于用来处理邮件、管理一个20MB大小的硬盘,除此之外,别无他用。并且,Windows 2000 Server操作系统的管理工作也是按照视窗概念的方式进行的,系统管理是通过大量的事件交互完成的。尽管Windows系统中已经存在大量的内置API函数和COM型API函数,遗憾的是,这两者之间并没有衔接起来。在Linux下,您可以书写外壳程序脚本代码来自动配置邮件和DNS服务器,但在Windows中,您要么手动配置,要么得先学习C++和COM编程。 在Windows中,Visual Basic Script和JavaScript技术的集成和合并一定程度上弥补了这个空白,但是GUI方式和命令行方式之间管理工作效率的差距并没有得到彻底的填补。传统的Windows脚本只是通过COM组件的一个子集与操作系统交互,而GUI程序则不但可以使用所有的COM组件、调用Win32 API函数,还可以直接调用内置的内核API函数(如果是任务管理器这类GUI程序的话)。因此,Windows脚本的光芒一直以来都被GUI方式给掩盖了。 让我们回到那个原型演示会议现场。想象一下:听众们鱼贯而入,讲台上的工程师通过引用一个关于PA系统的笑话来作开场白。灯光暗了下去,演示开始了。他们演示的新型MMC原型系统是一个基于GUI的程序,该程序使用了一个命令行引擎作为它的API层。每一次节点扩展操作都变成了一次查询,每一次“确定”的点击操作都变成了一个命令。GUI用户的每一个操作都百分百如实地以脚本方式显示在屏幕的底部。老程序员在座位上紧张地微微颤动,那些高级经理人眼中则仿若看到了巨大的利润滚滚而来,会议的筹办人察觉到听众的反应后,手里拿着一块小点心,走到屋外悠闲地点燃了一支香烟。 这个演示宣告了三年后所谓的Windows PowerShell技术的开始。第一版的Windows PowerShell可以从网络上自由下载,同时也作为一个可选的组件集成到了Windows Server 2008操作系统中。Windows PowerShell不但为各种类型的用户提供了一个丰富的编程环境,也为Windows用户从命令行方式过渡到COM组件以及其他未来技术奠定了基础。 在PowerShell有望成为年度黑马之际,本书也跟上时代的步伐,为您学习Windows PowerShell平台上的开发,提高系统管理的效率提供了全面指导。书中主要介绍了PowerShell 1.0开发平台中与cmdlet开发、扩展类型系统(Extended Type System,简称ETS)、宿主(Host)、提供者(Provider)等概念有关的知识。 全书共八章。第1章简要介绍PowerShell入门知识;第2章介绍snap-in开发,给读者一个整体印象;第3章介绍扩展类型系统ETS;第4章介绍cmdlet开发;第5章介绍提供者(provider);第6、7章介绍宿主(host)API及其运用;第8章介绍输出信息格式化配置文件。最后,附录中还给出了一些有用的内容。 本书读者对象 本书面向PowerShell snap-in和宿主程序开发人员,它从API层次起开始介绍PowerShell编程。本书的作者是PowerShell 1.0版的研发小组成员,本书比SDK文档更加详尽地介绍了cmdlet、provider、snap-in、宿主程序以及可定制宿主等方面的开发技术。 源代码下载 在完成本书的示例时,可以选择手动输入代码或者使用本书附带的源代码文件。本书用到的所有源代码可以从www.tupwk.com.cn/downpage下载,也可以从下载。进入该站点后,只需找到本书的名称(使用Search框或者书名列表),单击本书的详细页面上的Download Code链接,就可以得到本书所有的源代码。 注意: 由于很多书有相似的名称,所以用ISBN搜索更为容易。本书的ISBN是978-0-470-17393-0。 下载了代码后,用您喜欢的压缩工具把它解压缩。此外也可以去Wrox的主下载页面/dynamic/books/download.aspx 找到本书或其他Wrox出版的书的代码。 勘误表 尽管我们竭尽所能来确保在正文和代码中没有错误,但错误难免会发生。如果您在Wrox出版的书中发现了错误(比如拼写错误或者代码错误),我们将非常感谢您的反馈。发送勘误表将节省其他读者的时间,同时也会帮助我们提供更高质量的信息。 到站点上,用Search框或者标题列表找到本书的名称,在详细页面上点击Book Errata链接就能找到本书的勘误表。在这个页面中可以看到所有被提交的本书的勘误表,它们是由Wrox的编辑发布的。在/misc-pages/booklist.shtml 中有完整的书的列表,其中包括每本书的勘误表。 如果您在书的勘误表页面上没有看到您发现的错误,请将错误发送至wkservice@vip.163.com。我们会检查这些信息,如果属实就把它添加到本书的勘误表页面上,并在本书的后续版本中更正错误。 如果想和作者或者其他人讨论,请加入在的P2P论坛。该论坛是基于Web的系统,您可以发布关于Wrox出版的书和相关技术的消息,与其他读者或技术人员交流。该论坛有预定功能,在您选择的感兴趣的主题有新帖子时,会邮件通知。Wrox的作者、编辑、其他业界专家和像您一样的读者都会出现在这些论坛中。 在,您会找到很多不同的论坛,它们不但有助于您阅读本书,还有助于您开发自己的应用程序,加入论坛的步骤为: (1) 到 上单击Register链接。 (2) 阅读使用说明,单击Agree按钮。 (3) 填写加入必需的信息和其他您愿意提供的信息,单击Submit按钮。 (4) 您将收到一封email,描述如何验证您的账户和完成加入过程。 注意: 不加入P2P也可以阅读论坛里的消息。但是如果要发布自己的消息,就必须加入。 加入之后,就可以发布新的消息和回复其他用户发布的消息。可以随时在Web上阅读论坛里的消息。如果想让某个论坛的新消息以E-mail的方式发给您,可以单击论坛列表里论坛名字旁边的Subscribe to this Forum图标。 要了解如何使用Wrox P2P的更多信息,请阅读P2P FAQs,其中回答了论坛软件如何使用的问题,以及许多与P2P和Wrox出版的书相关的问题。要阅读FAQs,单击任何P2P页面里的FAQ链接即可。