Udostępnij za pośrednictwem


Set-SCVirtualCOMPort

Modyfikuje właściwości wirtualnego portu COM dla maszyny wirtualnej, szablonu maszyny wirtualnej lub profilu sprzętu.

Składnia

Set-SCVirtualCOMPort
   [-VMMServer <ServerConnection>]
   -GuestPort <Byte>
   -VMHostCOMPort <Byte>
   [-WaitForModem <Boolean>]
   -JobGroup <Guid>
   [-RunAsynchronously]
   [-PROTipID <Guid>]
   [-JobVariable <String>]
   [<CommonParameters>]
Set-SCVirtualCOMPort
   [-VMMServer <ServerConnection>]
   -GuestPort <Byte>
   -TextFile <String>
   -JobGroup <Guid>
   [-RunAsynchronously]
   [-PROTipID <Guid>]
   [-JobVariable <String>]
   [<CommonParameters>]
Set-SCVirtualCOMPort
   [-VMMServer <ServerConnection>]
   -GuestPort <Byte>
   [-NoAttach]
   -JobGroup <Guid>
   [-RunAsynchronously]
   [-PROTipID <Guid>]
   [-JobVariable <String>]
   [<CommonParameters>]
Set-SCVirtualCOMPort
   [-VMMServer <ServerConnection>]
   -GuestPort <Byte>
   -NamedPipe <String>
   -JobGroup <Guid>
   [-RunAsynchronously]
   [-PROTipID <Guid>]
   [-JobVariable <String>]
   [<CommonParameters>]
Set-SCVirtualCOMPort
   [-VirtualCOMPort] <VirtualCOMPort>
   -TextFile <String>
   [-JobGroup <Guid>]
   [-RunAsynchronously]
   [-PROTipID <Guid>]
   [-JobVariable <String>]
   [<CommonParameters>]
Set-SCVirtualCOMPort
   [-VirtualCOMPort] <VirtualCOMPort>
   [-NoAttach]
   [-JobGroup <Guid>]
   [-RunAsynchronously]
   [-PROTipID <Guid>]
   [-JobVariable <String>]
   [<CommonParameters>]
Set-SCVirtualCOMPort
   [-VirtualCOMPort] <VirtualCOMPort>
   -VMHostCOMPort <Byte>
   [-WaitForModem <Boolean>]
   [-JobGroup <Guid>]
   [-RunAsynchronously]
   [-PROTipID <Guid>]
   [-JobVariable <String>]
   [<CommonParameters>]
Set-SCVirtualCOMPort
   [-VirtualCOMPort] <VirtualCOMPort>
   -NamedPipe <String>
   [-JobGroup <Guid>]
   [-RunAsynchronously]
   [-PROTipID <Guid>]
   [-JobVariable <String>]
   [<CommonParameters>]

Opis

Polecenie cmdlet Set-SCVirtualCOMPort modyfikuje co najmniej jedną właściwość portu komunikacji wirtualnej (COM). Wirtualny port COM jest częścią maszyny wirtualnej, szablonu maszyny wirtualnej lub profilu sprzętu używanego w środowisku programu Virtual Machine Manager (VMM). Określ port COM przy użyciu parametru VirtualCOMPort lub określ identyfikator portu com wirtualnego dla parametru GuestPort. Prawidłowe wartości dla GuestPort to zero (0) i jedna (1).

To polecenie cmdlet może połączyć wirtualny port COM z fizycznym portem COM, z plikiem tekstowym lub z nazwanym potokiem. To polecenie cmdlet może odłączyć wirtualny port COM. W przypadku połączenia wirtualnego portu COM na maszynie wirtualnej z fizycznym portem COM na jego hoście maszyna wirtualna może używać fizycznego portu COM dla danych wejściowych i wyjściowych. Typy hostów obsługują następujące typy połączeń wirtualnych portów COM:

  • Funkcja Hyper-V. Łączy się tylko z nazwanym potokiem.
  • VMware ESX. Nawiązuje połączenie z fizycznym portem COM, plikiem tekstowym lub nazwanym potokiem.
  • Citrix XenServer. Nieobsługiwane.

Parametr WaitForModem określa, czy port wirtualny COM na maszynie wirtualnej łączy się natychmiast z fizycznym portem COM na hoście po uruchomieniu maszyny wirtualnej.

Jeśli określisz wartość $True dla WaitForModem, maszyna wirtualna próbuje nawiązać połączenie z fizycznym portem COM na hoście tylko wtedy, gdy program uruchomiony na maszynie wirtualnej wysyła polecenie modemu do fizycznego portu COM. Jeśli port COM na hoście jest już połączony, maszyna wirtualna nie może nawiązać z nim połączenia. Jeśli maszyna wirtualna pomyślnie łączy się z fizycznym portem COM, maszyna wirtualna później zwalnia fizyczny port COM z powrotem do systemu operacyjnego hosta, jeśli program na maszynie wirtualnej korzystającej z portu COM przestanie używać portu COM.

Jeśli określisz wartość $False dla WaitForModem, maszyna wirtualna próbuje nawiązać połączenie z fizycznym portem COM na hoście natychmiast po uruchomieniu maszyny wirtualnej. Jeśli port COM na hoście jest już przechwycony, maszyna wirtualna nie może nawiązać z nim połączenia. Jest to takie samo zachowanie jak w przypadku wartości $True. Jeśli maszyna wirtualna pomyślnie łączy się z fizycznym portem COM, maszyna wirtualna nie zwalnia fizycznego portu COM z powrotem do systemu operacyjnego hosta, dopóki maszyna wirtualna nie zostanie zamknięta.

Przykłady

Przykład 1. Łączenie wirtualnego portu COM z nazwanym potokiem

PS C:\> $VM = Get-SCVirtualMachine -Name "VM02"
PS C:\> $COM1 = Get-SCVirtualCOMPort -VM $VM | where {$_.Name -eq "COM1"}
PS C:\> Set-SCVirtualCOMPort -VirtualCOMPort $COM1 -NamedPipe "\\Contoso\Pipe\PipeName"

Pierwsze polecenie pobiera maszynę wirtualną o nazwie VM02, a następnie przechowuje ten obiekt w zmiennej $VM.

Drugie polecenie pobiera wirtualny port COM o nazwie COM1 z maszyny wirtualnej VM02, a następnie przechowuje ten obiekt w zmiennej $COM 1.

Ostatnie polecenie łączy wirtualny port COM w $COM 1 z nazwanym potokiem \Contoso\Pipe\PipeName.

Przykład 2. Odłączanie wirtualnego portu COM

PS C:\> $VM = Get-SCVirtualMachine -Name "VM04"
PS C:\> $COM1 = Get-SCVirtualCOMPort -VM $VM | where {$_.Name -eq "COM1"}
PS C:\> Set-SCVirtualCOMPort -VirtualCOMPort $COM1 -NoAttach

Pierwsze polecenie pobiera maszynę wirtualną o nazwie VM04, a następnie przechowuje ten obiekt w zmiennej $VM.

Drugie polecenie pobiera wirtualny port COM na maszynie wirtualnej VM04 o nazwie COM1, a następnie przechowuje ten obiekt w zmiennej $COM 1.

Ostatnie polecenie określa parametr NoAttach. Powoduje to rozłączenie wirtualnego portu COM w $COM 1. Tego polecenia można użyć do odłączenia wirtualnego portu COM, który jest obecnie połączony z fizycznym portem COM na hoście, z nazwanym potokiem lub z plikiem tekstowym.

Parametry

-GuestPort

Określa identyfikator wirtualnego portu COM na maszynie wirtualnej. Prawidłowe wartości to: 0 i 1.

Typ:Byte
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-JobGroup

Określa identyfikator serii poleceń uruchamianych jako zestaw tuż przed ostatnim poleceniem zawierającym ten sam identyfikator grupy zadań.

Typ:Guid
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-JobVariable

Określa zmienną, w której postęp zadania jest śledzony i przechowywany.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-NamedPipe

Określa nazwany potok, z którym łączy się wirtualny port COM. Typowe zastosowania obejmują łączenie maszyny wirtualnej z programem debugowania na hoście. Można również utworzyć wirtualny modemu o wartości null między dwiema maszynami wirtualnymi. Określ potok w następującym formacie: \.\ComputerName\Pipe\PipeName

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-NoAttach

Wskazuje, że to polecenie cmdlet określa, że nie ma fizycznego portu COM na hoście, nazwanym potoku lub pliku nawiązywać połączenie z wirtualnym portem COM. Jeśli określisz ten parametr, polecenie cmdlet rozłącza wirtualny port COM, który jest już połączony z fizycznym portem COM, z nazwanym potokiem lub z plikiem tekstowym.

Typ:SwitchParameter
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-PROTipID

Określa identyfikator porady wydajności i optymalizacji zasobów (PRO), która wyzwoliła tę akcję. Umożliwia to inspekcję porad PRO.

Typ:Guid
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-RunAsynchronously

Wskazuje, że zadanie jest uruchamiane asynchronicznie, aby kontrolka natychmiast wracała do powłoki poleceń.

Typ:SwitchParameter
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-TextFile

Określa plik tekstowy na hoście, z którym łączy się wirtualny port COM. Maszyna wirtualna wysyła dane wyjściowe z wirtualnego portu COM plik tekstowy określony przez ten parametr. Plik tekstowy może znajdować się na dowolnym prawidłowym dysku na hoście.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-VirtualCOMPort

Określa wirtualny obiekt portu COM, który modyfikuje to polecenie cmdlet. Program VMM obsługuje konfigurowanie dwóch portów COM na maszynie wirtualnej, szablonie lub profilu sprzętu.

Typ:VirtualCOMPort
Position:0
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-VMHostCOMPort

Określa fizyczny obiekt portu COM na serwerze hosta, z którym maszyna wirtualna może połączyć wirtualny port COM.

Typ:Byte
Aliasy:HostPort
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-VMMServer

Określa serwer programu VMM.

Typ:ServerConnection
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-WaitForModem

Wskazuje, czy wirtualny port COM na maszynie wirtualnej łączy się natychmiast z fizycznym portem COM na hoście po uruchomieniu maszyny wirtualnej.

Jeśli określisz wartość $True, wirtualny port COM czeka na połączenie z fizycznym portem COM na hoście. Jeśli określisz wartość $False, port wirtualny COM połączy się natychmiast z fizycznym portem COM na hoście zaraz po uruchomieniu maszyny wirtualnej.

Typ:Boolean
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

Dane wyjściowe

VirtualCOMPort

To polecenie cmdlet zwraca obiekt VirtualCOMPort.

Uwagi

  • Wymaga wirtualnego obiektu portu COM programu VMM. Ten obiekt można pobrać przy użyciu polecenia cmdlet Get-SCVirtualCOMPort.