Add-Type
Přidá třídu Microsoft .NET do relace PowerShellu.
Syntaxe
FromSource (Výchozí)
Add-Type
[-TypeDefinition] <String>
[-Language <Language>]
[-ReferencedAssemblies <String[]>]
[-OutputAssembly <String>]
[-OutputType <OutputAssemblyType>]
[-PassThru]
[-IgnoreWarnings]
[-CompilerOptions <String[]>]
[<CommonParameters>]
FromMember
Add-Type
[-Name] <String>
[-MemberDefinition] <String[]>
[-Namespace <String>]
[-UsingNamespace <String[]>]
[-Language <Language>]
[-ReferencedAssemblies <String[]>]
[-OutputAssembly <String>]
[-OutputType <OutputAssemblyType>]
[-PassThru]
[-IgnoreWarnings]
[-CompilerOptions <String[]>]
[<CommonParameters>]
FromPath
Add-Type
[-Path] <String[]>
[-ReferencedAssemblies <String[]>]
[-OutputAssembly <String>]
[-OutputType <OutputAssemblyType>]
[-PassThru]
[-IgnoreWarnings]
[-CompilerOptions <String[]>]
[<CommonParameters>]
FromLiteralPath
Add-Type
-LiteralPath <String[]>
[-ReferencedAssemblies <String[]>]
[-OutputAssembly <String>]
[-OutputType <OutputAssemblyType>]
[-PassThru]
[-IgnoreWarnings]
[-CompilerOptions <String[]>]
[<CommonParameters>]
FromAssemblyName
Add-Type
-AssemblyName <String[]>
[-PassThru]
[<CommonParameters>]
Description
Rutina Add-Type umožňuje definovat třídu Microsoft .NET Core v relaci PowerShellu. Objekty pak můžete vytvořit instanci pomocí New-Object rutiny a objekty používat stejně jako jakýkoli objekt .NET Core. Pokud do profilu PowerShellu přidáte příkaz Add-Type, bude třída dostupná ve všech relacích PowerShellu.
Typ můžete zadat zadáním existujícího sestavení nebo souborů zdrojového kódu nebo můžete zadat zdrojový kód vložený nebo uložený v proměnné. Můžete dokonce zadat pouze metodu a Add-Type definuje a generuje třídu. Ve Windows můžete pomocí této funkce v PowerShellu volat volání nespravovaných funkcí (P/Invoke). Pokud zadáte zdrojový kód, Add-Type zkompiluje zadaný zdrojový kód a vygeneruje sestavení v paměti, které obsahuje nové typy .NET Core.
Parametry Add-Type můžete použít k určení alternativního jazyka a kompilátoru, jazyk C# je výchozí, možnosti kompilátoru, závislosti sestavení, obor názvů třídy, názvy typu a výsledné sestavení.
Počínaje PowerShellem 7 Add-Type typ zkompiluje, pokud již existuje typ se stejným názvem. Také Add-Type hledá sestavení ve složce ref ve složce, která obsahuje pwsh.dll.
Příklady
Příklad 1: Přidání typu .NET do relace
Tento příklad přidá třídu BasicTest do relace zadáním zdrojového kódu, který je uložen v proměnné. Třída BasicTest slouží k přidání celých čísel, vytvoření objektu a násobení celých čísel.
$Source = @"
public class BasicTest
{
public static int Add(int a, int b)
{
return (a + b);
}
public int Multiply(int a, int b)
{
return (a * b);
}
}
"@
Add-Type -TypeDefinition $Source
[BasicTest]::Add(4, 3)
$BasicTestObject = New-Object BasicTest
$BasicTestObject.Multiply(5, 2)
Proměnná $Source ukládá zdrojový kód pro třídu. Typ má statickou metodu s názvem Add a nestatická metoda s názvem Multiply.
Rutina Add-Type přidá třídu do relace. Vzhledem k tomu, že používá vložený zdrojový kód, příkaz používá parametr TypeDefinition k určení kódu v proměnné $Source.
Add statická metoda třídy BasicTest používá k určení statického člena třídy dvojité dvojtečky (::). Přičtou se celá čísla a zobrazí se součet.
Rutina New-Object vytvoří instanci třídy BasicTest. Uloží nový objekt do proměnné $BasicTestObject.
$BasicTestObject používá metodu Multiply. Celá čísla se vynásobí a zobrazí se součin.
Příklad 2: Prozkoumání přidaného typu
Tento příklad používá rutinu Get-Member k prozkoumání objektů, které Add-Type a New-Object rutiny vytvořené v Příklad 1.
[BasicTest] | Get-Member
TypeName: System.RuntimeType
Name MemberType Definition
---- ---------- ----------
AsType Method type AsType()
Clone Method System.Object Clone(), System.Object ICloneable.Clone()
Equals Method bool Equals(System.Object obj), bool Equals(type o)
FindInterfaces Method type[] FindInterfaces(System.Reflection.TypeFilter filter...
...
[BasicTest] | Get-Member -Static
TypeName: BasicTest
Name MemberType Definition
---- ---------- ----------
Add Method static int Add(int a, int b)
Equals Method static bool Equals(System.Object objA, System.Object objB)
new Method BasicTest new()
ReferenceEquals Method static bool ReferenceEquals(System.Object objA, System.Object objB)
$BasicTestObject | Get-Member
TypeName: BasicTest
Name MemberType Definition
---- ---------- ----------
Equals Method bool Equals(System.Object obj)
GetHashCode Method int GetHashCode()
GetType Method type GetType()
Multiply Method int Multiply(int a, int b)
ToString Method string ToString()
Rutina Get-Member získá typ a členy třídy BasicTest, která Add-Type přidána do relace. Příkaz Get-Member zjistí, že se jedná o objekt System.RuntimeType odvozený z třídy System.Object.
Parametr Get-MemberStatic získá statické vlastnosti a metody třídy BasicTest. Výstup ukazuje, že je zahrnuta metoda Add.
Rutina Get-Member získá členy objektu uloženého v proměnné $BasicTestObject.
$BasicTestObject byl vytvořen pomocí rutiny New-Object s BasicTest třídy. Výstup ukazuje, že hodnota proměnné $BasicTestObject je instance třídy BasicTest a že obsahuje člen volaný Multiply.
Příklad 3: Přidání typů ze sestavení
Tento příklad přidá třídy ze sestavení JsonSchema.NET.dll do aktuální relace.
Set-Location -Path $PSHOME
$AccType = Add-Type -AssemblyName *jsonschema* -PassThru
Set-Location používá parametr Path k určení proměnné $PSHOME. Proměnná odkazuje na instalační adresář PowerShellu, kde se nachází soubor DLL.
Proměnná $AccType ukládá objekt vytvořený pomocí rutiny Add-Type.
Add-Type používá parametr AssemblyName k zadání názvu sestavení. Zástupný znak hvězdičky (*) umožňuje získat správné sestavení, i když si nejste jisti názvem nebo jeho pravopisem. Parametr PassThru generuje objekty, které představují třídy přidané do relace.
Příklad 4: Volání nativních rozhraní API systému Windows
Tento příklad ukazuje, jak volat nativní rozhraní API systému Windows v PowerShellu.
Add-Type používá mechanismus Volání platformy (P/Invoke) k volání funkce v User32.dll z PowerShellu. Tento příklad funguje jenom na počítačích s operačním systémem Windows.
$Signature = @"
[DllImport("user32.dll")]public static extern bool ShowWindowAsync(IntPtr hWnd, int nCmdShow);
"@
$addTypeSplat = @{
MemberDefinition = $Signature
Name = "Win32ShowWindowAsync"
Namespace = 'Win32Functions'
PassThru = $true
}
$ShowWindowAsync = Add-Type @addTypeSplat
# Minimize the PowerShell console
$ShowWindowAsync::ShowWindowAsync((Get-Process -Id $PID).MainWindowHandle, 2)
# Restore the PowerShell console
$ShowWindowAsync::ShowWindowAsync((Get-Process -Id $PID).MainWindowHandle, 4)
Proměnná $Signature ukládá podpis jazyka C# funkce ShowWindowAsync. Aby se zajistilo, že výsledná metoda je viditelná v relaci PowerShellu, public klíčové slovo bylo přidáno do standardního podpisu. Další informace naleznete v tématu ShowWindowAsync funkce.
Proměnná $ShowWindowAsync ukládá objekt vytvořený parametrem Add-TypePassThru.
Rutina Add-Type přidá funkci ShowWindowAsync do relace PowerShellu jako statickou metodu. Příkaz používá parametr MemberDefinition k určení definice metody uložené v proměnné $Signature. Příkaz používá parametry Name a Namespace k určení názvu a oboru názvů pro třídu. Parametr PassThru generuje objekt, který představuje typy.
Nová ShowWindowAsync statická metoda se používá v příkazech k minimalizaci a obnovení konzoly PowerShellu. Metoda má dva parametry: popisovač okna a celé číslo, které určuje způsob zobrazení okna.
Pokud chcete minimalizovat konzolu PowerShellu, ShowWindowAsync používá rutinu Get-Process s $PID automatickou proměnnou k získání procesu hostujícího aktuální relaci PowerShellu. Pak používá MainWindowHandle vlastnost aktuálního procesu a hodnotu 2, která představuje hodnotu SW_MINIMIZE.
Chcete-li okno obnovit, ShowWindowAsync používá hodnotu 4 pro pozici okna, která představuje hodnotu SW_RESTORE.
K maximalizaci okna použijte hodnotu 3, která představuje SW_MAXIMIZE.
Parametry
-AssemblyName
Určuje název sestavení, které obsahuje typy.
Add-Type přebírá typy ze zadaného sestavení. Tento parametr se vyžaduje při vytváření typů na základě názvu sestavení.
Zadejte úplný nebo jednoduchý název sestavení, označovaný také jako částečný název sestavení. V názvu sestavení jsou povoleny zástupné znaky. Pokud zadáte jednoduchý nebo částečný název, Add-Type ho přeloží na úplný název a pak použije úplný název k načtení sestavení.
Použití parametrů Cesta nebo LiteralPath zaručuje, že načítáte sestavení, které chcete načíst. Pokud použijete parametr AssemblyName, PowerShell požádá rozhraní .NET o překlad názvu sestavení pomocí standardního procesu překladu sestavení .NET. Vzhledem k tomu, že .NET nejprve prohledá složku aplikace, Add-Type může načíst sestavení z $PSHOME místo verze v aktuální složce. Další informace naleznete v tématu umístění sestavení.
Pokud se rozhraní .NET nepodaří přeložit název, PowerShell vyhledá sestavení v aktuálním umístění. Při použití zástupných znaků v parametru AssemblyName proces překladu sestavení .NET selže, což způsobí, že PowerShell bude hledat v aktuálním umístění.
Vlastnosti parametru
| Typ: | String[] |
| Default value: | None |
| Podporuje zástupné znaky: | True |
| DontShow: | False |
| Aliasy: | JAKÝSI |
Sady parametrů
FromAssemblyName
| Position: | Named |
| Povinné: | True |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-CompilerOptions
Určuje možnosti kompilátoru zdrojového kódu. Tyto možnosti se odešlou kompilátoru bez revize.
Tento parametr umožňuje nasměrovat kompilátor tak, aby vygeneroval spustitelný soubor, prostředky pro vložení nebo nastavil možnosti příkazového řádku, jako je například možnost /unsafe.
Vlastnosti parametru
| Typ: | String[] |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
FromSource
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
FromMember
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
FromPath
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
FromLiteralPath
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-IgnoreWarnings
Ignoruje upozornění kompilátoru. Tento parametr použijte, pokud chcete zabránit Add-Type zpracování upozornění kompilátoru jako chyb.
Vlastnosti parametru
| Typ: | SwitchParameter |
| Default value: | False |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
FromSource
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
FromMember
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
FromPath
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
FromLiteralPath
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-Language
Určuje jazyk, který se používá ve zdrojovém kódu. Přijatelná hodnota pro tento parametr je CSharp.
Vlastnosti parametru
| Typ: | Language |
| Default value: | CSharp |
| Přípustné hodnoty: | CSharp |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
FromSource
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
FromMember
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-LiteralPath
Určuje cestu k souborům zdrojového kódu nebo souborům DLL sestavení, které obsahují typy. Na rozdíl od Pathse hodnota parametru LiteralPath používá přesně tak, jak je zadaný. Žádný znak není interpretován jako zástupný znak. Pokud cesta obsahuje únikové znaky, uzavřete ji do jednoduchých uvozovek. Jednoduché uvozovky říkají PowerShellu, aby žádné znaky neinterpretoval jako únikové sekvence.
Použití parametrů Cesta nebo LiteralPath zaručuje, že načítáte sestavení, které chcete načíst.
Vlastnosti parametru
| Typ: | String[] |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
| Aliasy: | PSPath, PO |
Sady parametrů
FromLiteralPath
| Position: | Named |
| Povinné: | True |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-MemberDefinition
Určuje nové vlastnosti nebo metody pro třídu.
Add-Type vygeneruje kód šablony, který je nutný pro podporu vlastností nebo metod.
Ve Windows můžete pomocí této funkce v PowerShellu volat volání nespravovaných funkcí (P/Invoke).
Vlastnosti parametru
| Typ: | String[] |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
FromMember
| Position: | 1 |
| Povinné: | True |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-Name
Určuje název třídy, která se má vytvořit. Tento parametr se vyžaduje při generování typu z definice člena.
Název typu a obor názvů musí být v rámci relace jedinečný. Typ nelze uvolnit ani ho změnit. Pokud chcete změnit kód pro typ, musíte změnit název nebo spustit novou relaci PowerShellu. Jinak příkaz selže.
Vlastnosti parametru
| Typ: | String |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
FromMember
| Position: | 0 |
| Povinné: | True |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-Namespace
Ve výchozím nastavení tento příkaz vytvoří typ v Microsoft.PowerShell.Commands.AddType.AutoGeneratedTypes oboru názvů. Při použití tohoto parametru se typ vytvoří v zadaném oboru názvů. Pokud hodnota prázdného řetězce, typ se vytvoří v globálním oboru názvů.
Vlastnosti parametru
| Typ: | String |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
| Aliasy: | NS |
Sady parametrů
FromMember
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-OutputAssembly
Vygeneruje soubor KNIHOVNY DLL pro sestavení se zadaným názvem v umístění. Zadejte volitelnou cestu a název souboru. Jsou povoleny zástupné znaky. Ve výchozím nastavení Add-Type generuje sestavení pouze v paměti. Pokud vypíšete sestavení do souboru, měli byste zahrnout parametr PassThru, který vrátí typ z nově vytvořeného sestavení.
Vlastnosti parametru
| Typ: | String |
| Default value: | None |
| Podporuje zástupné znaky: | True |
| DontShow: | False |
| Aliasy: | OA |
Sady parametrů
FromSource
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
FromMember
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
FromPath
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
FromLiteralPath
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-OutputType
Určuje výstupní typ výstupního sestavení. Ve výchozím nastavení není zadán žádný typ výstupu. Tento parametr je platný pouze v případě, že je v příkazu zadáno výstupní sestavení. Další informace o hodnotách naleznete v tématu OutputAssemblyType Výčet.
Přijatelné hodnoty pro tento parametr jsou následující:
ConsoleApplicationLibraryWindowsApplication
Důležité
Od PowerShellu 7.1 se ConsoleApplication a WindowsApplication nepodporují a PowerShell vyvolá ukončovací chybu, pokud jsou některé z těchto hodnot zadané jako hodnoty pro parametr OutputType.
Vlastnosti parametru
| Typ: | OutputAssemblyType |
| Default value: | None |
| Přípustné hodnoty: | ConsoleApplication, Library, WindowsApplication |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
| Aliasy: | OT |
Sady parametrů
FromSource
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
FromMember
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
FromPath
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
FromLiteralPath
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-PassThru
Vrátí objekt System.Runtime, který představuje přidané typy. Ve výchozím nastavení tato rutina negeneruje žádný výstup. Tento parametr použijte, pokud jste použili OutputAssembly k vytvoření souboru KNIHOVNY DLL a chcete vrátit typ z nově vytvořeného sestavení.
Vlastnosti parametru
| Typ: | SwitchParameter |
| Default value: | False |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-Path
Určuje cestu k souborům zdrojového kódu nebo souborům DLL sestavení, které obsahují typy.
Pokud odesíláte soubory zdrojového kódu, Add-Type zkompiluje kód v souborech a vytvoří sestavení typů v paměti. Přípona souboru zadaná v hodnotě Path určuje kompilátor, který Add-Type používá.
Použití parametrů Cesta nebo LiteralPath zaručuje, že načítáte sestavení, které chcete načíst.
Vlastnosti parametru
| Typ: | String[] |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
FromPath
| Position: | 0 |
| Povinné: | True |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-ReferencedAssemblies
Určuje sestavení, na kterých typ závisí. Ve výchozím nastavení Add-Type odkazy System.dll a System.Management.Automation.dll. Počínaje PowerShellem 6 ReferencedAssemblies neobsahuje výchozí sestavení .NET. Do hodnoty předané tomuto parametru musíte zahrnout konkrétní odkaz.
Vlastnosti parametru
| Typ: | String[] |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
| Aliasy: | Agent rekonfigurace |
Sady parametrů
FromSource
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
FromMember
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
FromPath
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
FromLiteralPath
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-TypeDefinition
Určuje zdrojový kód, který obsahuje definice typu. Zadejte zdrojový kód do řetězce nebo řetězce sem nebo zadejte proměnnou, která obsahuje zdrojový kód. Další informace o řetězcích zde naleznete v tématu about_Quoting_Rules.
Do definice typu zahrňte deklaraci oboru názvů. Pokud deklaraci oboru názvů vynecháte, může mít váš typ stejný název jako jiný typ nebo zástupce jiného typu, což způsobí neúmyslné přepsání. Pokud například definujete typ s názvem Výjimka, skripty, které používají Výjimka jako zástupce pro System.Exception selžou.
Vlastnosti parametru
| Typ: | String |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
FromSource
| Position: | 0 |
| Povinné: | True |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-UsingNamespace
Určuje další obory názvů, které jsou požadovány pro třídu. To se podobá klíčovému slovu C# Using.
Ve výchozím nastavení Add-Type odkazuje na obor názvů System. Pokud se použije parametr MemberDefinition, Add-Type ve výchozím nastavení odkazuje také na obor názvů System.Runtime.InteropServices obor názvů. Obory názvů, které přidáte pomocí parametru UsingNamespace, se kromě výchozích oborů názvů odkazují.
Vlastnosti parametru
| Typ: | String[] |
| Default value: | System namespace |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
| Aliasy: | Using |
Sady parametrů
FromMember
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
CommonParameters
Tato rutina podporuje běžné parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction a -WarningVariable. Další informace najdete v about_CommonParameters.
Vstupy
None
Do tohoto cmdletu nemůžete předávat objekty.
Výstupy
None
Ve výchozím nastavení tato rutina nevrací žádný výstup.
Type
Pokud použijete parametr PassThru, vrátí tato rutina objekt System.Type představující nový typ.
Poznámky
Typy, které přidáte, existují pouze v aktuální relaci. Pokud chcete použít typy ve všech relacích, přidejte je do profilu PowerShellu. Další informace o profilu najdete v tématu about_Profiles.
Názvy typů a obory názvů musí být v rámci relace jedinečné. Typ nelze uvolnit ani ho změnit. Pokud potřebujete změnit kód pro typ, musíte změnit název nebo spustit novou relaci PowerShellu. Jinak příkaz selže.
Ve Windows PowerShellu (verze 5.1 a novější) musíte použít Add-Type pro cokoli, co ještě není načtené. Nejčastěji se to týká sestavení nalezených v globální mezipaměti sestavení (GAC).
V PowerShellu 6 a novějším není k dispozici žádný GAC, takže PowerShell nainstaluje vlastní sestavení do $PSHOME.
Tato sestavení se automaticky načtou na žádost, takže není nutné je načíst pomocí Add-Type. Použití Add-Type ale stále umožňuje implicitně kompatibilní skripty s libovolnou verzí PowerShellu.
Sestavení v GAC lze načíst podle názvu typu, nikoli podle cesty. Načítání sestavení z libovolné cesty vyžaduje Add-Type, protože tato sestavení nelze načíst automaticky.