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.
Érdemes Windows PowerShell szolgáltatót telepíteni, ha a terméked vagy konfigurációd tárolt adathalmazt fed fel, például egy adatbázist, amelyet a felhasználó szeretne navigálni vagy böngészni. Továbbá, ha a terméked konténert biztosít, még ha nem is többszintű konténer, akkor érdemes Windows PowerShell szolgáltatót bevezetni. Például érdemes lehet Windows PowerShell konténer szolgáltatót valósítani meg, ha a Copy, Move, Rename, New or Remove cmdlet igés értelmet ad a termékedben vagy konfigurációs adataidon működő műveletként.
A Windows PowerShell útvonalak azonosítják a szolgáltatót
A Windows PowerShell futás útvonalakat használ a megfelelő Windows PowerShell szolgáltatóhoz való hozzáféréshez. Amikor egy cmdlet megad valamelyik ilyen útvonalat, a futási idő tudja, melyik szolgáltatót kell használni a hozzá tartozó adattároló eléréséhez. Ezek az utak közé tartoznak a drive-qualified útvonalak, szolgáltató által minősített útvonalak, szolgáltató-közvetlen utak és szolgáltató-belső utak. Minden Windows PowerShell szolgáltatónak egy vagy több ilyen útvonalat kell támogatnia.
További információért a Windows PowerShell útvonalakról lásd: Hogyan működik Windows PowerShell.
Egy Drive-Qualified út meghatározása
Ahhoz, hogy a felhasználó hozzáférhessen a fizikai meghajtón található adatokhoz, a Windows PowerShell szolgáltatónak meghajtóhoz minősített útvonalat kell támogatnia. Ez az út a meghajtó nevével kezdődik, majd egy kollós (:), például mydrive:\abc\bar.
Egy Provider-Qualified út meghatározása
Ahhoz, hogy a Windows PowerShell futás ideje inicializálja és visszavonja a szolgáltatót, a Windows PowerShell szolgáltatónak támogatnia kell egy szolgáltató által minősített útvonalat. Például a FileSystem::\uncshare\abc\bar a Windows PowerShell által biztosított szolgáltató által biztosított szolgáltató által minősített út.
Egy Provider-Direct út meghatározása
Ahhoz, hogy távoli hozzáférést engedélyezzen a Windows PowerShell szolgáltatóhoz, támogatnia kell egy szolgáltató-közvetlen utat is, amely közvetlenül a Windows PowerShell szolgáltatóhoz jut a jelenlegi helyhez. Például a Windows PowerShell szolgáltató használhatja \\server\regkeypath útvonalat szolgáltató-közvetlen útvonalként.
Egy Provider-Internal út meghatározása
Ahhoz, hogy a szolgáltató cmdlet nem Windows PowerShell alkalmazási interfészeken (API-k) keresztül hozzáférhessen az adatokhoz, a Windows PowerShell szolgáltatónak támogatnia kell a szolgáltató belső útvonalát. Ez az útvonal a szolgáltató által minősített út "::" után van jelölve. Például a FileSystem Windows PowerShell szolgáltató szolgáltató-belső útja \\uncshare\abc\bar.
Tárolt adatok megváltoztatása
Amikor felülírod azokat a metóduszokat, amelyek módosítják az alap adattárolót, mindig hívjuk a System.Management.Automation.Provider.CmdletProvider.WriteItemObject* metódupontot, amelyen az adott módszer által módosított legup-toverziót módosítja. A szolgáltató infrastruktúra határozza meg, hogy az item objektumot át kell adni a csővezetéknek, például amikor a felhasználó megadja a -PassThru paramétert. Ha a legup-todátummal rendelkező elem lekérése költséges (teljesítmény szempontjából), akkor tesztelheted a Context.PassThru tulajdonságot, hogy megállapítsd, valóban szükséges-e a kikapott tételt írni.
Válassz egy alaposztályt a szolgáltatód számára
A Windows PowerShell számos alap osztályt biztosít, amelyeket saját Windows PowerShell szolgáltató megvalósításához használhatsz. Szolgáltató tervezésekor válaszd ki az ebben a szakaszban leírt alaposztályt, amely a leginkább megfelel az igényeidnek.
Minden Windows PowerShell szolgáltató alaposztálya egy cmdlet-készletet kínál. Ez a rész a cmdleteket írja le, de nem írja le a paramétereiket.
A session állapot használatával a Windows PowerShell futási ideje több helyalapú cmdletet tesz elérhetővé bizonyos Windows PowerShell szolgáltatók számára, például a Get-Location, Set-Location, Pop-Location, és Push-Location cmdlet-ek számára. A Get-Help cmdlet-et használhatod, hogy információkat szerezz ezekről a helyparancsnokokról.
CmdletProvider Base Class
A System.Management.Automation.Provider.CmdletProvider osztály egy alapvető Windows PowerShell szolgáltatót határoz meg. Ez az osztály támogatja a szolgáltató deklarációját, és számos tulajdonságot és metódust biztosít, amelyek minden Windows PowerShell szolgáltató számára elérhetők.
Az osztályt a Get-PSProvider cmdlet hívja fel, hogy felsorolja az összes elérhető szolgáltatót egy ülésre.
Ennek a cmdletnek a megvalósítását a session állapot biztosítja.
Megjegyzés:
A Windows PowerShell szolgáltatók minden Windows PowerShell nyelvi körhöz elérhetők.
DriveCmdletProvider Base Class
A System.Management.Automation.Provider.DriveCmdletProvider osztály egy Windows PowerShell meghajtó szolgáltatót határoz meg, amely támogatja az új meghajtók hozzáadását, meglévő meghajtók eltávolítását és az alapértelmezett meghajtók inicializálását. Például a Windows PowerShell által biztosított FileSystem szolgáltató inicializálja a meghajtókat minden csatlakoztatott kötethez, például merevlemezekhez és CD/DVD eszközmeghajtókhoz.
Ez az osztály a System.Management.Automation.Provider.CmdletProvider alaposztályból származik. Az alábbi táblázat felsorolja az osztály által kitett cmdlet-eket. A felsoroltak mellett a Get-PSDrive cmdlet (session állapot szerint exponálva) egy kapcsolódó cmdlet, amelyet elérhető meghajtók visszakeresésére használnak.
| Cmdlet | Definition |
|---|---|
New-PSDrive |
Új meghajtót hoz létre a játékhoz, és streamelte a meghajtó adatait. |
Remove-PSDrive |
Eltávolít egy meghajtót a játékból. |
ItemCmdletProvider Base Class
A System.Management.Automation.Provider.ItemCmdletProvider osztály egy Windows PowerShell elemszolgáltatót definiál, amely az adattároló egyes elemein végez műveleteket, és nem feltételez semmilyen tároló- vagy navigációs képességeket. Ez az osztály a System.Management.Automation.Provider.DriveCmdletProvider alaposztályból származik. Az alábbi táblázat felsorolja az osztály által kitett cmdlet-eket.
| Cmdlet | Definition |
|---|---|
Clear-Item |
Töröli a megadott helyen lévő aktuális tartalmat, és a szolgáltató által megadott "clear" értéket helyettesíti. Ez a cmdlet nem továbbít kimeneti objektumot a csővezetéken, hacsak nem van megadva a paramétere PassThru . |
Get-Item |
Elemeket kér a megadott helyről, és továbbítja az eredményt kapott objektumokat. |
Invoke-Item |
A megadott útvonalon indítja meg az alapértelmezett műveletet az adott tárgyhoz. |
Set-Item |
A megadott helyen egy tételt állít be a megadott értékkel. Ez a cmdlet nem továbbít kimeneti objektumot a csővezetéken, hacsak nem van megadva a paramétere PassThru . |
Resolve-Path |
Megoldja a Windows PowerShell útvonal wildcardjait, és az út adatait továbbítja. |
Test-Path |
Teszteli a megadott útvonalat, és visszatér true , ha létezik vagy false egyébként. Ez a cmdlet a System.Management.Automation.Provider.CmdletProvider.WriteItemObject* metódus paraméterének támogatására IsContainer van valósítva. |
ContainerCmdletProvider Base Class
A System.Management.Automation.Provider.ContainerCmdletProvider osztály egy Windows PowerShell konténer szolgáltatót definiál, amely egy konténert tár fel a felhasználó számára. Ne feledd, hogy Windows PowerShell konténer szolgáltató csak akkor használható, ha van egy konténer (nincs beágyazott konténer), amelyben elemek vannak. Ha vannak beágyazott konténerek, akkor Windows PowerShell navigációs szolgáltatót kell implementálnod.
Ez az osztály a System.Management.Automation.Provider.ItemCmdletProvider alaposztályból származik. Az alábbi táblázat határozza meg az osztály által implementált cmdleteket.
| Cmdlet | Definition |
|---|---|
Copy-Item |
Másolja az elemeket egyik helyről a másikra. Ez a cmdlet nem továbbít kimeneti objektumot a csővezetéken, hacsak nem van megadva a paramétere PassThru . |
Get-ChildItem |
A megadott helyen lekéri a gyermek elemeket, és objektumként streamelte őket. |
New-Item |
Új elemeket hoz létre a megadott helyen, és streameli az eredményt kapott objektumot. |
Remove-Item |
Eltávolítja az elemeket a megadott helyről. |
Rename-Item |
Átnevez egy tárgyat a megadott helyen. Ez a cmdlet nem továbbít kimeneti objektumot a csővezetéken, hacsak nem van megadva a paramétere PassThru . |
NavigationCmdletProvider Base Class
A System.Management.Automation.Provider.NavigationCmdletProvider osztály egy Windows PowerShell navigációs szolgáltatót definiál, amely műveleteket végez olyan elemek számára, amelyek több konténert használnak. Ez az osztály a System.Management.Automation.Provider.ContainerCmdletProvider alaposztályból származik. Az alábbi táblázat felsorolja az osztály által kitett cmdleteket.
| Cmdlet | Definition |
|---|---|
Combine-Path |
Két útvonalat egyesít egyetlen útvonalba, szolgáltató-specifikus elválasztót használva az utak között. Ez a parancsnok a stringeket streamel. |
Move-Item |
Elemeket a megadott helyre mozgat. Ez a cmdlet nem továbbít kimeneti objektumot a csővezetéken, hacsak nem van megadva a paramétere PassThru . |
Egy kapcsolódó cmdlet az alap Parse-Path cmdlet, amelyet a Windows PowerShell biztosít. Ez a cmdlet használható Windows PowerShell útvonal elemzésére a paraméter támogatására Parent . A szülő útsort streameli.
Válassza ki a szolgáltatói interfészeket a támogatásra
A Windows PowerShell szolgáltatója azon túl, hogy valamelyik Windows PowerShell alaposztályból származik, más funkciókat is támogathat, ha az alábbi szolgáltatói interfészek egyikéből vagy többből származik. Ez a szakasz határozza meg ezeket az interfészeket és az általuk támogatott cmdleteket. Nem írja le a felület által támogatott cmdlet-ek paramétereit. A cmdlet paraméterinformációk online elérhetők az Get-Command és Get-Help cmdlets segítségével.
IContentCmdletProvider
A System.Management.Automation.Provider.IContentCmdletProvider interfész egy olyan tartalomszolgáltatót határoz meg, amely egy adattárgy tartalmán műveleteket végez. Az alábbi táblázat felsorolja az interfész által kitett cmdleteket.
| Cmdlet | Definition |
|---|---|
Add-Content |
A megadott értékhosszokat hozzáfűzi a megadott tétel tartalmához. Ez a cmdlet nem továbbít kimeneti objektumot a csővezetéken, hacsak nem van megadva a paramétere PassThru . |
Clear-Content |
A megadott tétel tartalmát "clear" értékre állítja be. Ez a cmdlet nem továbbít kimeneti objektumot a csővezetéken, hacsak nem van megadva a paramétere PassThru . |
Get-Content |
Lekéri a megadott elemek tartalmát, és az eredményt kapott objektumokat streamelti. |
Set-Content |
Lecseréli a megadott tételekhez tartozó meglévő tartalmat. Ez a cmdlet nem továbbít kimeneti objektumot a csővezetéken, hacsak nem van megadva a paramétere PassThru . |
IPropertyCmdletProvider
A System.Management.Automation.Provider.IPropertyCmdletProvider interfész egy Windows PowerShell szolgáltató tulajdonságát határozza meg, amely műveleteket végez az adattároló elemeinek tulajdonságain. Az alábbi táblázat felsorolja az interfész által kitett cmdleteket.
Megjegyzés:
Ezeknek a cmdleteknek a Path paramétere egy elemhez vezető útvonalat jelöl, nem pedig egy tulajdonságot azonosítana.
| Cmdlet | Definition |
|---|---|
Clear-ItemProperty |
A megadott elemek tulajdonságait "clear" értékre állítja be. Ez a cmdlet nem továbbít kimeneti objektumot a csővezetéken, hacsak nem van megadva a paramétere PassThru . |
Get-ItemProperty |
A megadott elemekről származó tulajdonságokat kér le, és az ebből származó objektumokat továbbítja. |
Set-ItemProperty |
A megadott elemek tulajdonságait a megadott értékekkel állítja be. Ez a cmdlet nem továbbít kimeneti objektumot a csővezetéken, hacsak nem van megadva a paramétere PassThru . |
IDynamicPropertyCmdletProvider
A System.Management.Automation.Provider.IDynamicPropertyCmdletProvider interfész, amely a System.Management.Automation.Provider.IPropertyCmdletProvider mintából származik, egy olyan szolgáltatót határoz meg, amely dinamikus paramétereket határoz meg a támogatott cmdletjeihez. Ez a szolgáltatótípus olyan műveleteket kezel, amelyekhez a tulajdonságok futásidőben definiálhatók, például egy új tulajdonság műveletet. Ilyen műveletek nem lehetségesek statikusan definiált tulajdonságokkal rendelkező elemeknél. Az alábbi táblázat felsorolja az interfész által kitett cmdleteket.
| Cmdlet | Definition |
|---|---|
Copy-ItemProperty |
Másolja a megadott tárgyból egy tulajdonságot egy másik tárgyba. Ez a cmdlet nem továbbít kimeneti objektumot a csővezetéken, hacsak nem van megadva a paramétere PassThru . |
Move-ItemProperty |
Egy tulajdonságot áthelyez a megadott tárgyról egy másik tárgyba. Ez a cmdlet nem továbbít kimeneti objektumot a csővezetéken, hacsak nem van megadva a paramétere PassThru . |
New-ItemProperty |
Létrehoz egy tulajdonságot a megadott elemeken, és az eredményt kapott objektumokat streamelti. |
Remove-ItemProperty |
Eltávolít egy tulajdonságot a megadott elemekhez. |
Rename-ItemProperty |
Átnevezi a megadott elemek egy tulajdonságát. Ez a cmdlet nem továbbít kimeneti objektumot a csővezetéken, hacsak nem van megadva a paramétere PassThru . |
ISecurityDescriptorCmdletProvider
A System.Management.Automation.Provider.ISecurityDescriptorCmdletProvider interfész biztonsági leírás funkciókat ad hozzá a szolgáltatóhoz. Ez az interfész lehetővé teszi a felhasználó számára, hogy hozzáférjen és beállítson biztonsági leírási információkat egy adattároló tárgyhoz. Az alábbi táblázat felsorolja az interfész által kitett cmdleteket.
| Cmdlet | Definition |
|---|---|
Get-Acl |
Lekéri a hozzáférés-szabályozó listában (ACL) található információkat, amely egy biztonsági leíró része, amely operációs rendszer erőforrásait, például egy fájlt vagy objektumot őriz. |
Set-Acl |
Beállítása az ACL információihoz. Ez a System.Security.AccessControl.ObjectSecurity példánya a megadott útvonalhoz kijelölt elem(ek)en jelenik meg. Ez a cmdlet képes adatokat beállítani a nyilvántartásban vagy bármely más szolgáltatói elemben lévő fájlokról, kulcsokról és alkulcsokról, ha a Windows PowerShell szolgáltató támogatja a biztonsági információk beállítását. |
Lásd még:
Windows PowerShell szolgáltatók létrehozása