<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; VBS: Метод выхода/завершение скрипта]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=7998&amp;type=atom" />
	<updated>2013-01-25T08:23:20Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=7998</id>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Метод выхода/завершение скрипта]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=68836#p68836" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Dr.Hofmann пишет:</cite><blockquote><p>Непонятно &lt;WaitOnReturn&gt; - True / vbTrue метода Run вы убрали его для тех строк которые принадлежат copy_move.vbs - Нужно же понимать что произойдет если по какой либо причине эти строки кода не отработают.</p></blockquote></div><p>Операции копирования запускаются уже не отдельным вызовом внешнего скрипта, а внутри основного, т.е. пока они не отработают - далее скрипт не продолжится.<br />Если не отработают операции копирования из-за ошибок - то получите ошибку и скрипт прервется.</p><br /><p>А в вызове через Run отправки сообщения особого смысла в ожидании нет, т.к. после этого вызова Вашему скрипту остается просто завершиттся -&nbsp; ведь никаих более операций ниже той строки нет.</p>]]></content>
			<author>
				<name><![CDATA[Rom5]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=5724</uri>
			</author>
			<updated>2013-01-25T08:23:20Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=68836#p68836</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Метод выхода/завершение скрипта]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=68834#p68834" />
			<content type="html"><![CDATA[<p>Непонятно &lt;WaitOnReturn&gt; - True / vbTrue метода Run вы убрали его для тех строк которые принадлежат copy_move.vbs - Нужно же понимать что произойдет если по какой либо причине эти строки кода не отработают.</p>]]></content>
			<author>
				<name><![CDATA[Dr.Hofmann]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=29448</uri>
			</author>
			<updated>2013-01-25T05:25:06Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=68834#p68834</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Метод выхода/завершение скрипта]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=68824#p68824" />
			<content type="html"><![CDATA[<div class="codebox"><pre><code>LogFile = &quot;.\cat1&quot; 
Set objFSO = CreateObject(&quot;Scripting.FileSystemObject&quot;)   
Set Folder = objFSO.GetFolder(LogFile)
If Folder.files.count &gt; 0 Then
    &#039;&#039;&#039;&#039;WScript.CreateObject(&quot;Wscript.Shell&quot;).Run &quot;copy_move.vbs&quot;, 1, vbTrue
    Const OverwriteExisting = True  
    objFSO.CopyFile &quot;.\cat1\*.*&quot; , &quot;.\arch\&quot; , OverwriteExisting                                 
    objFSO.MoveFile &quot;.\cat1\*.*&quot; , &quot;.\cat2\&quot; 
    &#039;--- net send
    WScript.CreateObject(&quot;Wscript.Shell&quot;).Run &quot;net.exe send 192.168.10.108 Cat1_Msg_RECEIVED!&quot;, 1
End If
WScript.Quit </code></pre></div>]]></content>
			<author>
				<name><![CDATA[Rom5]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=5724</uri>
			</author>
			<updated>2013-01-24T13:38:48Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=68824#p68824</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Метод выхода/завершение скрипта]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=68822#p68822" />
			<content type="html"><![CDATA[<p>Запуск &quot;net send&quot; тоже можете попробовать оформить вызовом в строке с cmd.exe (&quot;%comspec%) вместо вызова своего батника. Вот для примера строки запуска команды с паузой:<br /></p><div class="codebox"><pre><code>WScript.CreateObject(&quot;Wscript.Shell&quot;).Run _
&quot;%comspec% /K chcp 1251 &amp;&amp; net send 192.168.10.108 Получено сообщение  &amp;&amp;Pause&amp;&amp;Exit&quot;</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Rom5]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=5724</uri>
			</author>
			<updated>2013-01-24T13:37:04Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=68822#p68822</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Метод выхода/завершение скрипта]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=68821#p68821" />
			<content type="html"><![CDATA[<p>Если не планируется еще из другого скрипта вызывать &quot;copy_move.vbs&quot;, то просто включите его текст (кроме дублирующегося объявления &quot;Set objFSO&quot;) в &quot;стартовый&quot; скрипт вместо вызова </p><div class="codebox"><pre><code>WScript.CreateObject&quot;Wscript.Shell&quot;).Run &quot;copy_move.vbs</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Rom5]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=5724</uri>
			</author>
			<updated>2013-01-24T13:18:58Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=68821#p68821</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Метод выхода/завершение скрипта]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=68820#p68820" />
			<content type="html"><![CDATA[<div class="quotebox"><blockquote><p>Всё можно объединить в один скрипт.</p></blockquote></div><p>Комрад,&nbsp; напиши название метода раз сказал))</p>]]></content>
			<author>
				<name><![CDATA[Dr.Hofmann]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=29448</uri>
			</author>
			<updated>2013-01-24T12:51:35Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=68820#p68820</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Метод выхода/завершение скрипта]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=68817#p68817" />
			<content type="html"><![CDATA[<p>Всё можно объединить в один скрипт.</p>]]></content>
			<author>
				<name><![CDATA[alexii]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=1844</uri>
			</author>
			<updated>2013-01-24T12:29:13Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=68817#p68817</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Метод выхода/завершение скрипта]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=68811#p68811" />
			<content type="html"><![CDATA[<div class="quotebox"><blockquote><p>Dr.Hofmann, для проверки наличия файлов достаточно Folder.Files.Count &gt; 0 безо всяких подписок.</p></blockquote></div><p>пасиб - получилось</p><p>Вот как сделал:</p><p><strong>run_copy.vbs</strong><br /></p><div class="codebox"><pre><code>LogFile = &quot;.\cat1&quot; 
Set objFSO = CreateObject(&quot;Scripting.FileSystemObject&quot;)   
Set Folder = objFSO.GetFolder(LogFile)
If Folder.files.count &gt; 0 Then
WScript.CreateObject(&quot;Wscript.Shell&quot;).Run &quot;copy_move.vbs&quot;, 1, vbTrue
WScript.CreateObject(&quot;Wscript.Shell&quot;).Run &quot;netsend.bat&quot;, 1, vbTrue
Else
WScript.Quit 
End If</code></pre></div><p><strong>copy_move.vbs</strong><br /></p><div class="codebox"><pre><code>Const OverwriteExisting = True  
Set objFSO = CreateObject(&quot;Scripting.FileSystemObject&quot;) 
objFSO.CopyFile &quot;.\cat1\*.*&quot; , &quot;.\arch\&quot; , OverwriteExisting                                 
objFSO.MoveFile &quot;.\cat1\*.*&quot; , &quot;.\cat2\&quot; 
WScript.Quit</code></pre></div><p><strong>netsend.bat</strong><br /></p><div class="codebox"><pre><code>cd %systemroot%\system32
chcp 1251
net send 192.168.10.108 Получено сообщение</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Dr.Hofmann]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=29448</uri>
			</author>
			<updated>2013-01-24T09:46:02Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=68811#p68811</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Метод выхода/завершение скрипта]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=68804#p68804" />
			<content type="html"><![CDATA[<p><strong>Dr.Hofmann</strong>, для проверки <em>наличия</em> файлов достаточно Folder.Files.Count &gt; 0 безо всяких подписок.</p>]]></content>
			<author>
				<name><![CDATA[alexii]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=1844</uri>
			</author>
			<updated>2013-01-23T16:20:11Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=68804#p68804</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Метод выхода/завершение скрипта]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=68803#p68803" />
			<content type="html"><![CDATA[<div class="quotebox"><blockquote><p>Если известно имя конкретного файла, то там же на &quot;Главной&quot;, где про объекты WScript, есть и про объект &quot;FileSystemObject&quot; и там есть про метод &quot;FileExists&quot;.</p></blockquote></div><p>Я же написал каких-либо файлов -&nbsp; имя его неизвестно.</p><div class="quotebox"><blockquote><p>VBS проверка существования файла по маске</p></blockquote></div><p>полезными оказались две строчки<br /></p><div class="codebox"><pre><code>использовать иной инструмент: WMI-подписку на соответствующее системное событие.
Ищите на форуме темы по ключам CIM_DirectoryContainsFile и __InstanceCreationEvent.</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Dr.Hofmann]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=29448</uri>
			</author>
			<updated>2013-01-23T15:15:27Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=68803#p68803</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Метод выхода/завершение скрипта]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=68802#p68802" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Dr.Hofmann пишет:</cite><blockquote><p>Возникает вопрос а зачем его запускать если в каталоге нет файлов?</p><p>С помощъю чего можно реализовать проверку наличия каких либо файлов в каталоге? - на первом этапе а потом уже производить копирование или перемещение.</p></blockquote></div><p> Если известно имя конкретного файла, то там же на &quot;Главной&quot;, где про объекты WScript, есть и про объект &quot;FileSystemObject&quot; и там есть про метод &quot;FileExists&quot;.</p>]]></content>
			<author>
				<name><![CDATA[Rom5]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=5724</uri>
			</author>
			<updated>2013-01-23T12:56:33Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=68802#p68802</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Метод выхода/завершение скрипта]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=68801#p68801" />
			<content type="html"><![CDATA[<div class="quotebox"><blockquote><p>FSO-методы&nbsp; .Copy и .Move по моему не поддерживают символы подстановки (*, ?), т.е. это только для явно указанного файла.</p></blockquote></div><p>Поддерживают.</p><p>В отличие от «.FileExists()». Посему здесь:<br /></p><div class="quotebox"><blockquote><p>LogFile = &quot;.\cat1\*.*&quot;<br />…<br />If objFSO.FileExists(LogFile) Then</p></blockquote></div><p>— ошибка.</p><div class="quotebox"><blockquote><p>С помощъю чего можно реализовать проверку наличия каких либо файлов в каталоге?</p></blockquote></div><p><a href="http://forum.script-coding.com/viewtopic.php?id=7535">VBS проверка существования файла по маске</a></p>]]></content>
			<author>
				<name><![CDATA[alexii]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=1844</uri>
			</author>
			<updated>2013-01-23T12:51:21Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=68801#p68801</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Метод выхода/завершение скрипта]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=68798#p68798" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Rom5 пишет:</cite><blockquote><p><a href="http://www.script-coding.com/WSH/WshShell.html#3.4.">Объект WshShell - Метод 3.4. Run</a></p><p>Там есть пример запуска (например, Вашего батника) с ожиданием завершения работы и выводом возвращаемого кода.</p><p>а также - <a href="http://www.script-coding.com/WSH/WshShell.html#4.2.1.">4.2.1. ExitCode</a></p><br /><p>Устанавливать на выходе из скрипта свой код возврата - <a href="http://www.script-coding.com/WSH/WScript.html#3.2.">Объект WScript - 3.2. Quit</a></p></blockquote></div><p>Возникает вопрос а зачем его запускать если в каталоге нет файлов?</p><p>С помощъю чего можно реализовать проверку наличия каких либо файлов в каталоге? - на первом этапе а потом уже производить копирование или перемещение.</p>]]></content>
			<author>
				<name><![CDATA[Dr.Hofmann]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=29448</uri>
			</author>
			<updated>2013-01-23T11:21:57Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=68798#p68798</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Метод выхода/завершение скрипта]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=68795#p68795" />
			<content type="html"><![CDATA[<p>FSO-методы&nbsp; .Copy и .Move по моему не поддерживают символы подстановки (*, ?), т.е. это только для явно указанного файла.</p><p>Для работы с маской можете вызывать внешний cmd.exe с командой копирования (или вызов батник, принимающий параметры - что и куда копировать):<br /></p><div class="codebox"><pre><code>WScript.CreateObject(&quot;WScript.Shell&quot;).Run &quot;%COMSPEC% /c Copy &lt;source&gt; &lt;dest&gt;&quot;</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Rom5]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=5724</uri>
			</author>
			<updated>2013-01-23T07:00:02Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=68795#p68795</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Метод выхода/завершение скрипта]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=68794#p68794" />
			<content type="html"><![CDATA[<div class="codebox"><pre><code>LogFile = &quot;.\cat1\*.*&quot;
Const OverwriteExisting = True   
Set objFSO = CreateObject(&quot;Scripting.FileSystemObject&quot;)     
     
If objFSO.FileExists(LogFile) Then 
objFSO.CopyFile &quot;.\cat1\*.*&quot; , &quot;.\arch\&quot; , OverwriteExisting                                 
objFSO.MoveFile &quot;.\cat1\*.*&quot; , &quot;.\cat2\&quot; 
Else                           
WScript.Quit 1
End If</code></pre></div><p>Выполняется но ничего не делает, вопрос к знатокам где ошибка?</p>]]></content>
			<author>
				<name><![CDATA[Dr.Hofmann]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=29448</uri>
			</author>
			<updated>2013-01-23T06:03:16Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=68794#p68794</id>
		</entry>
</feed>
