Poznámka
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Platí pro: Windows PowerShell 2.0, Windows PowerShell 3.0
Následující téma popisuje, jak nainstalovat sadu PowerShell SDK v různých verzích Windows.
Instalace sady Windows PowerShell 3.0 SDK pro Windows 8 a Windows Server 2012
Windows PowerShell 3.0 se automaticky nainstaluje s Windows 8 a Windows Serverem 2012. Kromě toho můžete stáhnout a nainstalovat referenční sestavení pro Windows PowerShell 3.0 jako součást sady Windows 8 SDK. Tato sestavení umožňují psát rutiny, poskytovatele a hostitelské programy pro Windows PowerShell 3.0. Při instalaci sady Windows SDK pro Windows 8 se sestavení Windows PowerShellu automaticky nainstalují do referenční složky sestavení v \Program Files (x86)\Reference Assemblies\Microsoft\WindowsPowerShell\3.0
. Další informace najdete na webu pro stažení sady Windows 8 SDK. Ukázky kódu Windows PowerShellu jsou k dispozici také v powershell-sdk-samples úložišti.
Referenční sestavení
Referenční sestavení jsou ve výchozím nastavení nainstalována v následujícím umístění: C:\Program Files\Reference Assemblies\Microsoft\WindowsPowerShell\V1.0
.
Poznámka:
Kód zkompilovaný proti sestavením Windows PowerShellu 2.0 nelze načíst do instalací windows PowerShellu 1.0. Kód zkompilovaný proti sestavením Windows PowerShellu 1.0 je však možné načíst do instalací windows PowerShellu 2.0.
Vzorky
Ukázky kódu se ve výchozím nastavení instalují do následujícího umístění: C:\Program Files\Microsoft SDKs\Windows\v7.0\Samples\sysmgmt\WindowsPowerShell\
. Následující části obsahují stručný popis toho, co jednotlivé ukázky dělá.
Ukázky rutin
- GetProcessSample01 – ukazuje, jak napsat jednoduchou rutinu, která získá všechny procesy na místním počítači.
- GetProcessSample02 – ukazuje, jak do rutiny přidat parametry. Rutina přebírá jeden nebo více názvů procesů a vrací odpovídající procesy.
- GetProcessSample03 – ukazuje, jak přidat parametry, které přijímají vstupy z kanálu.
- GetProcessSample04 – ukazuje, jak zpracovat neukončující chyby.
- GetProcessSample05 – ukazuje, jak zobrazit seznam zadaných procesů.
- SelectObject – ukazuje, jak napsat filtr pro výběr pouze určitých objektů.
- SelectString – ukazuje, jak hledat soubory pro zadané vzory.
- StopProcessSample01 – ukazuje, jak implementovat parametr PassThru a jak požádat uživatele o zpětnou vazbu voláním metod ShouldProcess a ShouldContinue. Uživatelé zadávají parametr PassThru, když chtějí rutinu vynutit vrácení objektu.
- StopProcessSample02 – ukazuje, jak zastavit konkrétní proces.
- StopProcessSample03 – ukazuje, jak deklarovat aliasy pro parametry a jak podporovat zástupné znamény.
- StopProcessSample04 – ukazuje, jak deklarovat sady parametrů, objekt, který rutina přebírá jako vstup, a jak zadat výchozí sadu parametrů, která se má použít.
Ukázky vzdálené komunikace
- RemoteRunspace01 – ukazuje, jak vytvořit vzdálený runspace, který se používá k navázání vzdáleného připojení.
- RemoteRunspacePool01 – ukazuje, jak pomocí tohoto fondu vytvořit vzdálený fond runspace a jak spustit více příkazů současně.
- Serializace01 – ukazuje, jak se podívat na existující třídu .NET a zajistit, aby informace z vybraných veřejných vlastností této třídy byly zachovány v rámci serializace/deserializace.
- Serializace02 – ukazuje, jak se podívat na existující třídu .NET a zajistit, aby informace z instance této třídy byly zachovány v případě, že informace nejsou k dispozici ve veřejných vlastnostech třídy.
- Serializace03 – ukazuje, jak se podívat na existující třídu .NET a ujistit se, že instance této třídy a odvozených tříd jsou deserializovány (rehydrovány) do živých objektů .NET.
Ukázky událostí
- Event01 – ukazuje, jak vytvořit rutinu pro registraci události odvozením z ObjectEventRegistrationBase.
- Event02 – ukazuje, jak přijímat oznámení o událostech Windows PowerShellu generovaných na vzdálených počítačích. Používá událost PSEventReceived vystavenou prostřednictvím třídy Runspace.
Ukázky hostitelských aplikací
- Runspace01 – ukazuje, jak pomocí třídy PowerShellu synchronně spustit rutinu
Get-Process
. RutinaGet-Process
vrátí objekty Process pro každý proces spuštěný v místním počítači. - Runspace02 – ukazuje, jak pomocí třídy PowerShellu spustit
Get-Process
aSort-Object
rutiny synchronně. RutinaGet-Process
vrátí objekty Process pro každý proces spuštěný v místním počítači aSort-Object
seřadí objekty podle vlastnosti ID. Výsledky těchto příkazů se zobrazí pomocí ovládacího prvku DataGridView. - Runspace03 – ukazuje, jak pomocí třídy PowerShellu synchronně spustit skript a jak zpracovat neukončující chyby. Skript obdrží seznam názvů procesů a pak tyto procesy načte. Výsledky skriptu, včetně všech neukončujících chyb generovaných při spuštění skriptu, se zobrazí v okně konzoly.
- Runspace04 – ukazuje, jak pomocí třídy PowerShellu spouštět příkazy a jak zachytit ukončující chyby, které jsou vyvolán při spuštění příkazů. Spustí se dva příkazy a poslední příkaz předá argument parametru, který není platný. V důsledku toho se nevrátí žádné objekty a vyvolá se ukončující chyba.
- Runspace05 – ukazuje, jak přidat modul snap-in k objektu InitialSessionState, aby byla rutina modulu snap-in k dispozici při otevření runspace. Modul snap-in poskytuje rutinu Get-Proc (definovanou ukázkou GetProcessSample01), která se spouští synchronně pomocí objektu PowerShellu.
- Runspace06 – ukazuje, jak přidat modul do objektu InitialSessionState, aby se modul načetl při otevření runspace. Modul poskytuje rutinu Get-Proc (definovanou ukázkou GetProcessSample02), která se spouští synchronně pomocí objektu PowerShellu.
- Runspace07 – ukazuje, jak vytvořit runspace a pak pomocí daného prostředí Runspace synchronně spouštět dvě rutiny pomocí objektu PowerShellu.
- Runspace08 – ukazuje, jak přidat příkazy a argumenty do kanálu objektu PowerShellu a jak příkazy spustit synchronně.
- Runspace09 – ukazuje, jak přidat skript do kanálu objektu PowerShellu a jak skript spustit asynchronně. Události se používají ke zpracování výstupu skriptu.
- Runspace10 – ukazuje, jak vytvořit výchozí počáteční stav relace, jak přidat rutinu do InitialSessionState, jak vytvořit runspace, který používá počáteční stav relace, a jak spustit příkaz pomocí objektu PowerShellu.
- Runspace11 – ukazuje, jak pomocí třídy ProxyCommand vytvořit příkaz proxy, který volá existující rutinu, ale omezuje sadu dostupných parametrů. Příkaz proxy se pak přidá do počátečního stavu relace, který slouží k vytvoření omezeného prostředí runspace. To znamená, že uživatel má přístup k funkcím rutiny pouze prostřednictvím příkazu proxy.
- PowerShell01 – ukazuje, jak vytvořit omezený runspace pomocí objektu InitialSessionState.
- PowerShell02 – ukazuje, jak pomocí fondu runspace souběžně spouštět více příkazů.
Ukázky hostitelů
- Host01 – ukazuje, jak implementovat hostitelskou aplikaci, která používá vlastního hostitele. V této ukázce se vytvoří runspace, který používá vlastního hostitele, a pak se rozhraní API PowerShellu použije ke spuštění skriptu, který volá
exit
. Hostitelská aplikace pak podívá na výstup skriptu a vypíše výsledky. - Host02 – ukazuje, jak napsat hostitelskou aplikaci, která používá modul runtime Prostředí Windows PowerShell spolu s vlastní implementací hostitele. Hostitelská aplikace nastaví jazykovou verzi hostitele na němčinu, spustí rutinu
Get-Process
a zobrazí výsledky tak, jak byste je viděli pomocí pwrsh.exe, a pak vypíše aktuální data a čas v němčině. - Host03 – ukazuje, jak vytvořit interaktivní konzolovou hostitelskou aplikaci, která čte příkazy z příkazového řádku, spustí příkazy a pak zobrazí výsledky v konzole.
- Host04 – ukazuje, jak vytvořit interaktivní konzolovou hostitelskou aplikaci, která čte příkazy z příkazového řádku, spustí příkazy a pak zobrazí výsledky v konzole. Tato hostitelská aplikace také podporuje zobrazování výzev, které uživateli umožňují zadat více možností.
- Host05 – ukazuje, jak vytvořit interaktivní konzolovou hostitelskou aplikaci, která čte příkazy z příkazového řádku, spustí příkazy a pak zobrazí výsledky v konzole. Tato hostitelská aplikace podporuje také volání vzdálených počítačů pomocí rutin
Enter-PSSession
aExit-PSSession
. - Host06 – ukazuje, jak vytvořit interaktivní konzolovou hostitelskou aplikaci, která čte příkazy z příkazového řádku, spustí příkazy a pak zobrazí výsledky v konzole. Kromě toho tato ukázka používá rozhraní API tokenizátoru k určení barvy textu, který uživatel zadal.
Ukázky zprostředkovatelů
AccessDBProviderSample01 – ukazuje, jak deklarovat třídu zprostředkovatele, která je odvozena přímo z třídy CmdletProvider. Je zde zahrnuta pouze pro úplnost.
AccessDBProviderSample02 – ukazuje, jak přepsat metody NewDrive a RemoveDrive pro podporu volání
New-PSDrive
aRemove-PSDrive
rutin. Třída zprostředkovatele v této ukázce je odvozena z DriveCmdletProvider třídy.AccessDBProviderSample03 – ukazuje, jak přepsat metody GetItem a SetItem pro podporu volání rutin
Get-Item
aSet-Item
. Třída zprostředkovatele v této ukázce je odvozena z ItemCmdletProvider třídy.AccessDBProviderSample04 – ukazuje, jak přepsat metody kontejneru pro podporu volání
Copy-Item
,Get-ChildItem
,New-Item
aRemove-Item
rutin. Tyto metody by se měly implementovat, když úložiště dat obsahuje položky, které jsou kontejnery. Kontejner je skupina podřízených položek v rámci společné nadřazené položky. Třída zprostředkovatele v této ukázce je odvozena z ItemCmdletProvider třídy.AccessDBProviderSample05 – ukazuje, jak přepsat metody kontejneru pro podporu volání
Move-Item
aJoin-Path
rutin. Tyto metody by se měly implementovat, když uživatel potřebuje přesunout položky v kontejneru a pokud úložiště dat obsahuje vnořené kontejnery. Třída zprostředkovatele v této ukázce je odvozena z NavigationCmdletProvider třídy.AccessDBProviderSample06 – ukazuje, jak přepsat metody obsahu pro podporu volání
Clear-Content
,Get-Content
aSet-Content
rutin. Tyto metody by měly být implementovány, když uživatel potřebuje spravovat obsah položek v úložišti dat. Třída zprostředkovatele v této ukázce je odvozena z NavigationCmdletProvider třídy a implementuje IContentCmdletProvider rozhraní.