【发布时间】:2015-06-20 00:10:14
【问题描述】:
我正在使用一个简单的脚本来检查机器上 CD/DVD 驱动器的状态。我希望能够判断某个驱动器是否可写。我有以下测试代码:
$script_obj = new-object -comobject wscript.shell
$drives = @(Get-WmiObject win32_logicaldisk -filter 'DriveType=5')
$script_obj.popup($drives[0].DeviceID + " " + $drives[0].Access)
这将显示我机器上 CD/DVD 驱动器的驱动器盘符,但即使我在驱动器中插入了可写 CD,访问参数总是返回为 0(未知)。我尝试将 CD 格式化为与 USB 设备(而不是音乐 CD)一样使用,以便我可以打开它来浏览文件结构(没有文件),但这并没有改变任何东西。
Access 属性不应该给我 2 或 3 或 4 而不是 0?
编辑:
我尝试插入可播放的 DVD 和 CD。 DVD 无法读取,但 CD 可以工作。我还可以刻录 CD 并在普通 CD 播放器上播放。在整个过程中,我运行了下面 Jan 给出的命令,每次都得到相同的输出:
PS C:\Users\ian> Get-WmiObject Win32_CDROMDrive | Select Caption, Drive, MediaType, Access
Caption Drive MediaType Access
------- ----- --------- ------
hp CDDVDW SH-216AL D: DVD Writer
无论是否将任何东西插入驱动器D,或者它是什么类型的磁盘,这都是输出。我怀疑我的驱动器坏了,因为它不能读取视频 DVD,但我不知道。这是一个翻新的桌面。有没有更可靠的方法来使用 PS 检查可写 CD?
【问题讨论】:
-
你确定你没有任何虚拟光驱或类似的东西吗?您只查看数组中的第一个对象。检查
$drives的结果(只是在控制台中没有别的),也许你会找到其他人? -
@Matt:是的,我确定我没有虚拟驱动器。该脚本打印出我检查过的驱动器号,它是我的物理 CD/DVD 驱动器。
-
啊,你怀疑它不工作......那么有两件事。我想知道是否在 DVD 驱动器属性上选中了“在此驱动器上启用录制”框(不应解释为什么它具有空白访问权限。主要只是好奇)。消费者音乐CD也有用吗?这将有助于缩小失败的可能性。这是我用来测试旧 cd rom 驱动器的伎俩。
-
我在 D 盘属性的“录制”选项卡中没有看到“启用录制”复选框。我可以刻录和读取 CD。
标签: powershell cd-drive