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 Virtual Machine Manager (VMM). 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 nell'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 di porta COM virtuali 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 nell'host è già connessa, la macchina virtuale non può connettersi. 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 utilizza 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 tale 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.

Tipo:Byte
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:True
Accettare caratteri jolly: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.

Tipo:Guid
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-JobVariable

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

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly: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

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly: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.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-PROTipID

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

Tipo:Guid
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-RunAsynchronously

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

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly: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 in qualsiasi unità disco valida nell'host.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-VirtualCOMPort

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

Tipo:VirtualCOMPort
Posizione:0
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-VMHostCOMPort

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

Tipo:Byte
Alias:HostPort
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-VMMServer

Specifica un server VMM.

Tipo:ServerConnection
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:True
Accettare caratteri jolly: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 di connettersi 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.

Tipo:Boolean
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly: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 .