Свойство Win32_LogicalDisk Access всегда неизвестно в PowerShell

Я использую простой скрипт для проверки состояния приводов 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 на моей машине, но параметр Access всегда возвращается как 0 (Unknown), даже если в привод вставлен записываемый CD. Я попытался отформатировать компакт-диск так, чтобы он использовался так же, как устройство USB (в отличие от музыкального компакт-диска), чтобы я мог открыть его для просмотра файловой структуры (файлов нет), но это ничего не меняет.

Разве свойство Access не должно давать мне 2, 3 или 4 вместо 0?

РЕДАКТИРОВАТЬ:

Я попытался вставить воспроизводимый DVD и CD. DVD не читает, CD работает, хотя. Я также смог записать компакт-диск и воспроизводить его на обычном проигрывателе компакт-дисков. На протяжении всего этого процесса я выполнял команду, данную Яном ниже, и каждый раз получал один и тот же вывод:

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, но я не знаю. Это был отремонтированный рабочий стол. Существуют ли более надежные способы проверки наличия записываемого CD с использованием PS?

2 ответа

Решение

В конце концов я обнаружил, что мой привод CD/DVD выходил из строя. Он не будет записывать DVD и в конечном итоге перестанет читать или записывать что-либо. Я полагаю, это как-то связано с моими проблемами.

Access поле в приводе CD/DVD будет пустым, если в приводе нет носителя. Вставив диск в дисковод, вы можете прочитать MediaType, Access поля и много другой информации.

Чтобы найти возможности CD/DVD вы можете использовать Win32_CDROMDriveMediaType имущество.

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

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

Ссылка - Проверка, является ли CD/DVD-привод записывающим или просто CD-Rom с использованием WMI

Другие вопросы по тегам