<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; CMD/BAT: Запуск 3 программ]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=5024</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=5024&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «CMD/BAT: Запуск 3 программ».]]></description>
		<lastBuildDate>Wed, 10 Nov 2010 03:11:09 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: CMD/BAT: Запуск 3 программ]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=41420#p41420</link>
			<description><![CDATA[<p>Большое спасибо всем за помощь, скрипт работает.</p>]]></description>
			<author><![CDATA[null@example.com (0meg@)]]></author>
			<pubDate>Wed, 10 Nov 2010 03:11:09 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=41420#p41420</guid>
		</item>
		<item>
			<title><![CDATA[Re: CMD/BAT: Запуск 3 программ]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=41295#p41295</link>
			<description><![CDATA[<div class="quotebox"><cite>0meg@ пишет:</cite><blockquote><p>Можно увидеть полный текст для метода WshShell.AppActivate, …</p></blockquote></div><p>Примерно так:<br /></p><div class="codebox"><pre><code>Option Explicit

RunWaitWindow &quot;C:\Program Files\Microsoft Office\OFFICE11\winword.exe&quot;, &quot;Microsoft Word&quot;
RunWaitWindow &quot;C:\Program Files\Microsoft Office\OFFICE11\excel.exe&quot;, &quot;Microsoft Excel&quot;
RunWaitWindow &quot;C:\Windows\System32\notepad.exe&quot;, &quot;Блокнот&quot;

WScript.Quit 0
&#039;=============================================================================

&#039;=============================================================================
Sub RunWaitWindow(strApp, strWindowTitle)
    With WScript.CreateObject(&quot;WScript.Shell&quot;)
        If .Run(&quot;&quot;&quot;&quot; &amp; strApp &amp; &quot;&quot;&quot;&quot;, 1) = 0 Then
            Do 
                WScript.Sleep 100
            Loop Until .AppActivate(strWindowTitle)
        Else
            WScript.Echo &quot;Приложение «&quot; &amp; strApp &amp; &quot;» не удалось запустить&quot;
        End If
    End With
End Sub
&#039;=============================================================================</code></pre></div><p>Вторым параметром в «RunWaitWindow» указывать постоянную часть заголовка окна; эта часть должна приходиться либо на начало, либо на конец заголовка окна.<br /></p><div class="quotebox"><cite>0meg@ пишет:</cite><blockquote><p>…я так понял это тоже сработает.</p></blockquote></div><p>Да, коллега <strong>YMP</strong> <a href="http://forum.script-coding.com/viewtopic.php?pid=41148#p41148">просветил</a> меня в этом отношении.<br /></p><div class="quotebox"><cite>0meg@ пишет:</cite><blockquote><p>…можно увидеть как будет выглядить скрипт полностью на языке AutoIt?</p></blockquote></div><p>Почти без изменений:<br /></p><div class="codebox"><pre><code>AutoItSetOption(&quot;MustDeclareVars&quot;, 1)

If RunWaitWindow(&quot;C:\Program Files\Microsoft Office\OFFICE11\winword.exe&quot;, @MyDocumentsDir, &quot;[CLASS:OpusApp]&quot;, 30) Then
    If RunWaitWindow(&quot;C:\Program Files\Microsoft Office\OFFICE11\excel.exe&quot;, @MyDocumentsDir, &quot;[CLASS:XLMAIN]&quot;, 30) Then
        If RunWaitWindow(&quot;C:\Windows\System32\notepad.exe&quot;, &quot;E:\Песочница&quot;, &quot;[CLASS:Notepad]&quot;, 10) Then
            ConsoleWrite(&quot;Все приложения запущены успешно&quot; &amp; @CRLF)
        EndIf
    EndIf
EndIf

Exit(0)
;=============================================================================

;=============================================================================
Func RunWaitWindow($sApp, $sWorkingDir, $sWindowTitle, $iWaitInterval)
    Local $bResult = False

    If Run(&quot;&quot;&quot;&quot; &amp; $sApp &amp; &quot;&quot;&quot;&quot;, $sWorkingDir, @SW_SHOW) &lt;&gt; 0 Then
        If WinWait($sWindowTitle, &quot;&quot; , $iWaitInterval) &lt;&gt; 0 Then
            $bResult = True
        Else
            ConsoleWriteError(&quot;Окно «&quot; &amp; $sWindowTitle &amp; &quot;» не найдено&quot; &amp; @CRLF)
        EndIf
    Else
        ConsoleWriteError(&quot;Приложение «&quot; &amp; $sApp &amp; &quot;» не удалось запустить&quot; &amp; @CRLF)
    EndIf

    Return $bResult
EndFunc
;=============================================================================</code></pre></div><p>Разве что «WinWait()» при успехе возвращает не просто «1», а хэндл окна.</p><p>Это достаточно просто. А вот ежели нужно будет запускать и отслеживать появление окон именно запускаемых экземпляров приложений (например, запускаем «Блокнот», а у нас уже есть несколько запущенных «Блокнотов»), тогда только AutoItX/AutoIt/PoSH.</p>]]></description>
			<author><![CDATA[null@example.com (alexii)]]></author>
			<pubDate>Sun, 07 Nov 2010 09:17:06 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=41295#p41295</guid>
		</item>
		<item>
			<title><![CDATA[Re: CMD/BAT: Запуск 3 программ]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=41290#p41290</link>
			<description><![CDATA[<p>Можно увидеть полный текст для метода WshShell.AppActivate, я так понял это тоже сработает.<br />3 программы действительно будут запускаться на &quot;свободной\пустой&quot; машине, без других приложений, о задержке при вызове я тоже думал, но конечно если бы можно было бы все сделать правильно и запускать программы поочередно как сейчас через AutoIT, но в рамках одного языка скажем VBS + WSH было бы лучше. Кстати если не трудно можно увидеть как будет выглядить скрипт полностью на языке AutoIt?</p>]]></description>
			<author><![CDATA[null@example.com (0meg@)]]></author>
			<pubDate>Sun, 07 Nov 2010 05:07:33 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=41290#p41290</guid>
		</item>
		<item>
			<title><![CDATA[Re: CMD/BAT: Запуск 3 программ]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=41239#p41239</link>
			<description><![CDATA[<div class="quotebox"><cite>Аскет пишет:</cite><blockquote><p>bat-скрипт конечно-же работает…</p></blockquote></div><p>Не работает. Наивно полагать, что запуск приложения в реальных условиях будет всегда занимать заданное время.<br /></p><div class="quotebox"><cite>Аскет пишет:</cite><blockquote><p>…в отличии например от предложенного Вами vbs&#039;а с внешними библиотеками и всякими костылями</p></blockquote></div><p>Обоснуйте, пожалуйста, про «…всякие костыли», коллега.</p>]]></description>
			<author><![CDATA[null@example.com (alexii)]]></author>
			<pubDate>Fri, 05 Nov 2010 07:10:36 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=41239#p41239</guid>
		</item>
		<item>
			<title><![CDATA[Re: CMD/BAT: Запуск 3 программ]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=41220#p41220</link>
			<description><![CDATA[<p>Уже и ошибка где-то появилась? <img src="//forum.script-coding.com/img/smilies/lol.png" width="15" height="15" /><br /><strong>bat</strong>-скрипт конечно-же работает в стиле &quot;гротеск&quot;, но от этого нисколько не хромает (в отличии например от предложенного Вами vbs&#039;а с внешними библиотеками и всякими костылями) <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /></p>]]></description>
			<author><![CDATA[null@example.com (Аскет)]]></author>
			<pubDate>Thu, 04 Nov 2010 16:37:59 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=41220#p41220</guid>
		</item>
		<item>
			<title><![CDATA[Re: CMD/BAT: Запуск 3 программ]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=41212#p41212</link>
			<description><![CDATA[<p>Это теперь так называется отсутствие аргументов и нежелание признать свою ошибку?</p>]]></description>
			<author><![CDATA[null@example.com (alexii)]]></author>
			<pubDate>Thu, 04 Nov 2010 08:28:18 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=41212#p41212</guid>
		</item>
		<item>
			<title><![CDATA[Re: CMD/BAT: Запуск 3 программ]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=41210#p41210</link>
			<description><![CDATA[<p>Помоему, уже пошла откровенная демагогия.</p>]]></description>
			<author><![CDATA[null@example.com (Аскет)]]></author>
			<pubDate>Thu, 04 Nov 2010 01:12:11 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=41210#p41210</guid>
		</item>
		<item>
			<title><![CDATA[Re: CMD/BAT: Запуск 3 программ]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=41190#p41190</link>
			<description><![CDATA[<p>Замерьте время, тщательнейшим образом всё рассчитайте, сделайте Ваш скрипт. Запустите. Всё работает.</p><p>Теперь запустите простой скрипт (для одного ядра; для двух и более запустите по такому скрипту на каждое ядро, назначив им соответствие в диспетчере задач):<br /></p><div class="codebox"><pre><code>Do
    a = 2
Loop</code></pre></div><p>Попробуйте теперь запустить Ваш скрипт. Как думаете, насколько удачно он отработает?</p>]]></description>
			<author><![CDATA[null@example.com (alexii)]]></author>
			<pubDate>Wed, 03 Nov 2010 10:59:21 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=41190#p41190</guid>
		</item>
		<item>
			<title><![CDATA[Re: CMD/BAT: Запуск 3 программ]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=41189#p41189</link>
			<description><![CDATA[<div class="quotebox"><blockquote><p>это говорит о том что запуск ПО происходит на &quot;пустом&quot; рабочем столе</p></blockquote></div>]]></description>
			<author><![CDATA[null@example.com (Аскет)]]></author>
			<pubDate>Wed, 03 Nov 2010 10:52:05 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=41189#p41189</guid>
		</item>
		<item>
			<title><![CDATA[Re: CMD/BAT: Запуск 3 программ]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=41178#p41178</link>
			<description><![CDATA[<p>Это ни о чём не говорит.</p>]]></description>
			<author><![CDATA[null@example.com (alexii)]]></author>
			<pubDate>Wed, 03 Nov 2010 08:58:27 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=41178#p41178</guid>
		</item>
		<item>
			<title><![CDATA[Re: CMD/BAT: Запуск 3 программ]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=41176#p41176</link>
			<description><![CDATA[<div class="quotebox"><cite>alexii пишет:</cite><blockquote><p>и зависит от ряда величин в данный конкретный момент времени - загрузки процессора, количества свободной физической памяти (свопирование).</p></blockquote></div><p>Думаю, НЕ в данном случае:</p><div class="quotebox"><blockquote><p>имено в таком порядке на панели задач (Панель ПУСК, Панель Quick Launch, 3DsMax, PROMT 8, notepad)</p></blockquote></div><p>это говорит о том что запуск ПО происходит на &quot;пустом&quot; рабочем столе (т.е. когда панель задач ещё пустая), что в конечном итоге говорит нам о том что память свободна.<br /><img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /></p>]]></description>
			<author><![CDATA[null@example.com (Аскет)]]></author>
			<pubDate>Wed, 03 Nov 2010 08:53:20 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=41176#p41176</guid>
		</item>
		<item>
			<title><![CDATA[Re: CMD/BAT: Запуск 3 программ]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=41149#p41149</link>
			<description><![CDATA[<p>Значит, меня подвело опять знание иностранного языка <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" />.</p>]]></description>
			<author><![CDATA[null@example.com (alexii)]]></author>
			<pubDate>Tue, 02 Nov 2010 12:29:59 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=41149#p41149</guid>
		</item>
		<item>
			<title><![CDATA[Re: CMD/BAT: Запуск 3 программ]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=41148#p41148</link>
			<description><![CDATA[<div class="quotebox"><cite>alexii пишет:</cite><blockquote><div class="quotebox"><cite>AppActivate Method пишет:</cite><blockquote><p>…but it does not affect whether it is maximized or minimized.</p></blockquote></div></blockquote></div><p>Ну и что? Что в этой фразе такого? Активирует, не меняя макси/минимизированного состояния.</p>]]></description>
			<author><![CDATA[null@example.com (YMP)]]></author>
			<pubDate>Tue, 02 Nov 2010 12:11:35 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=41148#p41148</guid>
		</item>
		<item>
			<title><![CDATA[Re: CMD/BAT: Запуск 3 программ]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=41147#p41147</link>
			<description><![CDATA[<div class="quotebox"><cite>YMP пишет:</cite><blockquote><p>А может, делать в цикле WshShell.AppActivate, пока не вернёт код успеха, а потом уже запускать следующую программу?</p></blockquote></div><p>Я тоже сразу про это подумал, но отказался из-за:<br /></p><div class="quotebox"><cite>AppActivate Method пишет:</cite><blockquote><p>…but it does not affect whether it is maximized or minimized.</p></blockquote></div><div class="quotebox"><cite>Аскет пишет:</cite><blockquote><p>Время запуска &quot;тяжёлого приложения&quot; на отдельно взятой машине почти всегда одинаково.</p></blockquote></div><p>…и зависит от ряда величин в данный конкретный момент времени — загрузки процессора, количества свободной физической памяти (свопирование).</p>]]></description>
			<author><![CDATA[null@example.com (alexii)]]></author>
			<pubDate>Tue, 02 Nov 2010 11:58:02 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=41147#p41147</guid>
		</item>
		<item>
			<title><![CDATA[Re: CMD/BAT: Запуск 3 программ]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=41146#p41146</link>
			<description><![CDATA[<div class="quotebox"><cite>YMP пишет:</cite><blockquote><p>А может, делать в цикле WshShell.AppActivate</p></blockquote></div><p>Я как раз об этом сейчас и подумал!<br />Ваш пост подкрепил мои &quot;опасения&quot;.<br /></p><div class="codebox"><pre><code>set wshell=CreateObject (&quot;Wscript.shell&quot;)
do UNTIL wshell.Appactivate (&quot;PROMT&quot;) = True
 wsh.sleep 1000
loop
....
&#039;Запуск следующего приложения
...</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (Аскет)]]></author>
			<pubDate>Tue, 02 Nov 2010 11:23:35 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=41146#p41146</guid>
		</item>
	</channel>
</rss>
