<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; VBScript: скрипты для открытия-закрытия лотка CD-ROM]]></title>
	<link rel="self" href="http://forum.script-coding.com/extern.php?action=feed&amp;tid=56&amp;type=atom" />
	<updated>2018-10-13T17:37:03Z</updated>
	<generator>PunBB</generator>
	<id>http://forum.script-coding.com/viewtopic.php?id=56</id>
		<entry>
			<title type="html"><![CDATA[Re: VBScript: скрипты для открытия-закрытия лотка CD-ROM]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=129216#p129216" />
			<content type="html"><![CDATA[<p>Переключатель состояния лотка CDROM. Если лоток закрыт, сценарий открывает его и наоборот. </p><p>Результат команды открытия/закрытия лотка можно оценивать по времени выполнения. Сценарий пытается открыть лоток и измеряет время выполнения этой операции - если время выполнения меньше заданного минимального порога, значит операция выполнена неудачно, лоток уже открыт и сценарий закрывает лоток.</p><p>Буква диска: константа DRIVE_LETTER.</p><p>Lang: VBScript<br />WinXP/7<br />Потребуется библиотека <a href="http://www.script-coding.com/AutiItX.html">AutoItX3.dll</a></p><div class="codebox"><pre><code>
 &#039; Переключатель состояния лотка CDROM 
 &#039; Lang: VBScript
 &#039; Потребуется библиотека AutoItX3.dll
 &#039; WinXP/7

 Option Explicit

 &#039; Минимальный порог времени открытия/закрытия лотка, сек 
 &#039; (подбирается вручную)
 Const OP_THRESHOLD = 0.5

 Const DRIVE_LETTER = &quot;D:&quot;
 Dim t1, t2, d
 Dim oAu3

 Set oAu3 = WScript.CreateObject(&quot;AutoItX3.Control&quot;)

 &#039; Команда открыть лоток привода
 t1 = Timer
 oAu3.CDTray DRIVE_LETTER, &quot;open&quot;
 t2 = Timer
 d = Round(t2-t1, 1)

 MsgBox &quot;Время выполнения операции ОТКРЫТИЕ ЛОТКА&quot; &amp; Chr(32) &amp; d &amp; Chr(32) &amp; &quot;сек.&quot;, _
	vbInformation,&quot;OPEN&quot;

 oAu3.Sleep(1000)

 &#039; Если время открытия лотка меньше минимального порога, 
 &#039; значит лоток уже открыт и сценарий закрывает лоток

 If d &lt; OP_THRESHOLD Then 
	oAu3.CDTray DRIVE_LETTER, &quot;close&quot;
 End If	
 WScript.Quit()	
</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Poltergeyst]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=83</uri>
			</author>
			<updated>2018-10-13T17:37:03Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=129216#p129216</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBScript: скрипты для открытия-закрытия лотка CD-ROM]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=67328#p67328" />
			<content type="html"><![CDATA[<p>И MCI-контрол:<br /></p><div class="codebox"><pre><code>&#039; Сие тварение открывает лоток CD-rom&#039;а при заранее вставленном диске или закрывает лоток при необнулённом буфере оного.
set MCI = CreateObject (&quot;MCI.MMControl&quot;)
    MCI.DeviceType=&quot;CDAudio&quot;
    &#039;MCI.wait=True
    MCI.command=&quot;open&quot;  &#039; открыть устройство
    MCI.command=&quot;eject&quot; &#039; открыть/закрыть лоток
    wscript.sleep 3000
    MCI.command=&quot;eject&quot; &#039; открыть/закрыть лоток
wsh.quit
</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Аскет]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=25748</uri>
			</author>
			<updated>2012-12-22T05:54:08Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=67328#p67328</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBScript: скрипты для открытия-закрытия лотка CD-ROM]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=67327#p67327" />
			<content type="html"><![CDATA[<p>Приведу пару примеров без использования сторонних инструментов, используя лишь штатные компоненты:</p><div class="codebox"><pre><code>openCD()
WSCRIPT.SLEEP 2000
closeCD()

&#039;--------------------
&#039;ОТКРЫТЬ ЛОТОК
sub openCD()
    Set WMP = CreateObject (&quot;WMPlayer.OCX&quot;)
        WMP.cdromCollection.Item(0).Eject()
end sub
&#039;--------------------
&#039;ЗАКРЫТЬ ЛОТОК
sub closeCD()
    Set WMP = CreateObject (&quot;WMPlayer.OCX&quot;)
        WMP.cdromCollection.Item(0).Eject()
        WMP.cdromCollection.Item(0).Eject()
end sub</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Аскет]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=25748</uri>
			</author>
			<updated>2012-12-22T05:32:51Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=67327#p67327</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBScript: скрипты для открытия-закрытия лотка CD-ROM]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=91#p91" />
			<content type="html"><![CDATA[<p>То же самое на AutoHotkey:<br /></p><div class="codebox"><pre><code>Drive, Eject, D: ; открыть лоток CD-ROM
Sleep, 1000
Drive, Eject, D:, 1 ; закрыть лоток CD-ROM</code></pre></div>]]></content>
			<author>
				<name><![CDATA[The gray Cardinal]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=2</uri>
			</author>
			<updated>2006-07-16T15:09:42Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=91#p91</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[VBScript: скрипты для открытия-закрытия лотка CD-ROM]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=83#p83" />
			<content type="html"><![CDATA[<div class="codebox"><pre><code>Set oAutoIt = WScript.CreateObject(&quot;AutoItX3.Control&quot;)
oAutoIt.CDTray &quot;D:&quot;, &quot;open&quot;</code></pre></div><div class="codebox"><pre><code>Set oAutoIt = WScript.CreateObject(&quot;AutoItX3.Control&quot;)
oAutoIt.CDTray &quot;D:&quot;, &quot;close&quot;</code></pre></div><p>Букву диска (&quot;D&quot;) замените на свою. Потребуется библиотека AutoItX3.dll: <a href="http://www.script-coding.com/AutiItX.html">http://www.script-coding.com/AutiItX.html</a>.<br />Зачем это может понадобиться? Например, у меня конструкция корпуса системного блока такова, что когда лоток CD-ROM открыт, кнопка его закрытия недоступна. Можно закрыть лоток, только толкая его. Поскольку я боюсь рано или поздно сломать лоток таким обращением, я написал скрипты <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /></p>]]></content>
			<author>
				<name><![CDATA[The gray Cardinal]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=2</uri>
			</author>
			<updated>2006-07-15T05:53:18Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=83#p83</id>
		</entry>
</feed>
