<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; VBS: Ярлык для запуска приложения от имени администратора (UAC)]]></title>
	<link rel="self" href="http://forum.script-coding.com/extern.php?action=feed&amp;tid=5808&amp;type=atom" />
	<updated>2017-02-11T15:34:36Z</updated>
	<generator>PunBB</generator>
	<id>http://forum.script-coding.com/viewtopic.php?id=5808</id>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Ярлык для запуска приложения от имени администратора (UAC)]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=112235#p112235" />
			<content type="html"><![CDATA[<p>Ну тогда и я добавлю <a href="http://forum.script-coding.com/viewtopic.php?id=11162">ссылку на связанную тему на нашем форуме</a>, содержащую простое и нестандартное решение (а ля <strong>sudo</strong>) для запуска любых прог с ком-строки с повышенными правами.</p>]]></content>
			<author>
				<name><![CDATA[mozers]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=4112</uri>
			</author>
			<updated>2017-02-11T15:34:36Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=112235#p112235</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Ярлык для запуска приложения от имени администратора (UAC)]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=48545#p48545" />
			<content type="html"><![CDATA[<p>Решил дополнить тему. Вдруг кто будет искать про UAC более подробно</p><p>1) <strong>Пример автоматического перезапуска скрипта с повышенными правами</strong><br /><a href="http://www.winhelponline.com/articles/185/1/VBScripts-and-UAC-elevation.html">http://www.winhelponline.com/articles/1 … ation.html</a></p><p>2) <strong>Примеры определения своих прав в скрипте</strong><br /><a href="http://csi-windows.com/toolkit/ifuserperms">http://csi-windows.com/toolkit/ifuserperms</a><br /><a href="http://blogs.technet.com/b/jhoward/archive/2008/11/19/how-to-detect-uac-elevation-from-vbscript.aspx">http://blogs.technet.com/b/jhoward/arch … cript.aspx</a></p>]]></content>
			<author>
				<name><![CDATA[Xameleon]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=8836</uri>
			</author>
			<updated>2011-05-20T11:35:33Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=48545#p48545</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Ярлык для запуска приложения от имени администратора (UAC)]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=48529#p48529" />
			<content type="html"><![CDATA[<p>Срочно в Коллекцию :-)</p>]]></content>
			<author>
				<name><![CDATA[JSmаn]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=24434</uri>
			</author>
			<updated>2011-05-19T19:50:40Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=48529#p48529</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Ярлык для запуска приложения от имени администратора (UAC)]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=48503#p48503" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>BeS Yara пишет:</cite><blockquote><p>Если требуется создавать полноценный ярлык с включением запуска от другой учётки, то прийдётся работать с файлом ярлыка в бинарном виде.<br />н</p></blockquote></div><p>Спасибо за наводку, все получилось как надо.</p><div class="codebox"><pre><code>Function make_this_shortcut_to_run_as_admin(file_name)
	Set instream = CreateObject(&quot;ADODB.Stream&quot;)
	Set fso = WScript.CreateObject(&quot;Scripting.Filesystemobject&quot;)	
	With instream
		.Charset = &quot;ascii&quot;
		.Type = 2
		.Mode = 3
		.Open()
		.Position = 0
		.LoadFromFile(file_name)
	fso.DeleteFile(file_name)
		.Position = 21
		.WriteText Chr(96)
		.Position = 0
		.SaveToFile file_name
		.Close()
	End With
	Set instream = Nothing
	Set Fso = Nothing
End Function</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Alexey]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=2696</uri>
			</author>
			<updated>2011-05-19T11:29:15Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=48503#p48503</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Ярлык для запуска приложения от имени администратора (UAC)]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=48499#p48499" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Alexey пишет:</cite><blockquote><p>Вот мой вариант</p></blockquote></div><p>Если в ярлык в любом случае прописывается не программа, то почему бы не создать скрипт (например в C:\RunProgAs.vbs) вроде такого:<br /></p><div class="codebox"><pre><code>
option explicit
Dim Shell
Set Shell = CreateObject(&quot;Shell.Application&quot;)
If WScript.Arguments.Count = 0 then wscript.echo &quot;не указана программа для запуска!&quot; : WScript.Quit
If WScript.Arguments.Count = 1 Then
    Shell.ShellExecute WScript.Arguments(0), , , &quot;runas&quot;, 1
Else
    wscript.echo &quot;слишком много параметров!&quot; : WScript.Quit
End If</code></pre></div><p>Тогда в свойствах ярлыка указать: <br /></p><div class="codebox"><pre><code>
objShortCut.TargetPath = &quot;wscript.exe&quot;
objShortCut.Arguments = &quot;C:\RunProgAs.vbs notepad.exe&quot;</code></pre></div><p>Если требуется создавать полноценный ярлык с включением запуска от другой учётки, то прийдётся работать с файлом ярлыка в бинарном виде.<br /></p><div class="quotebox"><blockquote><p>http://download.microsoft.com/download/a/e/6/ae6e4142-aa58-45c6-8dcf-a657e5900cd3/[MS-SHLLINK].pdf<br />Shell Link (.LNK) Binary File Format</p></blockquote></div><div class="quotebox"><cite>MS-SHLLINK.pdf пишет:</cite><blockquote><p>2.1.1 LinkFlags<br />&lt;...&gt;<br />N (RunAsUser): The application is run as a different user when the target of the shell link is activated.</p></blockquote></div><p>Но для меня это задачка требующая длительного отвлечения от забот насущных, а &quot;Времени не хватает... :-(&quot; (с) Евген</p>]]></content>
			<author>
				<name><![CDATA[BeS Yara]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=25643</uri>
			</author>
			<updated>2011-05-19T07:36:48Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=48499#p48499</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Ярлык для запуска приложения от имени администратора (UAC)]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=48486#p48486" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Rom5 пишет:</cite><blockquote><p>Для поддержки UAC я использовал возможности другого скриптового языка - AutiIt. Иформация о нем есть и на &quot;Сером форуме&quot;.<br />AutiIt имеет для UAC специальную включаемую в код опцию, я некоторые свои VBS-наработки, вызывающие/активизирующие другие приложения, довольно быстро перенес на аутоит и усовершенствовал - работают они теперь и под XP и под Win7. Рекомендую.</p><p>В Вашем случае можно, например, сделать на AutiIt простейшеет приложение, запускающее полученную параметром программу уже с запросом подтверждения UAC в указанной директории с указаными параметрами окна, заодно можно и проконтролировать старт приложения и много прочего недоступного на vbscript. А ярлык сделать на строку вызова этой программы с передачей параметров.</p></blockquote></div><p>Спасибо за отзыв Rom5. С AutoIt я знаком и проблемы написать необходимый функционал нет, но в рамках моей текущей задачи создать ярлык необходимо именно из VBScript/Jscript.</p>]]></content>
			<author>
				<name><![CDATA[Alexey]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=2696</uri>
			</author>
			<updated>2011-05-18T17:11:36Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=48486#p48486</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Ярлык для запуска приложения от имени администратора (UAC)]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=48482#p48482" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Xameleon пишет:</cite><blockquote><p><strong>2 Rom5:</strong> Может всё такие <strong>Aut<span class="bbu">o</span>It</strong>, а не <strong>Aut<span class="bbu">i</span>It</strong> ?</p></blockquote></div><p>Каюсь, опечатался и размножил..<br /><strong>Alexey</strong>, полезный форум AutoIt-овых коллег: <a href="http://autoit-script.ru/">http://autoit-script.ru/</a></p>]]></content>
			<author>
				<name><![CDATA[Rom5]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=5724</uri>
			</author>
			<updated>2011-05-18T13:47:41Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=48482#p48482</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Ярлык для запуска приложения от имени администратора (UAC)]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=48477#p48477" />
			<content type="html"><![CDATA[<p><strong>2 Rom5:</strong> Может всё такие <strong>Aut<span class="bbu">o</span>It</strong>, а не <strong>Aut<span class="bbu">i</span>It</strong> ?</p>]]></content>
			<author>
				<name><![CDATA[Xameleon]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=8836</uri>
			</author>
			<updated>2011-05-18T11:31:24Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=48477#p48477</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Ярлык для запуска приложения от имени администратора (UAC)]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=48475#p48475" />
			<content type="html"><![CDATA[<p>Для поддержки UAC я использовал возможности другого скриптового языка - AutiIt. Иформация о нем есть и на &quot;Сером форуме&quot;.<br />AutiIt имеет для UAC специальную включаемую в код опцию, я некоторые свои VBS-наработки, вызывающие/активизирующие другие приложения, довольно быстро перенес на аутоит и усовершенствовал - работают они теперь и под XP и под Win7. Рекомендую.</p><p>В Вашем случае можно, например, сделать на AutiIt простейшеет приложение, запускающее полученную параметром программу уже с запросом подтверждения UAC в указанной директории с указаными параметрами окна, заодно можно и проконтролировать старт приложения и много прочего недоступного на vbscript. А ярлык сделать на строку вызова этой программы с передачей параметров.</p>]]></content>
			<author>
				<name><![CDATA[Rom5]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=5724</uri>
			</author>
			<updated>2011-05-18T11:07:16Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=48475#p48475</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[VBS: Ярлык для запуска приложения от имени администратора (UAC)]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=48426#p48426" />
			<content type="html"><![CDATA[<p>Собратия по скриптингу, взываю к вам о мыслях Ваших благостных.<br />Потребность есть у меня ярлык создать скриптовым языком VBS, чтоб программу он от имени администратора запускал (UAC).<br />Решение одно мне пришло но не эстетичным видится мне оно. Прошу совета Вашего.<br />Вот мой вариант<br /></p><div class="codebox"><pre><code>Set WshShell = WScript.CreateObject(&quot;Wscript.Shell&quot;)
strDesktopFolder = WshShell.SpecialFolders(&quot;Desktop&quot;)
Set objShortCut = WshShell.CreateShortcut(strDesktopFolder &amp; &quot;\Notepad as admin.lnk&quot;)
objShortCut.TargetPath = &quot;cmd.exe&quot;
objShortCut.Description = &quot;Notepad as admin&quot;
objShortCut.Arguments = &quot;/c echo @echo off &amp;&amp; echo Set S = CreateObject(&quot;&quot;Shell.Application&quot;&quot;)&gt;%temp%\r.vbs &amp;&amp; echo S.ShellExecute &quot;&quot;notepad.exe&quot;&quot;, , , &quot;&quot;runas&quot;&quot;, 1 &gt;&gt;%temp%\r.vbs &amp;&amp; wscript.exe %temp%\r.vbs&quot;
objShortCut.WorkingDirectory= WshShell.SpecialFolders(&quot;System&quot;)
objShortCut.WindowStyle=7
objShortCut.IconLocation =WshShell.SpecialFolders(&quot;System&quot;)+&quot;notepad.exe,0&quot;
objShortCut.Save</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Alexey]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=2696</uri>
			</author>
			<updated>2011-05-16T19:01:17Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=48426#p48426</id>
		</entry>
</feed>
