Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következőkre vonatkozik: Windows PowerShell 2.0, Windows PowerShell 3.0
Az alábbi témakör bemutatja, hogyan telepítheti a PowerShell SDK-t a Windows különböző verzióira.
A Windows PowerShell 3.0 SDK telepítése Windows 8 és Windows Server 2012 rendszerhez
A Windows PowerShell 3.0 automatikusan telepítve van a Windows 8 és a Windows Server 2012 rendszeren. Emellett letöltheti és telepítheti a Windows PowerShell 3.0 referenciaszerelvényeit a Windows 8 SDK részeként. Ezek a szerelvények lehetővé teszik parancsmagok, szolgáltatók és gazdagépprogramok írását a Windows PowerShell 3.0-hoz. A Windows 8-hoz készült Windows SDK telepítésekor a Rendszer automatikusan telepíti a Windows PowerShell-szerelvényeket a referenciaszerelvény mappájába \Program Files (x86)\Reference Assemblies\Microsoft\WindowsPowerShell\3.0. További információt a Windows 8 SDK letöltési webhelyén talál. A Windows PowerShell-kódminták a PowerShell-sdk-samples adattárban is elérhetők.
Referenciagyűjtemények
A referenciaszerelvények alapértelmezés szerint a következő helyre vannak telepítve: C:\Program Files\Reference Assemblies\Microsoft\WindowsPowerShell\V1.0.
Megjegyzés
A Windows PowerShell 2.0-szerelvényeken lefordított kód nem tölthető be a Windows PowerShell 1.0 telepítéseibe. A Windows PowerShell 1.0-s szerelvényekre lefordított kód azonban betölthető a Windows PowerShell 2.0-telepítéseibe.
Minták
A kódminták alapértelmezés szerint a következő helyre vannak telepítve: C:\Program Files\Microsoft SDKs\Windows\v7.0\Samples\sysmgmt\WindowsPowerShell\. A következő szakaszok rövid leírást nyújtanak az egyes minták működéséről.
Parancsmagminták
- GetProcessSample01 – Bemutatja, hogyan írhat egy egyszerű parancsmagot, amely lekéri az összes folyamatot a helyi számítógépen.
- GetProcessSample02 – Azt mutatja be, hogyan adhat hozzá paramétereket a parancsmaghoz. A parancsmag egy vagy több folyamatnevet vesz fel, és visszaadja a megfelelő folyamatokat.
- GetProcessSample03 – Azt mutatja be, hogyan adhat hozzá olyan paramétereket, amelyek bemenetet fogadnak a folyamatból.
- GetProcessSample04 – Bemutatja, hogyan kezelhetők a nem végződő hibák.
- GetProcessSample05 – A megadott folyamatok listájának megjelenítését mutatja be.
- SelectObject – Azt mutatja be, hogyan írhat szűrőt csak bizonyos objektumok kijelöléséhez.
- SelectString – Bemutatja, hogyan kereshet fájlokat a megadott mintákban.
- StopProcessSample01 – Bemutatja, hogyan implementálhat PassThru paramétert, és hogyan kérhet felhasználói visszajelzést a ShouldProcess és a ShouldContinue metódusok hívásával. A felhasználók akkor adják meg a PassThru paramétert, ha a parancsmagot egy objektum visszaadására szeretnék kényszeríteni.
- StopProcessSample02 – Egy adott folyamat leállítását mutatja be.
- StopProcessSample03 – Azt mutatja be, hogyan deklarálhat aliasokat paraméterekhez, és hogyan támogathatja a helyettesítő karaktereket.
- StopProcessSample04 – A paraméterkészletek deklarálásának módját, a parancsmag által bemenetként használt objektumot és a használni kívánt alapértelmezett paraméterkészlet megadását mutatja be.
Minták újraküldése
- RemoteRunspace01 – Azt mutatja be, hogyan hozhat létre távoli futtatóteret, amely egy távoli kapcsolat létrehozásához használható.
- RemoteRunspacePool01 – Azt mutatja be, hogyan hozhat létre távoli runspace-készletet, és hogyan futtathat egyszerre több parancsot ezzel a készlettel.
- Szerializáció01 – Azt mutatja be, hogyan tekinthet meg egy meglévő .NET-osztályt, és győződjön meg arról, hogy az osztály kiválasztott nyilvános tulajdonságaiból származó információk a szerializálás/deszerializálás között megmaradnak.
- Szerializálás02 – Azt mutatja be, hogyan tekinthet meg egy meglévő .NET-osztályt, és győződjön meg arról, hogy az osztály példányából származó információk megmaradnak a szerializálás/deszerializálás során, ha az információ nem érhető el az osztály nyilvános tulajdonságaiban.
- Szerializálás03 – Azt mutatja be, hogyan tekinthet meg egy meglévő .NET-osztályt, és győződjön meg arról, hogy az osztály és a származtatott osztályok példányai deszerializáltak (rehidratáltak) élő .NET-objektumokká.
Eseményminták
- Event01 – Azt mutatja be, hogyan hozhat létre parancsmagot az eseményregisztrációhoz az ObjectEventRegistrationBase használatával.
- Event02 – Bemutatja, hogyan fogadhat értesítéseket a távoli számítógépeken létrehozott Windows PowerShell-eseményekről. A runspace osztályon keresztül közzétett PSEventReceived eseményt használja.
Alkalmazásminták üzemeltetése
- Runspace01 – Azt mutatja be, hogyan futtathatja szinkron módon a
Get-Processparancsmagot a PowerShell-osztály használatával. AGet-Processparancsmag a helyi számítógépen futó minden folyamathoz visszaad folyamatobjektumokat. - Runspace02 – Azt mutatja be, hogyan futtathatja szinkronban a
Get-ProcessésSort-Objectparancsmagokat a PowerShell-osztály használatával. AGet-Processparancsmag a helyi számítógépen futó minden folyamathoz visszaad folyamatobjektumokat, aSort-Objectpedig az azonosító tulajdonsága alapján rendezi az objektumokat. Ezeknek a parancsoknak az eredményei egy DataGridView-vezérlővel jelennek meg. - Runspace03 – Azt mutatja be, hogyan futtathat szinkron módon szkripteket a PowerShell-osztályban, és hogyan kezelheti a nem végződő hibákat. A szkript megkapja a folyamatnevek listáját, majd lekéri ezeket a folyamatokat. A szkript eredményei, beleértve a szkript futtatásakor generált nem végződő hibákat is, egy konzolablakban jelennek meg.
- Runspace04 – Azt mutatja be, hogyan futtathat parancsokat a PowerShell-osztályban, és hogyan kaphatja meg a parancsok futtatásakor megjelenő leállási hibákat. Két parancs fut, az utolsó parancs pedig egy érvénytelen paraméterargumentumot ad át. Ennek eredményeképpen a rendszer nem ad vissza objektumokat, és megszűnik a hiba.
- Runspace05 – Bemutatja, hogyan adhat hozzá beépülő modult egy InitialSessionState objektumhoz, hogy a beépülő modul parancsmagja elérhető legyen a futtatótér megnyitásakor. A beépülő modul egy Get-Proc parancsmagot biztosít (amelyet a GetProcessSample01 minta határoz meg), amely szinkron módon fut egy PowerShell-objektummal.
- Runspace06 – Azt mutatja be, hogyan adhat hozzá modult egy InitialSessionState objektumhoz úgy, hogy a modul be legyen töltve a runspace megnyitásakor. A modul egy Get-Proc parancsmagot biztosít (amelyet a GetProcessSample02 minta határoz meg), amely szinkron módon fut egy PowerShell-objektummal.
- Runspace07 – Bemutatja, hogyan hozhat létre futtatóteret, majd hogyan futtathat két parancsmagot szinkron módon Egy PowerShell-objektum használatával.
- Runspace08 – Azt mutatja be, hogyan adhat hozzá parancsokat és argumentumokat egy PowerShell-objektum folyamatához, és hogyan futtathatja szinkron módon a parancsokat.
- Runspace09 – Azt mutatja be, hogyan adhat hozzá szkriptet egy PowerShell-objektum folyamatához, és hogyan futtathatja a szkriptet aszinkron módon. Az események a szkript kimenetének kezelésére szolgálnak.
- Runspace10 – Bemutatja, hogyan hozhat létre alapértelmezett kezdeti munkamenet-állapotot, hogyan adhat hozzá parancsmagot az InitialSessionState-hez, hogyan hozhat létre a kezdeti munkamenet-állapotot használó futtatóteret, és hogyan futtathatja a parancsot Egy PowerShell-objektum használatával.
- Runspace11 – Azt mutatja be, hogyan hozhat létre proxyparancsot a ProxyCommand osztály használatával, amely meghív egy meglévő parancsmagot, de korlátozza az elérhető paraméterek készletét. A proxyparancs ezután hozzáadódik egy kezdeti munkamenet-állapothoz, amely korlátozott futtatókörnyezet létrehozásához használatos. Ez azt jelenti, hogy a felhasználó csak a proxyparancson keresztül férhet hozzá a parancsmag funkcióihoz.
- PowerShell01 – Bemutatja, hogyan hozhat létre korlátozott futtatóteret InitialSessionState objektummal.
- PowerShell02 – Azt mutatja be, hogyan futtathat egyszerre több parancsot egy runspace-készletben.
Gazdagépminták
- Host01 – Azt mutatja be, hogyan implementálhat egyéni gazdagépet használó gazdagépalkalmazást. Ebben a mintában létrehozunk egy olyan futtatóteret, amely az egyéni gazdagépet használja, majd a PowerShell API-val futtatunk egy szkriptet, amely meghívja
exit. A gazdaalkalmazás ezután megvizsgálja a szkript kimenetét, és kinyomtatja az eredményeket. - Host02 – Azt mutatja be, hogyan írhat olyan gazdagépalkalmazást, amely a Windows PowerShell-futtatókörnyezetet és egy egyéni gazdagép-implementációt használ. A gazdagépalkalmazás németre állítja a gazdagépkultúrát, futtatja a
Get-Processparancsmagot, és megjeleníti az eredményeket, ahogyan az pwrsh.exehasználatával látni fogja őket, majd az aktuális adatokat és időt német nyelven nyomtatja ki. - Host03 – Bemutatja, hogyan hozhat létre egy interaktív, konzolalapú gazdagépalkalmazást, amely a parancssorból olvassa be a parancsokat, végrehajtja a parancsokat, majd megjeleníti az eredményeket a konzolon.
- Host04 – Azt mutatja be, hogyan hozhat létre egy interaktív konzolalapú gazdagépalkalmazást, amely a parancssorból olvassa be a parancsokat, végrehajtja a parancsokat, majd megjeleníti az eredményeket a konzolon. Ez a gazdaalkalmazás támogatja az olyan kérések megjelenítését is, amelyek lehetővé teszik a felhasználó számára, hogy több választási lehetőséget adjon meg.
- Host05 – Bemutatja, hogyan hozhat létre egy interaktív, konzolalapú gazdagépalkalmazást, amely a parancssorból olvassa be a parancsokat, végrehajtja a parancsokat, majd megjeleníti az eredményeket a konzolon. Ez a gazdaalkalmazás a távoli számítógépekre irányuló hívásokat is támogatja a
Enter-PSSessionésExit-PSSessionparancsmagok használatával. - Host06 – Bemutatja, hogyan hozhat létre egy interaktív, konzolalapú gazdagépalkalmazást, amely a parancssorból olvassa be a parancsokat, végrehajtja a parancsokat, majd megjeleníti az eredményeket a konzolon. Emellett ez a minta a Tokenizer API-kkal határozza meg a felhasználó által beírt szöveg színét.
Szolgáltatói minták
AccessDBProviderSample01 – Azt mutatja be, hogyan deklarálhat egy olyan szolgáltatói osztályt, amely közvetlenül a CmdletProvider osztályból származik. Ez csak a teljesség érdekében szerepel itt.
AccessDBProviderSample02 – Bemutatja, hogyan írhatja felül a NewDrive és RemoveDrive metódusokat a
New-PSDriveésRemove-PSDriveparancsmagok hívásainak támogatásához. A minta szolgáltatóosztálya a DriveCmdletProvider osztályból származik.AccessDBProviderSample03 – Bemutatja, hogyan írhatja felül a GetItem és a SetItem metódust a
Get-ItemésSet-Itemparancsmagok hívásainak támogatásához. A minta szolgáltatóosztálya az ItemCmdletProvider osztályból származik.AccessDBProviderSample04 – Bemutatja, hogyan írhatja felül a tároló metódusait a
Copy-Item,Get-ChildItem,New-ItemésRemove-Itemparancsmagok hívásainak támogatásához. Ezeket a módszereket akkor kell implementálni, ha az adattár tárolókat tartalmazó elemeket tartalmaz. A tároló egy közös szülőelem alatti gyermekelemek csoportja. A minta szolgáltatóosztálya az ItemCmdletProvider osztályból származik.AccessDBProviderSample05 – Bemutatja, hogyan írhatja felül a tároló metódusait a
Move-ItemésJoin-Pathparancsmagokra irányuló hívások támogatásához. Ezeket a módszereket akkor kell implementálni, ha a felhasználónak át kell helyeznie az elemeket egy tárolón belül, és ha az adattár beágyazott tárolókat tartalmaz. A minta szolgáltatóosztálya a NavigationCmdletProvider osztályból származik.AccessDBProviderSample06 – Bemutatja, hogyan írhatja felül a tartalom metódusait a
Clear-Content,Get-ContentésSet-Contentparancsmagok hívásainak támogatásához. Ezeket a módszereket akkor kell implementálni, ha a felhasználónak kezelnie kell az adattárban lévő elemek tartalmát. A mintában szereplő szolgáltatóosztály a NavigationCmdletProvider osztályból származik, és implementálja az IContentCmdletProvider felületet.