<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; HTA: не найден объект Wscript]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=5640&amp;type=atom" />
	<updated>2011-03-29T12:37:16Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=5640</id>
		<entry>
			<title type="html"><![CDATA[Re: HTA: не найден объект Wscript]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=47109#p47109" />
			<content type="html"><![CDATA[<p>Для VBS - консольный интерфейс можно сделать например так:</p><div class="codebox"><pre><code>
Set WshShell = WScript.CreateObject(&quot;WScript.Shell&quot;)
if Instr(1,WScript.FullName,&quot;WScript.exe&quot;,1) &gt; 0 Then
    WshShell.Run &quot;CScript &quot;&quot;&quot; &amp; WScript.ScriptFullName &amp; &quot;&quot;&quot; //nologo //I&quot;, 1
    WScript.Quit
End if

WScript.StdOut.WriteLine &quot;Введите значение переменной a&quot;
Do
    a = WScript.StdIn.ReadLine
    if Not isNumeric(a) Then
        WScript.StdOut.WriteLine &quot;Введено не числовое значение ! Повторите ввод.&quot;
    Else
        Exit Do
    End if
Loop

WScript.StdOut.WriteLine &quot;Введите значение переменной b&quot;
Do
    b = WScript.StdIn.ReadLine
    if Not isNumeric(b) Then
        WScript.StdOut.WriteLine &quot;Введено не числовое значение ! Повторите ввод.&quot;
    Else
        Exit Do
    End if
Loop
WScript.StdOut.WriteLine &quot;a + b = &quot; &amp; Clng(a) + Clng(b)
WScript.StdOut.WriteLine &quot;Нажмите Enter для завершения программы.&quot;
WScript.StdIn.ReadLine</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Xameleon]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=8836</uri>
			</author>
			<updated>2011-03-29T12:37:16Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=47109#p47109</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: HTA: не найден объект Wscript]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=47107#p47107" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Xameleon пишет:</cite><blockquote><p>Тогда <strong>HTA</strong> Вам в помощь. ) Там события нажатий клавиш вы можете обработать кодом, который я приводил выше.</p></blockquote></div><p>Так я и писал, что тот вариант меня крайне устраивает.<br />А по поводу VBS и клавиатуры, то это чисто с теоретической точки зрения.</p>]]></content>
			<author>
				<name><![CDATA[dandyd]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24647</uri>
			</author>
			<updated>2011-03-29T12:35:21Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=47107#p47107</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: HTA: не найден объект Wscript]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=47103#p47103" />
			<content type="html"><![CDATA[<p><a href="http://www.ostrosoft.com/smtp_component/pop_demo.asp">вот как на HTMLe можно съимитировать консоль</a></p>]]></content>
			<author>
				<name><![CDATA[mikser]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24962</uri>
			</author>
			<updated>2011-03-29T12:10:10Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=47103#p47103</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: HTA: не найден объект Wscript]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=47101#p47101" />
			<content type="html"><![CDATA[<p>Тогда <strong>HTA</strong> Вам в помощь. ) Там события нажатий клавиш вы можете обработать кодом, который я приводил выше.</p>]]></content>
			<author>
				<name><![CDATA[Xameleon]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=8836</uri>
			</author>
			<updated>2011-03-29T11:49:04Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=47101#p47101</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: HTA: не найден объект Wscript]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=47100#p47100" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Xameleon пишет:</cite><blockquote><p><strong>2 dandyd:</strong> Зачем в VBS ловить событие нажатия клавиш ? Он (vbs) не имеет графического интерфейса. Куда отсылать нажатые клавиши ? В какое окно ? Или вы хотите ловить глобальные нажатия ? Клавиатурный шпион писать что ли ? Если же просто для ввода данных в скрипт - есть функция <strong>InputBox()</strong>. Если же хочется консольное приложение с обменом данными в окне, то у интерпретатора CScript есть все нужные средстав для этого - <strong>StdIn</strong> и <strong>StdOut</strong> потоки... Опять же - всё хорошо и уместно в определённых условиях. Вашу конечную цель - я пока что не понял.</p></blockquote></div><p>Цель - терминал для обмена данными с интерфейсом железки, подключенной к COM порту.<br />Посылать нажатые клавиши надо в COM порт.<br />Иногда код клавиши.<br />Иногда определенную строку символов в зависимости от кода нажатой клавиши.<br />Иногда определенный символ или строку в зависимости, что выплюнул порт.<br />StdIn нужно каждый раз заканчивать Enter. InputBox тоже. Неудобно.<br />В качестве графического интерфейса хватает Wscript.Echo</p>]]></content>
			<author>
				<name><![CDATA[dandyd]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24647</uri>
			</author>
			<updated>2011-03-29T11:43:32Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=47100#p47100</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: HTA: не найден объект Wscript]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=47088#p47088" />
			<content type="html"><![CDATA[<p><strong>2 dandyd:</strong> Зачем в VBS ловить событие нажатия клавиш ? Он (vbs) не имеет графического интерфейса. Куда отсылать нажатые клавиши ? В какое окно ? Или вы хотите ловить глобальные нажатия ? Клавиатурный шпион писать что ли ? Если же просто для ввода данных в скрипт - есть функция <strong>InputBox()</strong>. Если же хочется консольное приложение с обменом данными в окне, то у интерпретатора CScript есть все нужные средстав для этого - <strong>StdIn</strong> и <strong>StdOut</strong> потоки... Опять же - всё хорошо и уместно в определённых условиях. Вашу конечную цель - я пока что не понял.</p>]]></content>
			<author>
				<name><![CDATA[Xameleon]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=8836</uri>
			</author>
			<updated>2011-03-29T10:10:34Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=47088#p47088</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: HTA: не найден объект Wscript]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=47079#p47079" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Xameleon пишет:</cite><blockquote><p>Хм.... Ответ очень сумбурный и малопонятный. ) </p><p>Но всё же понял, что Вы никак не можете в HTA события обработать. Что мешает не пойму.</p><div class="codebox"><pre><code>
&lt;html&gt;
	&lt;body&gt;
		&lt;object id=MSComm style=&quot;display:none;&quot; classid=&quot;clsid:F6565773-FA54-45E9-941C-2505E54D5710&quot;&gt;&lt;/object&gt;
	&lt;/body&gt;
	&lt;script language=vbscript&gt;
		Sub MSComm_OnComm()
			MsgBox &quot;!&quot;
		End Sub
			
		Sub document_onkeypress()
			MsgBox window.event.keycode
		End Sub
	&lt;/script&gt;
&lt;/html&gt;</code></pre></div></blockquote></div><p>Спасибо большое. То что нужно.<br />Понятно и красиво.<br />Видимо мне в google поиске по </p><div class="codebox"><pre><code>&lt;object id=MSComm style=&quot;display:none;&quot; classid=&quot;clsid:F6565773-FA54-45E9-941C-2505E54D5710&quot;&gt;&lt;/object&gt;</code></pre></div><p>попался очень неудачный пример. Там было наваяно строк двести кода для обработки и я как-то сразу сник по поводу&nbsp; этого метода. Ссылку уже не помню.<br />А для обработки событий клавиатуры в VBS так ничего и не нашел. Думаю, что это как-то реализуется через WMI,<br />но варианта предложенного выше по функциональности мне вполне хватит.<br />Хотя на будущее заготовочку для обработки событий клавиатуры на VBS было бы иметь не плохо.</p>]]></content>
			<author>
				<name><![CDATA[dandyd]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24647</uri>
			</author>
			<updated>2011-03-29T08:10:06Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=47079#p47079</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: HTA: не найден объект Wscript]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=47066#p47066" />
			<content type="html"><![CDATA[<p>Да нет же. WScript доступен ТОЛЬКО в WSH. Пора это запомнить уже. WSC даст возможность повесить на одни и теже события множество объектов.</p>]]></content>
			<author>
				<name><![CDATA[Xameleon]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=8836</uri>
			</author>
			<updated>2011-03-29T06:25:05Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=47066#p47066</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: HTA: не найден объект Wscript]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=47054#p47054" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Xameleon пишет:</cite><blockquote><p>Либо предложу сделать <strong>WSC оболочку</strong>.</p></blockquote></div><p>Внутри WSC доступен объект WScript?</p>]]></content>
			<author>
				<name><![CDATA[mikser]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24962</uri>
			</author>
			<updated>2011-03-29T00:41:48Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=47054#p47054</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: HTA: не найден объект Wscript]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=47035#p47035" />
			<content type="html"><![CDATA[<p><strong>2 mikser:</strong><br /></p><div class="quotebox"><cite>mikser пишет:</cite><blockquote><p><strong>Xameleon</strong> А если нужно несколько (заранее не известно сколько, выяснится по ходу исполнения скрипта) экземпляров ActiveX объекта. Как это на html&#039;е будет? <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /> Или предложите создавать тег &lt;object...&gt; с помощью DOM или innerHTML ем?</p><p>PS По моему ответ на сабжевый вопрос дан в посте номер 9.</p></blockquote></div><p>Да. Предложу <br /></p><div class="quotebox"><blockquote><p>создавать тег &lt;object...&gt; с помощью DOM или innerHTML ем</p></blockquote></div><p>Либо предложу сделать <strong>WSC оболочку</strong>. Как я это сделал в <a href="http://forum.script-coding.com/viewtopic.php?id=3707">мультисокетном веб сервере</a></p><p>В таком случае Вы получаете возможность обрабатывать события значительно удобнее. )</p>]]></content>
			<author>
				<name><![CDATA[Xameleon]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=8836</uri>
			</author>
			<updated>2011-03-28T21:02:31Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=47035#p47035</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: HTA: не найден объект Wscript]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=47033#p47033" />
			<content type="html"><![CDATA[<p>Да уж... Как говорится - Остапа понесло</p>]]></content>
			<author>
				<name><![CDATA[Rumata]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24846</uri>
			</author>
			<updated>2011-03-28T20:23:01Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=47033#p47033</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: HTA: не найден объект Wscript]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=47032#p47032" />
			<content type="html"><![CDATA[<p>В посте номер 9 дан ответ на вопрос автора.<br />Все что ниже - флейм и можно смело удалять. <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /></p>]]></content>
			<author>
				<name><![CDATA[mikser]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24962</uri>
			</author>
			<updated>2011-03-28T20:15:14Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=47032#p47032</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: HTA: не найден объект Wscript]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=47031#p47031" />
			<content type="html"><![CDATA[<p>Вот теперь понятно. До сих пор упоминалось о многих событиях. Поэтому не было очевидно, что подразумеваются некие внутренние события объекта. Тогда почему бы не перечитать <a href="http://forum.script-coding.com/viewtopic.php?pid=47001#p47001">ответ №9</a>?</p>]]></content>
			<author>
				<name><![CDATA[Rumata]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24846</uri>
			</author>
			<updated>2011-03-28T20:10:52Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=47031#p47031</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: HTA: не найден объект Wscript]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=47029#p47029" />
			<content type="html"><![CDATA[<p>О каких ActiveX объектах идет речь? Они поддерживают события?</p>]]></content>
			<author>
				<name><![CDATA[Rumata]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24846</uri>
			</author>
			<updated>2011-03-28T19:56:43Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=47029#p47029</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: HTA: не найден объект Wscript]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=47028#p47028" />
			<content type="html"><![CDATA[<div class="codebox"><pre><code>document.attacheEvent</code></pre></div><p>Для ActiveX объектов даже такой способ развешивания обработчиков событий -&nbsp; не работает.<br />Для онклика конечно сработает наверно так как это событие документа точнее объекта тега &lt;object ..&gt;</p><p>Автору нужно обрабатывать внутренее событие&nbsp; <strong>OnComm</strong> его ActiveX объекта - <strong>MSCommLib.MSComm</strong>&nbsp; <br />Вы же рассказываете как обрабатывать внешние события типа онклик и онкейпресс. <br />Спасибо но это не то.</p>]]></content>
			<author>
				<name><![CDATA[mikser]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24962</uri>
			</author>
			<updated>2011-03-28T19:47:47Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=47028#p47028</id>
		</entry>
</feed>
