当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 安装 Windows PowerShell SDK

作者:精品下载站 日期:2024-12-14 02:55:24 浏览:13 分类:玩电脑

安装 Windows PowerShell SDK


适用于:Windows PowerShell 2.0、Windows PowerShell 3.0

以下主题介绍如何在不同版本的 Windows 上安装 PowerShell SDK。

安装适用于 Windows 8 和 Windows Server 2012 的 Windows PowerShell 3.0 SDK

Windows PowerShell 3.0 会自动随 Windows 8 和 Windows Server 2012 一起安装。此外,您可以下载并安装 Windows PowerShell 3.0 的参考程序集作为 Windows 8 SDK 的一部分。这些程序集允许您为 Windows PowerShell 3.0 编写 cmdlet、提供程序和主机程序。安装适用于 Windows 8 的 Windows SDK 时,Windows PowerShell 程序集会自动安装在参考程序集文件夹中,位于 \Program Files (x86)\Reference Assemblies\Microsoft\WindowsPowerShell.0 中。有关详细信息,请参阅 Windows 8 SDK 下载站点。 powershell-sdk-samples 存储库中还提供了 Windows PowerShell 代码示例。

参考组件

默认情况下,参考程序集安装在以下位置:c:\Program Files\Reference Assemblies\Microsoft\WindowsPowerShell\V1.0

笔记

针对 Windows PowerShell 2.0 程序集编译的代码无法加载到 Windows PowerShell 1.0 安装中。但是,针对 Windows PowerShell 1.0 程序集编译的代码可以加载到 Windows PowerShell 2.0 安装中。

样品

默认情况下,代码示例安装在以下位置:C:\Program Files\Microsoft SDKs\Windows\v7.0\Samples\sysmgmt\WindowsPowerShell\。以下部分简要描述了每个示例的用途。

Cmdlet 示例

  • GetProcessSample01 - 展示如何编写一个简单的 cmdlet 来获取本地计算机上的所有进程。
  • GetProcessSample02 - 演示如何向 cmdlet 添加参数。该 cmdlet 采用一个或多个进程名称并返回匹配的进程。
  • GetProcessSample03 - 展示如何添加接受来自管道的输入的参数。
  • GetProcessSample04 - 展示如何处理非终止错误。
  • GetProcessSample05 - 展示如何显示指定进程的列表。
  • SelectObject - 展示如何编写过滤器以仅选择某些对象。
  • SelectString - 显示如何搜索文件中的指定模式。
  • StopProcessSample01 - 演示如何实现 PassThru 参数,以及如何通过调用 ShouldProcess 和 ShouldContinue 方法来请求用户反馈。用户在想要强制 cmdlet 返回对象时指定 PassThru 参数,
  • StopProcessSample02 - 展示如何停止特定进程。
  • StopProcessSample03 - 展示如何声明参数的别名以及如何支持通配符。
  • StopProcessSample04 - 演示如何声明参数集、cmdlet 作为输入的对象以及如何指定要使用的默认参数集。

远程处理样本

  • RemoteRunspace01 - 展示如何创建用于建立远程连接的远程运行空间。
  • RemoteRunspacePool01 - 展示如何构建远程运行空间池以及如何使用此池同时运行多个命令。
  • Serialization01 - 展示如何查看现有的 .NET 类并确保在序列化/反序列化过程中保留此类的选定公共属性中的信息。
  • Serialization02 - 演示如何查看现有 .NET 类,并确保当该信息在类的公共属性中不可用时,该信息在序列化/反序列化过程中得以保留。
  • Serialization03 - 展示如何查看现有的 .NET 类并确保该类和派生类的实例被反序列化(重新水合)为活动的 .NET 对象。

活动样本

  • Event01 - 演示如何通过派生自 ObjectEventRegistrationBase 创建用于事件注册的 cmdlet。
  • Event02 - 展示如何接收远程计算机上生成的 Windows PowerShell 事件的通知。它使用通过 Runspace 类公开的 PSEventReceived 事件。

托管应用程序示例

  • Runspace01 - 演示如何使用 PowerShell 类同步运行 Get-Process cmdlet。 Get-Process cmdlet 返回本地计算机上运行的每个进程的 Process 对象。
  • Runspace02 - 演示如何使用 PowerShell 类同步运行 Get-ProcessSort-Object cmdlet。 Get-Process cmdlet 返回本地计算机上运行的每个进程的 Process 对象,Sort-Object 根据对象的 Id 属性对对象进行排序。这些命令的结果通过使用 DataGridView 控件来显示。
  • Runspace03 - 展示如何使用 PowerShell 类同步运行脚本,以及如何处理非终止错误。该脚本接收进程名称列表,然后检索这些进程。脚本的结果(包括运行脚本时生成的任何非终止错误)显示在控制台窗口中。
  • Runspace04 - 展示如何使用 PowerShell 类运行命令,以及如何捕获运行命令时引发的终止错误。运行两个命令,最后一个命令传递的参数参数无效。结果,不会返回任何对象并引发终止错误。
  • Runspace05 - 演示如何将管理单元添加到 InitialSessionState 对象,以便在打开运行空间时可以使用管理单元的 cmdlet。该管理单元提供了一个使用 PowerShell 对象同步运行的 Get-Proc cmdlet(由 GetProcessSample01 示例定义)。
  • Runspace06 - 展示如何将模块添加到 InitialSessionState 对象,以便在打开运行空间时加载该模块。该模块提供使用 PowerShell 对象同步运行的 Get-Proc cmdlet(由 GetProcessSample02 示例定义)。
  • Runspace07 - 演示如何创建运行空间,然后使用该运行空间通过 PowerShell 对象同步运行两个 cmdlet。
  • Runspace08 - 展示如何将命令和参数添加到 PowerShell 对象的管道以及如何同步运行命令。
  • Runspace09 - 展示如何将脚本添加到 PowerShell 对象的管道以及如何异步运行脚本。事件用于处理脚本的输出。
  • Runspace10 - 演示如何创建默认初始会话状态、如何将 cmdlet 添加到 InitialSessionState、如何创建使用初始会话状态的运行空间以及如何使用 PowerShell 对象运行命令。
  • Runspace11 - 演示如何使用 ProxyCommand 类创建调用现有 cmdlet 但限制可用参数集的代理命令。然后,代理命令被添加到用于创建受限运行空间的初始会话状态。这意味着用户只能通过代理命令访问 cmdlet 的功能。
  • PowerShell01 - 演示如何使用 InitialSessionState 对象创建受限运行空间。
  • PowerShell02 - 展示如何使用运行空间池同时运行多个命令。

主机样品

  • Host01 - 展示如何实现使用自定义主机的主机应用程序。在此示例中,创建了一个使用自定义主机的运行空间,然后使用 PowerShell API 来运行调用 exit 的脚本。然后,主机应用程序查看脚本的输出并打印出结果。
  • Host02 - 展示如何编写使用 Windows PowerShell 运行时以及自定义主机实现的主机应用程序。主机应用程序将主机区域性设置为德语,运行 Get-Process cmdlet 并显示结果,就像您使用 pwrsh.exe 看到的那样,然后以德语打印出当前数据和时间。
  • Host03 - 展示如何构建基于交互式控制台的主机应用程序,该应用程序从命令行读取命令,执行命令,然后将结果显示到控制台。
  • Host04 - 展示如何构建基于交互式控制台的主机应用程序,该应用程序从命令行读取命令,执行命令,然后将结果显示到控制台。该主机应用程序还支持显示允许用户指定多个选择的提示。
  • Host05 - 展示如何构建基于交互式控制台的主机应用程序,该应用程序从命令行读取命令,执行命令,然后将结果显示到控制台。此主机应用程序还支持使用 Enter-PsSessionExit-PsSession cmdlet 调用远程计算机。
  • Host06 - 展示如何构建基于交互式控制台的主机应用程序,该应用程序从命令行读取命令,执行命令,然后将结果显示到控制台。此外,此示例使用 Tokenizer API 来指定用户输入的文本的颜色。

供应商样品

  • AccessDBProviderSample01 - 演示如何声明直接从 CmdletProvider 类派生的提供程序类。将其包含在这里只是为了完整性。

  • AccessDBProviderSample02 - 演示如何覆盖 NewDrive 和 RemoveDrive 方法以支持对 New-PSDriveRemove-PSDrive cmdlet 的调用。此示例中的提供程序类派生自 DriveCmdletProvider 类。

  • AccessDBProviderSample03 - 演示如何重写 GetItem 和 SetItem 方法以支持对 Get-ItemSet-Item cmdlet 的调用。此示例中的提供程序类派生自 ItemCmdletProvider 类。

  • AccessDBProviderSample04 - 演示如何覆盖容器方法以支持对 Copy-ItemGet-ChildItemNew-Item 的调用删除项目 cmdlet。当数据存储包含作为容器的项目时,应该实现这些方法。容器是同一父项下的一组子项。此示例中的提供程序类派生自 ItemCmdletProvider 类。

  • AccessDBProviderSample05 - 展示如何覆盖容器方法以支持对 Move-ItemJoin-Path cmdlet 的调用。当用户需要在容器内移动项目并且数据存储包含嵌套容器时,应该实现这些方法。此示例中的提供程序类派生自 NavigationCmdletProvider 类。

  • AccessDBProviderSample06 - 演示如何覆盖内容方法以支持对 Clear-ContentGet-ContentSet-Content cmdlet 的调用。当用户需要管理数据存储中的项目内容时,应该实现这些方法。此示例中的提供程序类派生自 NavigationCmdletProvider 类,并且它实现 IContentCmdletProvider 接口。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯