1

Тема: VBScript: скрипты для открытия-закрытия лотка CD-ROM

Set oAutoIt = WScript.CreateObject("AutoItX3.Control")
oAutoIt.CDTray "D:", "open"
Set oAutoIt = WScript.CreateObject("AutoItX3.Control")
oAutoIt.CDTray "D:", "close"

Букву диска ("D") замените на свою. Потребуется библиотека AutoItX3.dll: http://www.script-coding.com/AutiItX.html.
Зачем это может понадобиться? Например, у меня конструкция корпуса системного блока такова, что когда лоток CD-ROM открыт, кнопка его закрытия недоступна. Можно закрыть лоток, только толкая его. Поскольку я боюсь рано или поздно сломать лоток таким обращением, я написал скрипты

Предложения в русском языке начинаются с большой буквы и заканчиваются точкой.
В названии ветки всегда должен быть указан язык программирования или среда исполнения скрипта, если это возможно.

2

Re: VBScript: скрипты для открытия-закрытия лотка CD-ROM

То же самое на AutoHotkey:

Drive, Eject, D: ; открыть лоток CD-ROM
Sleep, 1000
Drive, Eject, D:, 1 ; закрыть лоток CD-ROM
Предложения в русском языке начинаются с большой буквы и заканчиваются точкой.
В названии ветки всегда должен быть указан язык программирования или среда исполнения скрипта, если это возможно.

3

Re: VBScript: скрипты для открытия-закрытия лотка CD-ROM

Приведу пару примеров без использования сторонних инструментов, используя лишь штатные компоненты:

openCD()
WSCRIPT.SLEEP 2000
closeCD()

'--------------------
'ОТКРЫТЬ ЛОТОК
sub openCD()
    Set WMP = CreateObject ("WMPlayer.OCX")
        WMP.cdromCollection.Item(0).Eject()
end sub
'--------------------
'ЗАКРЫТЬ ЛОТОК
sub closeCD()
    Set WMP = CreateObject ("WMPlayer.OCX")
        WMP.cdromCollection.Item(0).Eject()
        WMP.cdromCollection.Item(0).Eject()
end sub

4

Re: VBScript: скрипты для открытия-закрытия лотка CD-ROM

И MCI-контрол:

' Сие тварение открывает лоток CD-rom'а при заранее вставленном диске или закрывает лоток при необнулённом буфере оного.
set MCI = CreateObject ("MCI.MMControl")
    MCI.DeviceType="CDAudio"
    'MCI.wait=True
    MCI.command="open"  ' открыть устройство
    MCI.command="eject" ' открыть/закрыть лоток
    wscript.sleep 3000
    MCI.command="eject" ' открыть/закрыть лоток
wsh.quit