Remove-VMAssignableDevice

Removes information about the assignable devices from a specific virtual machine.

Syntax

Remove-VMAssignableDevice
      [-CimSession <CimSession[]>]
      [-ComputerName <String[]>]
      [-Credential <PSCredential[]>]
      [-VMName] <String[]>
      [-InstancePath <String>]
      [-LocationPath <String>]
      [-Passthru]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Remove-VMAssignableDevice
      [-VMAssignableDevice] <VMAssignedDevice[]>
      [-Passthru]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Description

The Remove-VMAssignableDevice cmdlet removes an assignable device from a specified virtual machine (VM). This is often used in scenarios where a physical device, such as a GPU or network adapter, was previously assigned to a VM and needs to be unassigned.

Examples

Example 1

$params = @{
VMName = "MyVM"
InstancePath = "PCIROOT(0)#PCI(0300)#PCI(0000)#PCI(0800)#PCI(0000)#PCI(1000)"
}
Remove-VMAssignableDevice $params

This example removes a specific assignable device, identified by its instance path, from the virtual machine named MyVM.

Parameters

-CimSession

Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session object, such as the output of a New-CimSession or Get-CimSession cmdlet. The default is the current session on the local computer.

Type:CimSession[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ComputerName

Specifies one or more Hyper-V hosts on the virtual network adapters are to be retrieved. NetBIOS names, IP addresses, and fully qualified domain names are allowed. The default is the local computer. Use localhost or a dot (.) to specify the local computer explicitly.

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

-Confirm

Prompts you for confirmation before running the cmdlet.

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

-Credential

Specifies one or more user accounts that have permission to perform this action. The default is the current user.

Type:PSCredential[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InstancePath

Removes the Device Instance path in the host machine.

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

-LocationPath

Specifies the location path to the assignable device.

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

-Passthru

Returns an object for each process that the cmdlet started.

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

-VMAssignableDevice

Specifies the assignable device object that you want to remove from the virtual machine. This is usually an object retrieved from a cmdlet like Get-VMAssignableDevice.

Type:VMAssignedDevice[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-VMName

Specifies the name of the virtual machine from which you want to remove the assignable device.

Type:String[]
Position:0
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Shows what would happen if the cmdlet runs. The cmdlet is not run.

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

Inputs

Microsoft.HyperV.PowerShell.VMAssignedDevice[]

Outputs

Microsoft.HyperV.PowerShell.VMAssignedDevice