2017-06-20 83 views
3

這可能嗎?Powershell - 檢查CD是否在CD-ROM驅動器中

我的第一個猜測是這樣的:

C:> Get-WmiObject Win32_CDROMDrive

但是,當我嘗試這樣做,它只是告訴我CaptionDriveManufacturerVolumeName

沒有就是否存在信息光盤驅動器中的CD。

+2

'[IO.DriveInfo] :: GetDrives()|其中{$ _。DriveType -eq'CDRom'和$ _。IsReady}'(基於C#答案) – wOxxOm

+3

個人而言,我發現像這樣的誤導性問題。驅動器中是否有光盤,是的,當您檢查時,但1秒鐘後,用戶彈出光盤。爲什麼不嘗試讀取(或寫入)驅動器或您想要執行的操作,並處理故障? –

+0

@KoryGill閱讀或寫入CD就在這一點上。最終目標是檢查驅動器內是否有媒體。 –

回答

3

你可以通過

(Get-WMIObject -Class Win32_CDROMDrive -Property *).MediaLoaded 

此信息您可以看到哪些屬性可用於該WMI類由

Get-WMIObject -Class Win32_CDROMDrive -Property * | Get-Member 

和更詳細的文檔,從

Get-WMIHelp -Class Win32_CDROMDrive 

一般,你會發現自由使用Get-HelpGet-MemberGet-CommandGet-WMIHelp cmdlet將爲您提供大量信息,並可能無需在此處提問,並等待可能會或可能不會發生的答案。

+0

啊,應該試過'-Properties *'。我總是忘記可能存在不報告的屬性 –

+1

Get-WMIHelp不是標準的PowerShell cmdlet。 –

+0

是的。請參閱https://blogs.msdn.microsoft.com/powershell/2007/09/24/get-wmihelp-amp-search-wmihelp/和https://ss64.org/viewtopic.php?id=1440 - 我'我已經把它們放在我的系統上很久了,以至於我忘記了它們是附加組件。 –

相關問題