我需要确定CD驱动器,弹出托盘。 这是在同时启动的WinPE执行,所以WMP弹出功能不可用。 这个脚本会在不同的计算机型号/配置使用。 我目前使用这样的:
For Each d in CreateObject("Scripting.FileSystemObject").Drives
CreateObject("Shell.Application").Namespace(17).ParseName("D:\").InvokeVerb("Eject")
Next
它的工作原理,但有时它的错误,并要求用户交互它弹出之前。 我怀疑这是因为硬编码的D:\
驱动器盘符,但我可能是完全错误的。 我需要这个没有第三方公用事业工作。
使用DriveType
的财产Drive
对象:
For Each d in CreateObject("Scripting.FileSystemObject").Drives
WScript.sleep 60
If d.DriveType = 4 Then
CreateObject("Shell.Application").Namespace(17).ParseName(d.DriveLetter & ":\").InvokeVerb("Eject")
End If
Next
下面是一个使用媒体播放器弹出代码; 我不知道这将是多么容易从你的WinPE环境中调用:
' http://www.msfn.org/board/topic/45418-vbscript-for-openingclosing-cd/
' http://waxy.org/2003/03/open_cdrom_driv/
Set oWMP = CreateObject("WMPlayer.OCX.7" )
Set colCDROMs = oWMP.cdromCollection
For d = 0 to colCDROMs.Count - 1
colCDROMs.Item(d).Eject
Next 'null
B计划是下载的“eject.exe”副本,包括它的WinPE的媒体上:
- http://www.911cd.net/forums/index.php?showtopic=2931&hl=cd+eject
文章来源: Identify CD drive and eject using bat or vbs while in WinPE without external files