【问题标题】:Win32_LogicalDisk Access Property Always Unknown in PowerShellWin32_LogicalDisk 访问属性在 PowerShell 中始终未知
【发布时间】: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


【解决方案1】:

如果驱动器中没有媒体,CD/DVD 驱动器中的Access 字段将为空白。将磁盘插入驱动器后,您可以读取MediaTypeAccess 字段和许多其他信息。

要查找 CD/DVD 的功能,您可以使用 Win32_CDROMDrive MediaType 属性。

PS > Get-WmiObject Win32_CDROMDrive | Select Caption, Drive, MediaType

Caption                                          Drive                                            MediaType                                       
-------                                          -----                                            ---------                                       
hp DVD A  DH16ABLH                               G:                                               DVD Writer

参考 - Checking if a CD/DVD drive is a Writer or just a Cd-Rom using WMI

【讨论】:

  • 如问题所述,我的驱动器中有一张空白 CD。查看编辑了解更多信息。
  • Win32_CDROMDrive 是获取 CD 驱动器的一种比我发布的更简洁的方法。
【解决方案2】:

我最终发现我的 CD/DVD 驱动器即将被淘汰。它不会刻录 DVD 并最终停止读取或刻录任何内容。我认为这与我的烦恼有关。

【讨论】:

    猜你喜欢
    • 2019-03-28
    • 2015-05-29
    • 2011-07-30
    • 1970-01-01
    • 1970-01-01
    • 2011-06-16
    • 1970-01-01
    • 2016-08-23
    • 1970-01-01
    相关资源
    最近更新 更多