【问题标题】:How to remove virtual CD/DVD-ROM如何删除虚拟 CD/DVD-ROM
【发布时间】:2019-05-30 11:58:59
【问题描述】:

在 win10 上我们可以挂载 iso 文件。 为每个挂载的 iso 系统创建虚拟 CD/DVD-rom 驱动器。 要查看这些驱动器,我们可以使用 powershell:

PS C:\> gwmi win32_cdromdrive

Caption Drive Manufacturer VolumeName
------- ----- ------------ ----------
Microsoft Virtual DVD-ROM Volume{b62e0d58-541d-11e6-a1f7-005056873534} (Standard CD-ROM drives)
Microsoft Virtual DVD-ROM Volume{d2c8b686-5410-11e6-a1f6-005056873534} (Standard CD-ROM drives)
Microsoft Virtual DVD-ROM CdRom13 (Standard CD-ROM drives)
Microsoft Virtual DVD-ROM CdRom14 (Standard CD-ROM drives)
Microsoft Virtual DVD-ROM CdRom15 (Standard CD-ROM drives)
Microsoft Virtual DVD-ROM CdRom16 (Standard CD-ROM drives)
Microsoft Virtual DVD-ROM CdRom19 (Standard CD-ROM drives)
Microsoft Virtual DVD-ROM Volume{b62e1bc8-541d-11e6-a1f7-005056873534} (Standard CD-ROM drives)
NECVMWar VMware IDE CDR10 ATA Device D: (Standard CD-ROM drives)

现在我的问题是如何使用 winapi/powershell 删除这些设备?

我知道当你使用 Dismount-DiskImage 卸载特定图像时它们会被删除,但我希望有“强制”选项。

【问题讨论】:

    标签: windows powershell cd-rom


    【解决方案1】:
    $sh = New-Object -ComObject "Shell.Application"
    $sh.Namespace(17).Items() | 
        Where-Object { $_.Type -eq "CD Drive" } | 
            foreach { $_.InvokeVerb("Eject") }
    

    Where-Object { $_.Type -eq "CD Drive" } 你能右键iso驱动你看到什么文件系统吗?

    【讨论】:

    • 工作就像一个魅力 thx !如果有人想为特定驱动程序触发此操作$driveEject = New-Object -comObject Shell.Application$driveEject.Namespace(17).ParseName("E:").InvokeVerb("Eject")
    猜你喜欢
    • 2011-07-12
    • 1970-01-01
    • 1970-01-01
    • 2018-12-22
    • 1970-01-01
    • 2017-02-19
    • 2023-03-31
    • 2012-09-07
    • 1970-01-01
    相关资源
    最近更新 更多