Verwendung eines Aufzählungstyps in Powershell beim Konfigurieren von IIS mithilfe des Powershell-Snap-Ins

8

Ich verwende das IIS PowerShell-Snapin, um eine neue Webanwendung von Grund auf neu zu konfigurieren. Ich bin neu in PS. Das folgende Skript funktioniert nicht, da PS die ManagedPipelineMode-Enumeration nicht erkennt. Wenn ich den Wert auf 0 ändere, wird es funktionieren. Wie kann ich PS dazu bringen, das Enum zu verstehen? Ich habe das Add-Type-Cmdlet ausprobiert und auch die Microsoft.Web.Administration-Assembly ohne irgendeinen Scuccess geladen, diese Zeilen sind jetzt kommentiert.

Wie kann ich dieses PS-Skript mit der Enumeration arbeiten lassen?

%Vor%

Die Fehlermeldung lautet:

  

Set-ItemProperty: [Microsoft.Web.Administration.ManagedPipelineMode] :: Integriert ist kein gültiger Wert für Int32.

    
softveda 02.11.2011, 22:52
quelle

3 Antworten

11

Es erwartet eine Ganzzahl, obwohl die zugrunde liegende Eigenschaft vom Typ ManagaedPipelineMode ist. Sie können jedoch unten tun:

%Vor%

PS:

Anstelle von

%Vor%

können Sie tun:

%Vor%     
manojlds 02.11.2011, 23:16
quelle
2

Betrifft: Add-Type -AssemblyName - Dies funktioniert nur für eine vordefinierte Gruppe von Baugruppen, von denen PowwerShell weiß. Sie müssen die Assembly in Ihrem Dateisystem finden und den Parameter -Path verwenden. Dies funktionierte auf meinem System in einer 64-Bit PowerShell-Konsole:

%Vor%     
Keith Hill 02.11.2011 23:43
quelle
0

Anstatt zu verwenden:

%Vor%

verwenden:

%Vor%

oder das noch prägnanter:

%Vor%

Warum? Der Grund, warum Sie Klammern in der ersten Antwort benötigen, liegt darin, dass der Parameterbinder das gesamte [Microsoft.Web.Administration.ManagedPipelineMode]::Integrated bei Ihrem Versuch als String behandelt, der nicht in diesen Aufzählungstyp umgewandelt werden kann. % Co_de% kann jedoch zu dieser Enumeration gehören. Wenn Sie es in Klammern einschließen, wird es erneut als Ausdruck ausgewertet und als Literal vom Typ "Vollständig" behandelt.

    
x0n 04.11.2011 02:22
quelle

Tags und Links