<?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: Замена ответов Rasdial]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=12129</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=12129&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «CMD/BAT: Замена ответов Rasdial».]]></description>
		<lastBuildDate>Sun, 06 Nov 2016 02:42:39 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: CMD/BAT: Замена ответов Rasdial]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=108826#p108826</link>
			<description><![CDATA[<p>Одна (но не единственная) из трудностей задачи — после выполнения в CMD.EXE команды с перенаправлением<br /></p><div class="codebox"><pre><code>command_1 | command_2</code></pre></div><p>не доступны коды возврата ни command_1, ни command2.</p><p>Оставаясь в рамках командных файлов, удалось получить лишь следующие решения:<br />1) просеивая вывод RASDIAL с помощью FINDSTR<br /></p><div class="codebox"><pre><code>@echo off
if /%1==/1 goto 1
&quot;%~0&quot; 1 | findstr /v /b^
	/c:&quot;Чтобы вывести сведения о данной ошибке:&quot;^
	/c:&quot;	введите &#039;hh netcfg.chm&#039; и в Справке&quot;^
	/c:&quot;	выберите раздел разрешения проблем, затем сообщений об ошибках и найдите &quot;^
	/c:&quot;Костыль&quot;
exit /b
---------------------------
:1
(echo Костыль)
rem Предыдущая строка - &quot;костыль&quot; для синхронизации, зачем - сам плохо понимаю
SET /P CONNECTION=CONNECTION=&gt;CON
rasdial %CONNECTION%
if errorlevel 1 goto 1
exit /b
</code></pre></div><p>2) перенаправляя вывод RASDIAL во временный файл и <span class="bbu">затем</span> обрабатывая его, не используя внешних команд<br /></p><div class="codebox"><pre><code>@echo off
setlocal enableextensions enabledelayedexpansion
:1
(
	call :2
	if errorlevel 1 goto 1
) &gt;rasdial.log &lt;rasdial.log
del rasdial.log
endlocal
exit /b
---------------------------
:2
rasdial connection
(echo **EOF**)

:3
set &quot;line=&quot;
set /p &quot;line=&quot;
if &quot;!line!&quot;==&quot;**EOF**&quot; exit /b 0
if &quot;!line!&quot;==&quot;Чтобы вывести сведения о данной ошибке:&quot; exit /b 1
echo:!line!&gt;con
goto 3
</code></pre></div><p>В обоих случаях не видно живого хода подключения — весь вывод RASDIAL показывается после завершения команды: во втором случае это очевидно, в первом — менее предсказуемо.</p><p>Предполагаю (пока не проверял), что положение может спасти подключение к решению JS (или VBS) для чтения выходного потого RASDIAL. Если не использовать вывод в файл и слежение за ним, то возможен либо запуск RASDIAL методом <em>WshShell.Exec</em>, либо перенаправление выходного потока RASDIAL во входной поток сценария WSH.</p>]]></description>
			<author><![CDATA[null@example.com (wisgest)]]></author>
			<pubDate>Sun, 06 Nov 2016 02:42:39 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=108826#p108826</guid>
		</item>
		<item>
			<title><![CDATA[CMD/BAT: Замена ответов Rasdial]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=108823#p108823</link>
			<description><![CDATA[<p>Стандартные ответы rasdial:<br /></p><div class="fancy_spoiler_switcher"><div class="fancy_spoiler_switcher_header" data-lang-open="открыть спойлер" data-lang-close="скрыть спойлер"><strong>+</strong>&nbsp;открыть спойлер</div><div class="fancy_spoiler"><div class="quotebox"><blockquote><p>Установка связи с rasdial...<br />Проверка имени и пароля пользователя...</p><p>Ошибка службы удаленного доступа 691 - В удаленном подключении отказано, так как<br /> не удалось распознать указанную комбинацию имени пользователя и пароля или выбр<br />анный протокол проверки подлинности не разрешен на сервере удаленного доступа.</p><p>Чтобы вывести сведения о данной ошибке:<br />&nbsp; &nbsp; &nbsp; &nbsp; введите &#039;hh netcfg.chm&#039; и в Справке<br />&nbsp; &nbsp; &nbsp; &nbsp; выберите раздел разрешения проблем, затем сообщений об ошибках и найдите<br /> 691.</p><br /><p>Установка связи с rasdial...<br />Проверка имени и пароля пользователя...<br />Регистрация компьютера в сети...<br />Установлена связь с rasdial.<br />Команда успешно выполнена.<br />_____________________________________________________________________</p></blockquote></div></div></div><p>Желаймый ответ при ошибках - укороченный:<br /></p><div class="quotebox"><blockquote><p>Установка связи с rasdial...<br />Проверка имени и пароля пользователя...</p><p>Ошибка службы удаленного доступа 691 - В удаленном подключении отказано, так как<br /> не удалось распознать указанную комбинацию имени пользователя и пароля или выбр<br />анный протокол проверки подлинности не разрешен на сервере удаленного доступа.</p></blockquote></div><p>Соблюдая условия перезвона при ошибке:<br /></p><div class="codebox"><pre><code>if %ERRORLEVEL% GTR 0 (goto RasDial)</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (paspdkmok)]]></author>
			<pubDate>Sat, 05 Nov 2016 19:45:45 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=108823#p108823</guid>
		</item>
	</channel>
</rss>
