<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; VBS: Подключение обработки событий объекта в классе]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=6971</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=6971&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «VBS: Подключение обработки событий объекта в классе».]]></description>
		<lastBuildDate>Mon, 26 Mar 2012 05:20:10 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: VBS: Подключение обработки событий объекта в классе]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=58372#p58372</link>
			<description><![CDATA[<p>Нашел корни проблемы с &quot;INET.StillExecuting = True&quot; при первом же вызове WSC. Это оказался не MSINET, и даже не scrobj.dll. Виновником нескольких дней развлечения в поисках бага оказался редактор PSPad(которым я пользуюсь). При вызове <strong>из редактора</strong> выполнения скрипта или отладки во внешнем дебагере(когда одних wscript.echo уже маловато) при инициализации объекта всплывала эта бяка.</p><p>При прямом запуске скрипта, или при вызове отладки в VS из командной строки всё работает как и должно - INET.StillExecuting = False. Так что, возможно, оседлаю гугло-транслейт и попробую отписаться разработчику. Или придётся искать равноценную замену этому редактору(пробовал все наиболее популярные из бесплатных - не пришлись они мне по душе, в каждом мне чего-то не хватало <img src="//forum.script-coding.com/img/smilies/sad.png" width="15" height="15" />).</p>]]></description>
			<author><![CDATA[null@example.com (BeS Yara)]]></author>
			<pubDate>Mon, 26 Mar 2012 05:20:10 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=58372#p58372</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS: Подключение обработки событий объекта в классе]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=58279#p58279</link>
			<description><![CDATA[<p>Извеняюсь <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" />.<br />Вот код:<br /><strong>ftp_client.wsc</strong><br /></p><div class="codebox"><pre><code>&lt;?xml version=&quot;1.0&quot;?&gt;
&lt;?component error=&quot;true&quot; debug=&quot;true&quot;?&gt;

&lt;component&gt;
&lt;registration
	description=&quot;ftp_client&quot;
	progid=&quot;ftpclient.WSC&quot;
	version=&quot;1.00&quot;
	classid=&quot;{c1f0d1ea-dcb8-422f-9734-7df6e6282fa7}&quot;
&gt;
&lt;/registration&gt;
&lt;object id=&quot;INET&quot; progid=&quot;InetCtls.Inet.1&quot; events=&quot;True&quot;/&gt;
&lt;public&gt;
	&lt;property name=&quot;URL&quot;&gt;
		&lt;get/&gt;
		&lt;put/&gt;
	&lt;/property&gt;
	&lt;property name=&quot;port&quot;&gt;
		&lt;get/&gt;
		&lt;put/&gt;
	&lt;/property&gt;
	&lt;property name=&quot;UserName&quot;&gt;
		&lt;get/&gt;
		&lt;put/&gt;
	&lt;/property&gt;
	&lt;property name=&quot;UserPass&quot;&gt;
		&lt;get/&gt;
		&lt;put/&gt;
	&lt;/property&gt;
  &lt;property name=&quot;cStillExecuting&quot;&gt;
    &lt;get/&gt;
  &lt;/property&gt;
  &lt;event name=&quot;OnStartExecute&quot;/&gt;
	&lt;method name=&quot;MakeDir&quot;&gt;
		&lt;PARAMETER name=&quot;path&quot;/&gt;
	&lt;/method&gt;
&lt;/public&gt;

&lt;script language=&quot;VBScript&quot;&gt;
&lt;![CDATA[
  Dim User, Pass, URLL
  &#039;##############################################################################
  &#039;### P R O P E R T I E S                                                    ###
  &#039;##############################################################################
  function get_URL()
  	get_URL = INET.URL
  end function
  &#039;############################################################################
  function put_URL(newValue)
    URLL = newValue
  end function
  &#039;############################################################################
  function get_port()
  	get_port = INET.RemotePort
  end function
  &#039;############################################################################
  function put_port(newValue)
    INET.RemotePort = newValue
  end function
  &#039;############################################################################
  function get_UserName()
  	get_UserName = INET.UserName
  end function
  &#039;############################################################################
  function put_UserName(newValue)
    User = newValue
  end function
  &#039;############################################################################
  function get_UserPass()
  	get_UserPass = INET.Password
  end function
  &#039;############################################################################
  function put_UserPass(newValue)
    Pass = newValue
  end function
  &#039;############################################################################
  function get_cStillExecuting()
    get_cStillExecuting = INET.StillExecuting
  end function
  &#039;##############################################################################
  &#039;### M E T H O D S                                                          ###
  &#039;##############################################################################
  function MakeDir(path)
    With INET
      .Protocol = 2 &#039;icFTP
      .URL = URLL
      .UserName = User
      .Password = Pass
      .Execute ,&quot;CD &quot; &amp; path
      fireEvent(&quot;OnStartExecute&quot;)
      .Execute ,&quot;CLOSE&quot;
      fireEvent(&quot;OnStartExecute&quot;)
    End With
    MakeDir = TRUE
  end function
  &#039;############################################################################

  &#039;##############################################################################
  &#039;### O T H E R    P R O C E D U R E S                                       ###
  &#039;##############################################################################
  sub INET_StateChanged(State)
    dim a : a=0
  end sub
]]&gt;
&lt;/script&gt;

&lt;/component&gt;</code></pre></div><p>вызывающий скрипт:<br /></p><div class="codebox"><pre><code>
&#039; VB Script Document
option explicit
Dim FTP
Set FTP = WScript.CreateObject(&quot;ftpclient.WSC&quot;, &quot;FTP_&quot;)
&#039;Set FTP = CreateObject(&quot;ftpclient.WSC&quot;)
With FTP
&#039;  .DebugMsg = True
  .URL = &quot;ftp://222.222.222.222&quot;
  .UserName = &quot;user&quot;
  .UserPass = &quot;password&quot;
  &#039;.Connect
End With
wscript.echo time
wscript.echo CStr(FTP.MakeDir(&quot;asld&quot;)) 
wscript.echo time

sub FTP_OnStartExecute()
   Do While FTP.cStillExecuting
       WScript.Sleep 100
   Loop
end sub</code></pre></div><p>При переходе в WSC со строки .URL = &quot;ftp://222.222.222.222&quot; отладчик показывает что INET.StillExecuting = True (если events=&quot;True&quot;). Точнее сразу после создания в вызывающем скрипте объекта FTP его св-во FTP.cStillExecuting =True. Т.о. INET инициализируется в состоянии &quot;Still Executing last request&quot; <img src="//forum.script-coding.com/img/smilies/sad.png" width="15" height="15" />.</p><p>Пробовал добавлять перед первым запросом INET.Cancel - никаких изменений.<br />____________________________________________________________________<br />добавлено позже:<br />Нашел на сайте MS 6-ой SP к VB6, там версия посвежее(6.1.98.16) но работает также.<br /><a href="http://www.microsoft.com/download/en/details.aspx?displaylang=en&amp;id=3247">Тут много разных компонент(MS)</a>, может кому-то будет полезно. Непосредственно MSINET&nbsp; в обноимённом кабе в Vs6sp61.exe(правда версия 6.1.97.82).<br />Или можно скачать последнюю версию(перед прекращением поддержки) Visual Basic 6.0 Service Pack 6 - в нём похоже версии крайние. <a href="http://www.microsoft.com/download/en/details.aspx?amp;displaylang=en&amp;id=7030">Загрузка</a>/<a href="http://support.microsoft.com/kb/957924">Описание</a>(в конце есть список файлов с указанием версий).<br /><a href="http://msdn.microsoft.com/en-us/vstudio/aa662927">Visual Basic 6.0 Downloads(MSDN)</a> - тут тоже наверно есть чем поживиться <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" />.</p>]]></description>
			<author><![CDATA[null@example.com (BeS Yara)]]></author>
			<pubDate>Fri, 23 Mar 2012 04:26:53 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=58279#p58279</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS: Подключение обработки событий объекта в классе]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=58259#p58259</link>
			<description><![CDATA[<p><strong>Bes Yara</strong>, код в студию. ) По фотографии не исцеляю. )</p>]]></description>
			<author><![CDATA[null@example.com (Xameleon)]]></author>
			<pubDate>Thu, 22 Mar 2012 15:57:35 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=58259#p58259</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS: Подключение обработки событий объекта в классе]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=58258#p58258</link>
			<description><![CDATA[<p><strong>Xameleon</strong>, вариант с выносом Sleep в вызывающий скрипт работает, спасибо за идею и подсказку.<br />Однако новая непонятка - оказалось что сразу при переходе в WSC св-во объекта INET.StillExecuting* уже равно True %смайлик из квипа, убивающий себя об стену%. Конечно же при попытке выполнить запрос объект сообщает что он всё ещё выполняет предидущий запрос. Пробовал добавлять генерацию события в WSC с последующим ожиданием когда же StillExecuting станет False - не дождался.</p><p>Экспериментально выяснил что при events=&quot;False&quot;(в объявлении объекта в WSC) INET инициализируется нормально(INET.StillExecuting = False), как только events=&quot;True&quot; - выше описанная петрушка <img src="//forum.script-coding.com/img/smilies/sad.png" width="15" height="15" />.</p><p>* свойство WSC имеет имя cStillExecuting(на всякий случай - чтобы не совпадало со св-вом INET).</p><p>Для проверки(что не поломал чего во время своих экспериментов с обёртками) запустил старый вариант(с классом и отслеживанием событий за его пределами) - он нормально работает. Почему MSINET инициализируется(ещё до первого обращения к нему для присвоения св-в или вызова методов) в WSC с истиным StillExecuting не пойму. Судя по MSKB, c StillExecuting не всё хорошо[было], нужно будет поискать OCX версии посвежее.</p><p><strong>alexii</strong>, пытаясь решить эту задачку я уже много нового узнал <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" />. PowerShell у меня пока на повестке не планируется - из-за одной задачи изучать его я пока не готов.</p>]]></description>
			<author><![CDATA[null@example.com (BeS Yara)]]></author>
			<pubDate>Thu, 22 Mar 2012 15:51:34 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=58258#p58258</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS: Подключение обработки событий объекта в классе]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=58243#p58243</link>
			<description><![CDATA[<p><strong>BeS Yara</strong>, для данного случая есть вариант проще — перейти на PowerShell.</p>]]></description>
			<author><![CDATA[null@example.com (alexii)]]></author>
			<pubDate>Thu, 22 Mar 2012 12:36:39 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=58243#p58243</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS: Подключение обработки событий объекта в классе]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=58232#p58232</link>
			<description><![CDATA[<p>Если бы VB.NET можно было использовать в качестве скриптового языка... А так теряется прозрачность и простота внесения изменений.</p><p>Собственно имеется скрипт для обмена файлами с FTP, работает через создание файлов с командами и скармливания их штатному ftp.exe. А тут наткнулся на &quot;Microsoft Internet Transfer Control&quot;(обёртка над WinInet), который позволяет работать с FTP проще, да ещё и асинхронно(хотя мне это пока не существенно) - решил переписать скрипт под этот объект. Для удобства повторного использования кода захотелось оформить в виде класса. На этапе отслеживания событий и появилось это обсуждение <img src="//forum.script-coding.com/img/smilies/neutral.png" width="15" height="15" />.</p><p>Если из затеи с VBS ничего путного не выйдет, попробую копнуть в сторону System.Net.FtpWebRequest. А может в любом случае копну(для самообразования). Но потом. <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /></p><p>З.Ы. Помнится, первый скрипт для похожих целей вообще на php делал, да теперь я php подзабыл основательно.</p>]]></description>
			<author><![CDATA[null@example.com (BeS Yara)]]></author>
			<pubDate>Thu, 22 Mar 2012 11:19:58 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=58232#p58232</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS: Подключение обработки событий объекта в классе]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=58226#p58226</link>
			<description><![CDATA[<p>Согласен. Если идти таким путём, то это точно извращение. ) Уж если собирать сторонние ActiveX, то тогда стоит полностью на NET собрать весь&nbsp; FtpManager. )</p>]]></description>
			<author><![CDATA[null@example.com (Xameleon)]]></author>
			<pubDate>Thu, 22 Mar 2012 10:33:53 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=58226#p58226</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS: Подключение обработки событий объекта в классе]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=58220#p58220</link>
			<description><![CDATA[<p>Интересный вариант, сейчас и его попробую.</p><p>А то я тут пока костыль себе сделал - COM-обёртку для Threading.Thread.Sleep(time). В принципе работает как надо, но это таки костыль <img src="//forum.script-coding.com/img/smilies/sad.png" width="15" height="15" />.</p><p>С другой стороны на случайно взятой системе &quot;InetCtls.Inet.1&quot; также может(и скорее всего так и будет, ибо с ОС компонент не идёт) отсутствовать - в любом случае придётся регистрировать компоненту. Просто с моим костылём их станет две.</p><p>Тем более, что со временем туда можно будет завернуть ещё что-нибудь из вкусностей .NET, недоступное в VBS. Прямо замкнутый круг - делать в дотнете COM-класс для доступа к методам .NET из WSC, который будет использоваться в качестве COM-а в VBScript. Отдаёт каким-то извращением <img src="//forum.script-coding.com/img/smilies/hmm.png" width="15" height="15" />.</p>]]></description>
			<author><![CDATA[null@example.com (BeS Yara)]]></author>
			<pubDate>Thu, 22 Mar 2012 09:46:09 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=58220#p58220</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS: Подключение обработки событий объекта в классе]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=58213#p58213</link>
			<description><![CDATA[<p>Всё правильно говорите. ) Именно поэтому, на мой взгляд, стоит сделать у WSC объекта cвойство StillExecuting и события OnStartExecute и OnExecuteComplete и в WSH обрабатывать это как то так:</p><div class="codebox"><pre><code>
Sub FtpManager_OnStartExecute()
     Do While FtpManager.StillExecuting
         WScript.Sleep 100
     Loop
End Sub</code></pre></div><p>В итоге каждый метод FtpManager-а будет проходить через это событие. Если что то не совсем понятно, могу помочь по ICQ - 252505765. )</p>]]></description>
			<author><![CDATA[null@example.com (Xameleon)]]></author>
			<pubDate>Thu, 22 Mar 2012 09:27:03 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=58213#p58213</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS: Подключение обработки событий объекта в классе]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=58196#p58196</link>
			<description><![CDATA[<p>Посмотрел пример по ссылке. Если я правильно понимаю, в нём setInterval используется просто для периодического опроса результатов отправки запроса к прокси(WinHttpRequest). Т.е. с периодичностью 0.5 сек он вызывает процедуру WaitForResponse() и если ошибок при запросе не было, то останавливает таймер(RequestsComplete()). Таким образом это принципиально не отличается от вызова функции в моём тестовом скрипте.<br />Раз уж &quot;setInterval - псевдоасинхронная функция&quot;, то нужно как-то заставить скрипт ждать завершения её работы. Но для этого как раз и потребуется sleep.<br />Так как в примере с WinHttpRequest всё работает в рамках HTA, который продолжает быть открытым, всё работает(полагаю, если в процессе опроса списка прокси закрыть HTA-шку, все проверки на этом и завершатся <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" />). В моём случае скрипт успевает отработать и завершиться до того как сработает таймер указанный в setInterval, т.е. скрипт завершает работу даже до вызова функции &quot;Sleep()&quot;.</p>]]></description>
			<author><![CDATA[null@example.com (BeS Yara)]]></author>
			<pubDate>Thu, 22 Mar 2012 03:51:14 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=58196#p58196</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS: Подключение обработки событий объекта в классе]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=58187#p58187</link>
			<description><![CDATA[<p>Прямого варианта нет. ) Альтернативы есть, но я бы не стал к ним прибегать. SetInterval прекрасно подходит для замены Sleep в этом случае.</p>]]></description>
			<author><![CDATA[null@example.com (Xameleon)]]></author>
			<pubDate>Wed, 21 Mar 2012 19:41:56 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=58187#p58187</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS: Подключение обработки событий объекта в классе]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=58170#p58170</link>
			<description><![CDATA[<p><img src="//forum.script-coding.com/img/smilies/hmm.png" width="15" height="15" /><br />Как же всё запущено...Спасибо за наводку - завтра буду разбираться, сегодня голова уже не варит.</p><p>P.S. а из WINAPI Sleep в WSC подтянуть никак нельзя(без врапера, штатными средствами)?</p>]]></description>
			<author><![CDATA[null@example.com (BeS Yara)]]></author>
			<pubDate>Wed, 21 Mar 2012 15:22:56 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=58170#p58170</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS: Подключение обработки событий объекта в классе]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=58169#p58169</link>
			<description><![CDATA[<p>Да. Делаете что то не так. <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /> setInterval - псевдоасинхронная функция.</p><p>В этой теме как раз есть пример его использования<br /><a href="http://forum.script-coding.com/viewtopic.php?id=6877">Множественные асинхронные запросы WinHttpRequest</a></p>]]></description>
			<author><![CDATA[null@example.com (Xameleon)]]></author>
			<pubDate>Wed, 21 Mar 2012 15:10:51 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=58169#p58169</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS: Подключение обработки событий объекта в классе]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=58164#p58164</link>
			<description><![CDATA[<div class="quotebox"><cite>Xameleon пишет:</cite><blockquote><p>Первым делом стоит обзавестись утилиткой Windows Script Component Wizard</p></blockquote></div><p>Да, с неё и начал. На первое ощущение это мало повлияло <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" />.</p><div class="quotebox"><cite>Xameleon пишет:</cite><blockquote><p>Вам нужно что то наподобии этого.</p></blockquote></div><p>Спасибо за пример. Кажется работает. Хотя с паузой не могу разобраться.</p><div class="quotebox"><cite>Xameleon пишет:</cite><blockquote><p>&#039;Использовать setInterval от document(htmlfile) для ожидания</p></blockquote></div><p>По &quot;setInterval&quot; методов нашел гору, но ни одного объекта &quot;по-умолчанию&quot; у меня при выполнении кода нет(следовательно объект нужно создать - но какой?). Наткнулся на форуме на такую конструкцию(перекликающуюся с цитатой):<br /></p><div class="codebox"><pre><code>
Dim document
set document = CreateObject(&quot;htmlfile&quot;)</code></pre></div><p>Вот только метода setInterval в нём(объекте document, тип DispHTMLDocument) нет. <br />Нашел такой метод у дочернено объекта(Script {object} DispHTMLWindow2), но хотя код ошибок не выдаёт, задержки не происходит:<br /></p><div class="codebox"><pre><code>
MakeDir = document.Script.setInterval(&quot;Sleep()&quot;, 5000, &quot;VBScript&quot;)</code></pre></div><p>Значение возращается менее чем за пол секунды(Sleep - функция просто возвращающая ноль). Хотя, если я правильно понял суть метода, мне вообще ничего не должно было вернуться до остановки таймера(через clearInterval), которой у меня в данный момент нет.</p><p>Подозреваю что что-то делаю не так, но что - понять не могу <img src="//forum.script-coding.com/img/smilies/sad.png" width="15" height="15" /></p>]]></description>
			<author><![CDATA[null@example.com (BeS Yara)]]></author>
			<pubDate>Wed, 21 Mar 2012 12:49:13 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=58164#p58164</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS: Подключение обработки событий объекта в классе]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=58154#p58154</link>
			<description><![CDATA[<p>Вам нужно что то наподобии этого.<br /></p><div class="codebox"><pre><code>
&lt;?xml version=&quot;1.0&quot;?&gt;
&lt;component&gt;
	&lt;?component error=&quot;true&quot; debug=&quot;true&quot;?&gt;
	&lt;registration
		description=&quot;FtpManager&quot;
		progid=&quot;FtpManager.WSC&quot;
		version=&quot;1.0&quot;
		classid=&quot;{cc2a688c-ffb9-457a-ba04-14dca27e351f}&quot;
	&gt;
	&lt;/registration&gt;
	&lt;object id=&quot;Inet&quot; progid=&quot;InetCtls.Inet.1&quot; events=&quot;True&quot;/&gt;
	&lt;public&gt;
		&lt;method name=&quot;MkDir&quot;&gt;
		&lt;/method&gt;
	&lt;/public&gt;
	&lt;script language=&quot;VBScript&quot;&gt;
	&lt;![CDATA[

	With Inet
      .Protocol = 2 &#039;icFTP
      .URL = &quot;ftp://222.222.222.222&quot;
      .UserName = &quot;user&quot;
      .Password = &quot;password&quot;
    End With

	Sub Inet_StateChanged(State)
		MsgBox State
	End Sub

	Function MkDir()
		INET.Execute , &quot;CD &quot; &amp; path
		&#039;....
		&#039;Использовать setInterval от document(htmlfile) для ожидания
	End Function

	]]&gt;
	&lt;/script&gt;
&lt;/component&gt;</code></pre></div><p>Приятным моментом является возможность использования WSC без регистрации. К тому же с возможностью создания своих &quot;кастомных&quot; событий.</p>]]></description>
			<author><![CDATA[null@example.com (Xameleon)]]></author>
			<pubDate>Wed, 21 Mar 2012 10:02:06 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=58154#p58154</guid>
		</item>
	</channel>
</rss>
