1

CD ドライブを特定し、トレイを取り出す必要があります。これは WinPE での起動中に実行されるため、WMP の取り出し機能は使用できません。このスクリプトは、さまざまなコンピューター モデル/構成で使用されます。私は現在これを使用しています:

For Each d in CreateObject("Scripting.FileSystemObject").Drives
    CreateObject("Shell.Application").Namespace(17).ParseName("D:\").InvokeVerb("Eject")
Next

動作しますが、時々エラーが発生し、排出する前にユーザーの操作が必要になります。ハードコードされたD:\ドライブ文字が原因だと思われますが、完全に間違っている可能性があります。サードパーティのユーティリティなしで動作するには、これが必要です。

4

2 に答える 2

3

オブジェクトの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
于 2013-01-08T17:30:51.290 に答える
1

Media Player を使用してイジェクトするコードを次に示します。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 メディアに含めることです。

于 2013-01-08T17:08:18.297 に答える