<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; HTA: использование WScript.Sleep()]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=1110&amp;type=atom" />
	<updated>2008-02-02T07:58:26Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=1110</id>
		<entry>
			<title type="html"><![CDATA[HTA: использование WScript.Sleep()]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=8566#p8566" />
			<content type="html"><![CDATA[<p>Файл <strong>WScript.js</strong> (он будет вызываться из HTA):<br /></p><div class="codebox"><pre><code>var ShellWindows=(new ActiveXObject(&quot;Shell.Application&quot;)).Windows();
for (var i=0; i&lt;ShellWindows.Count; i++)
  try {
    var Script=ShellWindows.Item(i).Document.Script;
    if (Script.name==&quot;mailbox&quot;) {
      Script.Callback(WScript);
      for (;;) WScript.Sleep(60000);
    }
  } catch (Err) {}</code></pre></div><p>Сам файл HTA, в котором будет вызываться WScript.Sleep:<br /></p><div class="codebox"><pre><code>&lt;HTML&gt;
&lt;HEAD&gt;
&lt;META http-equiv=&#039;Content-Type&#039; content=&#039;text/html; charset=windows-1251&#039;&gt;

&lt;SCRIPT language=&#039;JavaScript&#039; type=&#039;text/javascript&#039;&gt;&lt;!--
var WScript=null;
var IE=new ActiveXObject(&quot;InternetExplorer.Application&quot;);
IE.Navigate(&quot;about:blank&quot;);
// здесь не помешала бы проверка на IE.Busy==false,
// однако, метод WScript.Sleep() пока не доступен,
// а window.setTimeout() усложнило бы пример. 
IE.Document.Script.name=&quot;mailbox&quot;;
IE.Document.Script.Callback=function (arg) {
  WScript=arg; IE.Quit();
};

var WshShell=new ActiveXObject(&quot;WScript.Shell&quot;);
WshShell.Run(&quot;WScript.js&quot;, 0);

onunload=function () {WScript.Quit()};
// --&gt;&lt;/SCRIPT&gt;
&lt;/HEAD&gt;

&lt;BODY onClick=&#039;alert(&quot;Раз&quot;); WScript.Sleep(5000); alert(&quot;Два&quot;);&#039;&gt;
При щелчке мышью по странице будет выведено сообщение &quot;Раз&quot;,
а затем через 5&amp;nbsp;сек. сообщение &quot;Два&quot;. Задержка между сообщениями
создаётся с помощью метода WScript.Sleep().
&lt;/BODY&gt;&lt;/HTML&gt;</code></pre></div><p>При щелчке мышью по странице будет выведено сообщение &quot;Раз&quot;, а затем через 5 сек. сообщение &quot;Два&quot;.<br />Автор примера - <strong>wisgest</strong>.</p>]]></content>
			<author>
				<name><![CDATA[The gray Cardinal]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=2</uri>
			</author>
			<updated>2008-02-02T07:58:26Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=8566#p8566</id>
		</entry>
</feed>
