Kimeneti objektumok kiterjesztéseExtending Output Objects

A-parancsmagok, függvények és parancsfájlok által visszaadott .NET-keretrendszerbeli objektumokat kiterjesztheti a következő típusú fájlok használatával: (. ps1xml).You can extend the .NET Framework objects that are returned by cmdlets, functions, and scripts by using types files (.ps1xml). A fájltípusok XML-alapú fájlok, amelyek lehetővé teszik tulajdonságok és metódusok hozzáadását a meglévő objektumokhoz.Types files are XML-based files that let you add properties and methods to existing objects. A Windows PowerShell például a Types.ps1XML-fájlt biztosítja, amely számos meglévő .NET-keretrendszer objektumhoz ad hozzá elemeket.For example, Windows PowerShell provides the Types.ps1xml file, which adds elements to several existing .NET Framework objects. A Types.ps1XML-fájl a Windows PowerShell telepítési könyvtárában ( $pshome ) található.The Types.ps1xml file is located in the Windows PowerShell installation directory ($pshome). Az objektumok további kiterjesztéséhez vagy más objektumok kiterjesztéséhez létrehozhat saját típusú fájlokat is.You can create your own types file to further extend those objects or to extend other objects. Ha egy objektumot kiterjeszt egy Type fájl használatával, az objektum bármely példánya ki lesz bővítve az új elemekkel.When you extend an object by using a types file, any instance of the object is extended with the new elements.

A System. Array objektum kiterjesztéseExtending the System.Array Object

Az alábbi példa bemutatja, hogyan bővíti a Windows PowerShell a System. Array objektumot a Types.ps1XML-fájlban.The following example shows how Windows PowerShell extends the System.Array object in the Types.ps1xml file. Alapértelmezés szerint a System. Array objektumok olyan Length tulajdonsággal rendelkeznek, amely felsorolja a tömbben lévő objektumok számát.By default, System.Array objects have a Length property that lists the number of objects in the array. Mivel azonban a "Length" név nem írja le egyértelműen a tulajdonságot, a Windows PowerShell hozzáadja az Count alias tulajdonságot, amely ugyanazt az értéket jeleníti meg, mint a Length tulajdonság.However, because the name "length" does not clearly describe the property, Windows PowerShell adds the Count alias property, which displays the same value as the Length property. A következő XML hozzáadja a Count tulajdonságot a System. Array típushoz.The following XML adds the Count property to the System.Array type.

<Type>
  <Name>System.Array</Name>
  <Members>
    <AliasProperty>
      <Name>Count</Name>
      <ReferencedMemberName>Length</ReferencedMemberName>
    </AliasProperty>
  </Members>
</Type>

Ha meg szeretné tekinteni ezt az új alias-tulajdonságot, használja a Get-member parancsot bármely tömbön, ahogy az az alábbi példában is látható.To see this new alias property, use a Get-Member command on any array, as shown in the following example.

Get-Member -InputObject (1,2,3,4)

A parancs a következő eredményeket adja vissza.The command returns the following results.

Name           MemberType    Definition
----           ----------    ----------
Count          AliasProperty Count = Length
Address        Method        System.Object& Address(Int32 )
Clone          Method        System.Object Clone()
CopyTo         Method        System.Void CopyTo(Array array, Int32 index):
Equals         Method        System.Boolean Equals(Object obj)
Get            Method        System.Object Get(Int32 )
...
Length         Property      System.Int32 Length {get;}

A Count tulajdonság vagy a Length tulajdonság használatával meghatározhatja, hogy hány objektum található egy tömbben.You can use either the Count property or the Length property to determine how many objects are in an array. Például:For example:

PS> (1, 2, 3, 4).Count
4
PS> (1, 2, 3, 4).Length
4

Egyéni típusok fájljaiCustom Types Files

Egyéni types-fájl létrehozásához először másolja a meglévő típusok fájlját.To create a custom types file, start by copying an existing types file. Az új fájlnak bármilyen neve lehet, de. ps1xml fájlnévkiterjesztéssel kell rendelkeznie.The new file can have any name, but it must have a .ps1xml file name extension. A fájl másolásakor az új fájlt bármely, a Windows PowerShell számára elérhető könyvtárba helyezheti, de hasznos lehet a fájlokat a Windows PowerShell telepítési könyvtárában ( $pshome ) vagy a telepítési könyvtár alkönyvtárában elhelyezni.When you copy the file, you can place the new file in any directory that is accessible to Windows PowerShell, but it is useful to place the files in the Windows PowerShell installation directory ($pshome) or in a subdirectory of the installation directory.

Ha saját kiterjesztett típusokat szeretne hozzáadni a fájlhoz, adjon hozzá egy Type elemet a kiterjeszteni kívánt összes objektumhoz.To add your own extended types to the file, add a types element for each object that you want to extend. A következő témakörök példákat tartalmaznak.The following topics provide examples.

Miután definiálta a saját kiterjesztett típusait, a következő módszerek egyikével teheti elérhetővé a kiterjesztett objektumokat:After you define your own extended types, use one of the following methods to make your extended objects available:

  • Ha szeretné, hogy a kiterjesztett típusok fájlja elérhető legyen az aktuális munkamenet számára, az Update-TypeData parancsmag használatával adja hozzá az új fájlt.To make your extended types file available to the current session, use the Update-TypeData cmdlet to add the new file. Ha azt szeretné, hogy a típusok elsőbbséget élveznek a más típusú fájlokban definiált típusoknál (beleértve a Types.ps1XML-fájlt), használja az PrependData Update-TypeData parancsmag paraméterét.If you want your types to take precedence over the types that are defined in other types files (including the Types.ps1xml file), use the PrependData parameter of the Update-TypeData cmdlet.
  • Ha szeretné, hogy a kiterjesztett típusok fájlja elérhető legyen az összes jövőbeli munkamenet számára, adja hozzá a types fájlt egy modulhoz, exportálja az aktuális munkamenetet, vagy adja hozzá az Update-TypeData parancsot a Windows PowerShell-profilhoz.To make your extended types file available to all future sessions, add the types file to a module, export the current session, or add the Update-TypeData command to your Windows PowerShell profile.

Aláírási típusok fájljaiSigning Types Files

A fájltípusokat digitálisan alá kell írni, hogy megakadályozza az illetéktelen módosítást, mert az XML tartalmazhat parancsfájl-blokkokat.Types files should be digitally signed to prevent tampering because the XML can include script blocks. További információ a digitális aláírások hozzáadásáról: about_SigningFor more information about adding digital signatures, see about_Signing

Lásd még:See Also

Objektumok alapértelmezett tulajdonságainak meghatározásaDefining Default Properties for Objects

Objektumok alapértelmezett módszereinek definiálásaDefining Default Methods for Objects

Objektumok alapértelmezett tagkészleteinek definiálásaDefining Default Member Sets for Objects

Windows PowerShell-parancsmag írásaWriting a Windows PowerShell Cmdlet