Jak utworzyć powłokę konsoli

Windows PowerShell udostępnia narzędzie Make-Shell, nazywane również "make-kit", które służy do tworzenia powłoki konsoli, która nie jest rozszerzalna. Powłok utworzonych za pomocą tego nowego narzędzia nie można rozszerzyć później za Windows PowerShell przystawki.

Składnia

Oto składnia używana do uruchamiania Make-Shell z pliku make.

make-shell
  -out n.exe
  -namespace ns
  [ -lib libdirectory1[,libdirectory2,..] ]
  [ -reference ca1.dll[,ca2.dll,...] ]
  [ -formatdata fd1.format.ps1xml[,fd2.format.ps1xml,...] ]
  [ -typedata td1.type.ps1xml[,td2.type.ps1xml,...] ]
  [ -source c1.cs [,c2.cs,...] ]
  [ -authorizationmanager authorizationManagerType ]
  [ -win32icon i.ico ]
  [ -initscript p.ps1 ]
  [ -builtinscript s1.ps1[,s2.ps1,...] ]
  [ -resource resourcefile.txt ]
  [ -cscflags cscFlags ]
  [ -? | -help ]

Parametry

Poniżej znajduje się krótki opis parametrów polecenia Make-Shell.

Przestroga

Ścieżki UNC do zestawów nie są obsługiwane przez program Make-Shell.

Parametr Opis
—out n.exe Wymagane. Nazwa powłoki do produkcji. Ścieżka jest określona jako część tego parametru.

Jeśli wartość nie zostanie określona, .exe "make-shell". Uwaga: Nie należy tworzyć pliku wyjściowego o takiej samej nazwie jak plik wyjściowy, do .dll pliku. Jeśli spróbujemy to zrobić, narzędzie Make-Shell utworzy plik cs o tej samej nazwie, co spowoduje zastąpienie pliku cs z kodem źródłowym polecenia cmdlet.
-przestrzeń nazw ns Wymagane. Przestrzeń nazw do użycia dla pochodnej klasy System.Management.Automation.Runspaces.Runspaceconfiguration, która jest generowana i kompilowana przez zestaw make-kit.
-lib libdirectory1[,libdirectory2,..] Katalogi, w których wyszukiwane są zestawy .NET, w tym zestawy Windows PowerShell, zestawy określone przez parametr, zestawy pośrednio przywołyne przez inny zestaw oraz zestawy systemowe reference .NET.
-reference ca1.dll[,ca2.dll,...] Rozdzielana przecinkami lista zestawów, które mają być dołączane do powłoki. Zestawy te obejmują wszystkie polecenia cmdlet i zestawy dostawców, a także zestawy zasobów, które powinny zostać załadowane. Jeśli ten parametr nie zostanie określony, zostanie przeznaona powłoka zawierająca tylko podstawowe polecenia cmdlet i dostawców dostarczanych przez Windows PowerShell.

Zestawy można określić przy użyciu pełnej ścieżki. W przeciwnym razie zostaną wyszukane przy użyciu ścieżki określonej przez lib parametr .
-formatdata fd1.format.ps1xml[,fd2.format.ps1xml,...] Rozdzielana przecinkami lista danych formatu do dołączyć do powłoki. Jeśli ten parametr nie zostanie określony, wytwarzanych jest powłoka zawierająca tylko dane formatu dostarczone przez Windows PowerShell.
-typedata td1.type.ps1xml[,td2.type.ps1xml,...] Rozdzielana przecinkami lista danych typu, które mają być dołączane do powłoki. Jeśli ten parametr nie zostanie określony, wytwarzanych jest powłoka zawierająca tylko dane typu dostarczone przez Windows PowerShell.
-source c1.cs [,c2.cs,...] Nazwa pliku dostarczonego przez dewelopera powłoki, który zawiera kod źródłowy wymagany do skompilowania powłoki.

Plik kodu źródłowego może zawierać dowolny z następujących kodów źródłowych:

— Implementacja menedżera autoryzacji, która zastępuje domyślnego menedżera autoryzacji. (Można je również skompilować do zestawu).
- Informacyjne deklaracje atrybutów zestawu: takie jak AssemblyCompanyAttribute, AssemblyCopyrightAttribute, AssemblyFileVersionAttribute, AssemblyInformationalVersionAttribute, AssemblyProductAttribute i AssemblyTermarkAttribute.
-authorizationmanager authorizationManagerType Typ, który zawiera implementację menedżera autoryzacji. Można go zdefiniować w kodzie źródłowym lub skompilować do zestawu (określonego przez reference parametr ). Jeśli ten parametr nie zostanie określony, używany jest domyślny menedżer zabezpieczeń. Wartość powinna być pełną nazwą typu, w tym przestrzeniami nazw.
-win32icon i.ico Ikona pliku .exe dla powłoki. Jeśli nie zostanie określony, powłoka będzie mieć ikonę, która będzie uwzględniana przez kompilator języka C# (jeśli taka jest).
-initscript p.ps1 Profil uruchamiania powłoki. Plik jest dołączony "w as-is"; nie jest wykonywane sprawdzanie poprawności przez powłokę Make-Shell.
-builtinscript s1.ps1[,s2.ps1,...] Lista wbudowanych skryptów dla powłoki. Te skrypty są odnalezione przed skryptami w ścieżce i ich zawartości nie można zmienić po s zbudowaniu powłoki.

Pliki są dołączone "w as-is"; nie jest wykonywane sprawdzanie poprawności przez powłokę Make-Shell.
-resource resourcefile.txt Plik .txt zawierający zasoby pomocy i baneru dla powłoki. Pierwszy zasób nosi nazwę ShellHelp i zawiera tekst wyświetlany, jeśli powłoka jest wywoływana za pomocą help parametru . Drugi zasób nosi nazwę ShellBanner i zawiera informacje o tekście i prawach autorskich wyświetlane podczas działania powłoki w trybie interaktywnym.

Jeśli ten parametr nie zostanie podany lub te zasoby nie będą obecne, zostanie użyta ogólna pomoc i transparent.
-cscflags cscFlags Flagi, które powinny być przekazywane do kompilatora języka C# (csc.exe). Są one przekazywane bez zmian. Jeśli ten parametr zawiera spacje, powinien być otoczony cudzysłowami.
-?

— Pomoc
Wyświetla komunikat o prawach autorskich Make-Shell opcje wiersza polecenia.
-verbose Wyświetla szczegółowe informacje podczas tworzenia powłoki.

Zobacz też

Windows PowerShell — przewodnik programisty

Windows PowerShell SDK