Condividi tramite


Set-SCVirtualCOMPort

Modifica le proprietà di una porta COM virtuale per una macchina virtuale, un modello di macchina virtuale o un profilo hardware.

Sintassi

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>]

Descrizione

Il cmdlet Set-SCVirtualCOMPort modifica una o più proprietà di una porta COM (Virtual Communications). Una porta COM virtuale fa parte di una macchina virtuale, di un modello di macchina virtuale o di un profilo hardware usato in un ambiente VMM (Virtual Machine Manager). Specificare una porta COM usando il parametro VirtualCOMPort o specificare un ID porta COM virtuale per il parametro GuestPort . I valori validi per GuestPort sono zero (0) e uno (1).

Questo cmdlet può connettere una porta COM virtuale a una porta COM fisica, a un file di testo o a una named pipe. Questo cmdlet può disconnettere una porta COM virtuale. Se si connette una porta COM virtuale in una macchina virtuale a una porta COM fisica nel relativo host, la macchina virtuale può usare la porta COM fisica per l'input e l'output. I tipi di host supportano i tipi di connessione della porta COM virtuale seguenti:

  • Hyper-V. Si connette solo a una named pipe.
  • VMware ESX. Si connette a una porta COM fisica, a un file di testo o a una named pipe.
  • Citrix XenServer. Non supportato.

Il parametro WaitForModem specifica se una porta COM virtuale in una macchina virtuale si connette immediatamente a una porta COM fisica nell'host all'avvio della macchina virtuale.

Se si specifica un valore di $True per WaitForModem, la macchina virtuale tenta di connettersi alla porta COM fisica nell'host solo se un programma in esecuzione nella macchina virtuale invia un comando modem alla porta COM fisica. Se la porta COM sull'host è già connessa, la macchina virtuale non potrà connettersi a tale porta. Se la macchina virtuale si connette correttamente alla porta COM fisica, la macchina virtuale rilascia successivamente la porta COM fisica al sistema operativo host se il programma nella macchina virtuale che usa la porta COM smette di usare la porta COM.

Se si specifica un valore di $False per WaitForModem, la macchina virtuale tenta di connettersi alla porta COM fisica nell'host non appena viene avviata la macchina virtuale. Se la porta COM nell'host è già acquisita, la macchina virtuale non può connettersi. Si tratta dello stesso comportamento di per un valore di $True. Se la macchina virtuale si connette correttamente alla porta COM fisica, la macchina virtuale non rilascia nuovamente la porta COM fisica al sistema operativo host fino all'arresto della macchina virtuale.

Esempio

Esempio 1: Connettere una porta COM virtuale a una named pipe

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"

Il primo comando ottiene la macchina virtuale denominata VM02 e quindi archivia l'oggetto nella variabile $VM.

Il secondo comando ottiene la porta COM virtuale denominata COM1 da VM02 e quindi archivia tale oggetto nella variabile $COM 1.

L'ultimo comando connette la porta COM virtuale in $COM 1 alla named pipe \Contoso\Pipe\PipeName.

Esempio 2: Disconnettere una porta COM virtuale

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

Il primo comando ottiene la macchina virtuale denominata VM04 e quindi archivia l'oggetto nella variabile $VM.

Il secondo comando ottiene la porta COM virtuale in VM04 denominata COM1 e quindi archivia l'oggetto nella variabile $COM 1.

L'ultimo comando specifica il parametro NoAttach . In questo modo il comando disconnette la porta COM virtuale in $COM 1. È possibile usare questo comando per disconnettere una porta COM virtuale attualmente connessa a una porta COM fisica in un host, a una named pipe o a un file di testo.

Parametri

-GuestPort

Specifica l'ID di una porta COM virtuale in una macchina virtuale. I valori validi sono: 0 e 1.

Type:Byte
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-JobGroup

Specifica un identificatore per una serie di comandi eseguiti come set subito prima dell'esecuzione del comando finale che include lo stesso identificatore del gruppo di processi.

Type:Guid
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-JobVariable

Specifica una variabile in cui viene monitorato e archiviato lo stato del processo.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-NamedPipe

Specifica una named pipe a cui si connette una porta COM virtuale. Gli usi tipici includono la connessione di una macchina virtuale a un programma di debug nell'host. È anche possibile creare un cavo modem Null virtuale tra due macchine virtuali. Specificare una pipe nel formato seguente: \.\NomeComputer\Pipe\PipeName

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-NoAttach

Indica che questo cmdlet specifica che nessuna porta COM fisica su un host, una named pipe o un file si connettono a una porta COM virtuale. Se si specifica questo parametro, il cmdlet disconnette una porta COM virtuale già connessa a una porta COM fisica, a una named pipe o a un file di testo.

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-PROTipID

Specifica l'ID del suggerimento Performance and Resource Optimization (PRO) che ha attivato l'azione. In questo modo è possibile controllare i suggerimenti PRO.

Type:Guid
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RunAsynchronously

Indica che il processo viene eseguito in modo asincrono in modo che il controllo torni immediatamente alla shell dei comandi.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-TextFile

Specifica un file di testo nell'host a cui si connette la porta COM virtuale. La macchina virtuale invia l'output dalla porta COM virtuale il file di testo specificato da questo parametro. Il file di testo può trovarsi su qualsiasi unità disco valida dell'host.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-VirtualCOMPort

Specifica un oggetto porta COM virtuale modificato da questo cmdlet. VMM supporta la configurazione di due porte COM in una macchina virtuale, in un modello o in un profilo hardware.

Type:VirtualCOMPort
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-VMHostCOMPort

Specifica un oggetto porta COM fisico in un server host a cui la macchina virtuale può connettere una porta COM virtuale.

Type:Byte
Aliases:HostPort
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-VMMServer

Specifica un server VMM.

Type:ServerConnection
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-WaitForModem

Indica se una porta COM virtuale in una macchina virtuale si connette immediatamente a una porta COM fisica nell'host all'avvio della macchina virtuale.

Se si specifica un valore di $True, la porta COM virtuale attende la connessione a una porta COM fisica nell'host. Se si specifica un valore di $False, la porta COM virtuale si connette immediatamente a una porta COM fisica nell'host non appena viene avviata la macchina virtuale.

Type:Boolean
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Output

VirtualCOMPort

Questo cmdlet restituisce un oggetto VirtualCOMPort .

Note

  • Richiede un oggetto porta COM virtuale VMM. È possibile recuperare questo oggetto usando il cmdlet Get-SCVirtualCOMPort .