<?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=8149</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=8149&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «VBS определить нажатую кнопку в окне».]]></description>
		<lastBuildDate>Thu, 14 Mar 2013 12:11:08 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: VBS определить нажатую кнопку в окне]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=70285#p70285</link>
			<description><![CDATA[<p>Возможно такой вариант подойдёт ? На XP проверить нет возможности.</p>]]></description>
			<author><![CDATA[null@example.com (Xameleon)]]></author>
			<pubDate>Thu, 14 Mar 2013 12:11:08 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=70285#p70285</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS определить нажатую кнопку в окне]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=70283#p70283</link>
			<description><![CDATA[<p>Я думал над таким вариантом, но он мне не подходит.</p><p>Если пользователь нажмёт кнопку &quot;Отмена&quot;, то cmd не запустится и мы будем вечно ожидать появления процесса.</p>]]></description>
			<author><![CDATA[null@example.com (Elusive87)]]></author>
			<pubDate>Thu, 14 Mar 2013 09:31:21 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=70283#p70283</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS определить нажатую кнопку в окне]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=70271#p70271</link>
			<description><![CDATA[<p>Предлагаю - скриптом перед стартом этого runas-пинга создать асинхронный обработчик &quot;ожидающий&quot; на машине события создания процессов с именем cmd.exe (поищите в коллекции примеры, лично мне такое делать не приходилось, но по-моему обсуждалось, и не раз). В обработчике контролируйте командные строки появляющихся процессов, чтобы достоверно отсеять свой cmd.exe от возможных других.&nbsp; </p><p>Когда &quot;дождетесь&quot; появления именно своего процесса, проконтролируйте его создателя: если хозяин процесса не отличается от имени текущего (для скрипта) пользователя, значит регистрацию другой у/з не выполняли - можете процесс пинга убить и завершить работу скрипта.</p>]]></description>
			<author><![CDATA[null@example.com (Rom5)]]></author>
			<pubDate>Wed, 13 Mar 2013 20:54:08 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=70271#p70271</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS определить нажатую кнопку в окне]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=70268#p70268</link>
			<description><![CDATA[<p>Вот пример кода:</p><div class="codebox"><pre><code>With CreateObject(&quot;Shell.Application&quot;)
    .ShellExecute &quot;cmd&quot;, &quot;/c ping mail.ru&quot;, &quot;&quot;, &quot;runas&quot;, 1
End With</code></pre></div><p>В данном примере я запускаю экземпляр командного шела и передаю ему параметр - исполнять пинговку узла mail.ru, причём, я хочу чтобы он запустился от имени другой учётной записи, поэтому я передаю методу ShellExecute параметр &quot;runas&quot;. На ХР это приведёт к тому, что появится окно где предлагается выбрать другую локлаьную учётку и ввести пароль, на 7 - предлагается запустить от имени Админа.</p><p>Вот эти окна - и есть суть моего вопроса. Меня интересует возможность отследить когда пользователь нажмёт в таком окне &quot;Нет&quot;, ведь тогда скрипту продолжать работу нет смысла.</p><div class="quotebox"><blockquote><p>1) на момент ввода регистрационных данных исполняемый файл по сути еще не стартовал?</p></blockquote></div><p>Верно, его запустит ОСь, если польозватель введёт корректные учётные данные.</p><div class="quotebox"><blockquote><p>2) пользователь может отказаться вводить регистрацию и, тот исполняемый файл запустится от пользовательской у/з, а Вам надо обязательно это недопустить?</p></blockquote></div><p>Смысл процедуры, которую я задумал - дать возможность запутисть процессы (в которых может возникнуть необходимость) от имени учётки с админ. правами в случае, если приложение будет запущено под ограниченной учётной записью. Смысла запускать исполняемые файлы под ограниченной учёткой нет.</p><div class="quotebox"><blockquote><p>3) скрипт каким-то образом взаимодействует с запускаемым приложением или ожидает завершения его выполнения чтобы чем-то там воспользоваться, например, неким результатом, без которого дальнейшая работа бессмыслена?</p></blockquote></div><p>Да, скрипт должен будет ждать пока процесс, для которого вводились учётные данные, завершится. Но это не имеет отношения к моему вопросу.</p>]]></description>
			<author><![CDATA[null@example.com (Elusive87)]]></author>
			<pubDate>Wed, 13 Mar 2013 19:39:58 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=70268#p70268</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS определить нажатую кнопку в окне]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=70265#p70265</link>
			<description><![CDATA[<div class="quotebox"><cite>Elusive87 пишет:</cite><blockquote><p>...<br /> запускает исполняемый файл от имени другой учётной записи в результате чего появляется стандартное окно Windows, предлагающее ввести альтернативные логин/пароль. Мне необходимо удостовериться, что в этом окне не была нажата кнопка отмена, либо, если она всё-таки была нажата, то скрипт должен завершиться<br />...</p></blockquote></div><p>Я правильно понимаю, что :<br />1) на момент ввода регистрационных данных исполняемый файл по сути еще не стартовал?<br />2) пользователь может отказаться вводить регистрацию и, тот исполняемый файл запустится от пользовательской у/з, а Вам надо обязательно это недопустить?<br />3) скрипт каким-то образом взаимодействует с запускаемым приложением или ожидает завершения его выполнения чтобы чем-то там воспользоваться, например, неким результатом, без которого дальнейшая работа бессмыслена?</p><br /><p><em>ps. если знаете - как &quot;выглядит&quot; процесс запускаемого приложения, то можете через WMI-запрос получить данные процесса и узнать его имя владельца.</em></p>]]></description>
			<author><![CDATA[null@example.com (Rom5)]]></author>
			<pubDate>Wed, 13 Mar 2013 17:57:34 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=70265#p70265</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS определить нажатую кнопку в окне]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=70250#p70250</link>
			<description><![CDATA[<div class="quotebox"><blockquote><p>в результате чего появляется стандартное окно Windows,</p></blockquote></div><p>Приведите Ваш код.</p>]]></description>
			<author><![CDATA[null@example.com (alexii)]]></author>
			<pubDate>Wed, 13 Mar 2013 15:27:10 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=70250#p70250</guid>
		</item>
		<item>
			<title><![CDATA[VBS определить нажатую кнопку в окне]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=70247#p70247</link>
			<description><![CDATA[<p>Доброго времени суток.</p><p>Помогите решить следующую задачу.</p><p>Мой скрипт в процессе выполнения запускает исполняемый файл от имени другой учётной записи в результате чего появляется стандартное окно Windows, предлагающее ввести альтернативные логин/пароль. Мне необходимо удостовериться, что в этом окне не была нажата кнопка отмена, либо, если она всё-таки была нажата, то скрипт должен завершиться. Каким образом можно определить какую из кнопок нажал пользователь в shellьном окне?</p>]]></description>
			<author><![CDATA[null@example.com (Elusive87)]]></author>
			<pubDate>Wed, 13 Mar 2013 15:16:44 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=70247#p70247</guid>
		</item>
	</channel>
</rss>
