2015-06-20 26 views
0

我正在使用一個簡單的腳本來檢查計算機上CD/DVD驅動器的狀態。我希望能夠判斷某個驅動器是否可寫入。我有以下的測試代碼:Win32_LogicalDisk訪問屬性在PowerShell中始終未知

$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(未知),即使我有一個可寫CD插入進入驅動器。我嘗試格式化CD,使其與USB設備(相對於音樂CD)相同,以便我可以打開它來瀏覽文件結構(沒有文件),但這不會改變任何內容。

是不是訪問屬性應該給我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?

+0

你確定你沒有任何虛擬光驅或類似的東西?您只查看數組中的第一個對象。檢查'$ drives'的結果(就是在控制檯中沒有別的),也許你會找到其他的? – Matt

+0

@Matt:是的,我確定我沒有虛擬驅動器。腳本打印出我檢查過的驅動器盤符,它是我的物理CD/DVD驅動器。 – Ian

+0

啊,你懷疑它不起作用......那麼有兩件事。我想知道是否在DVD驅動器屬性中選中了「在此驅動器上啓用錄製」框(不應解釋爲什麼它具有空白訪問權,大部分只是好奇)。還有一個消費者音樂光盤的工作?這將有助於縮小失敗的可能性。這是我用來測試舊版光驅的技巧。 – Matt

回答

0

我終於發現,我的CD/DVD驅動器是在它的出路。它不會刻錄DVD,並最終停止閱讀或刻錄任何內容。我認爲這與我的麻煩有關。

1

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 

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

+0

正如問題所述,驅動器中確實有空白CD。請參閱編輯瞭解更多信息。 – Ian

+0

Win32_CDROMDrive是一種比我發佈的光盤更清潔的方式。 – Ian