<?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>http://forum.script-coding.com/viewtopic.php?id=16007</link>
		<atom:link href="http://forum.script-coding.com/extern.php?action=feed&amp;tid=16007&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «VBS: Подправить скрипт для создания ярлыка на панели задач».]]></description>
		<lastBuildDate>Sun, 24 Jan 2021 07:53:36 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: VBS: Подправить скрипт для создания ярлыка на панели задач]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=145380#p145380</link>
			<description><![CDATA[<p><strong>user7256</strong>, день добрый.</p><p>Я бы предложил заменить конструкцию с With </p><div class="codebox"><pre><code>
    With WScript.CreateObject(&quot;Shell.Application&quot;)
        With .Namespace(objFSO.GetParentFolderName(objFile))
            With .ParseName(objFSO.GetFileName(objFile))
                .InvokeVerb(&quot;{:}&quot;)
            End With
        End With
    End With
</code></pre></div><p>на</p><div class="codebox"><pre><code>CreateObject(&quot;Shell.Application&quot;) _
	.Namespace(objFSO.GetParentFolderName(objFile)) _
	.ParseName(objFSO.GetFileName(objFile)) _
	.InvokeVerb(&quot;{:}&quot;)</code></pre></div><p>With нужен только если в выделенных местах необходимо множественное обращение к свойствам и методам исходного объекта на текущем уровне вложенности:</p><div class="quotebox"><blockquote><p>With WScript.CreateObject(&quot;Shell.Application&quot;)<br />		<span style="color: red">----&gt;</span><br />&nbsp; &nbsp; &nbsp; &nbsp; With .Namespace(objFSO.GetParentFolderName(objFile))<br />			<span style="color: red">----&gt;</span><br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; With .ParseName(objFSO.GetFileName(objFile))<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; .InvokeVerb(&quot;{:}&quot;)<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; End With<br />			<span style="color: red">----&gt;</span><br />&nbsp; &nbsp; &nbsp; &nbsp; End With<br />		<span style="color: red">----&gt;</span><br />&nbsp; &nbsp; End With</p></blockquote></div>]]></description>
			<author><![CDATA[null@example.com (Xameleon)]]></author>
			<pubDate>Sun, 24 Jan 2021 07:53:36 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=145380#p145380</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS: Подправить скрипт для создания ярлыка на панели задач]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=145361#p145361</link>
			<description><![CDATA[<p>Этот вариант не сработал.<br />Но я понял, что я сам ошибся.<br />Решил свою проблему, установив Рабочую папку в свойствах изначального lnk-файла.<br />Если не было прописано там, то и на панели задач не будет прописано.<br />Мой lnk-файл создавался в другом скрипте, а там можно выстановить эту рабочую папку.</p><p>Вам отдельное спасибо за желание помочь и плюс в карму.</p>]]></description>
			<author><![CDATA[null@example.com (user7256)]]></author>
			<pubDate>Sat, 23 Jan 2021 19:32:15 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=145361#p145361</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS: Подправить скрипт для создания ярлыка на панели задач]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=145354#p145354</link>
			<description><![CDATA[<p><strong>user7256</strong><br />Мне не хочется экспериментировать с модификацией реестра на своём компьютере, поэтому попробую чисто теоретически предложить:</p><div class="codebox"><pre><code>    
    With WScript.CreateObject(&quot;Shell.Application&quot;)
        With .Namespace(objFSO.GetParentFolderName(objFile))
            With .ParseName(objFSO.GetFileName(objFile))
                .InvokeVerb(&quot;{:}&quot;)
&#039;&#039;&#039;
                With .GetLink
                    .WorkingDirectory = objFSO.GetParentFolderName(objFile) &#039; или какая должна быть рабочая папка?
                    .Save
                End With
&#039;&#039;&#039;
            End With
        End With
    End With
</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (andypetr)]]></author>
			<pubDate>Sat, 23 Jan 2021 16:42:48 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=145354#p145354</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS: Подправить скрипт для создания ярлыка на панели задач]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=145332#p145332</link>
			<description><![CDATA[<p>Что-то пока не получается.<br />Не могу понять, как это впихнуть в многоуровневый With.</p>]]></description>
			<author><![CDATA[null@example.com (user7256)]]></author>
			<pubDate>Sat, 23 Jan 2021 10:25:50 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=145332#p145332</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS: Подправить скрипт для создания ярлыка на панели задач]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=145279#p145279</link>
			<description><![CDATA[<p><strong>user7256</strong></p><p>Вроде, можно так (пример взят из Automation.chm - пока некогда писать и проверять код):</p><p>Set objShellApp = CreateObject(&quot;Shell.Application&quot;)<br />Set objFolder=objShellApp.NameSpace(&quot;C:\&quot;).ParentFolder.ParentFolder &#039;рабочий стол<br />Set objFolderItem = objFolder.ParseName(&quot;Paint.lnk&quot;)<br /><strong>Set objSLO = objFolderItem.GetLink<br /></strong>MsgBox objSLO.WorkingDirectory<br /><strong>objSLO.WorkingDirectory = &quot;C:\&quot;<br />objSLO.Save<br /></strong>MsgBox objSLO.WorkingDirectory</p>]]></description>
			<author><![CDATA[null@example.com (andypetr)]]></author>
			<pubDate>Fri, 22 Jan 2021 16:43:05 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=145279#p145279</guid>
		</item>
		<item>
			<title><![CDATA[VBS: Подправить скрипт для создания ярлыка на панели задач]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=145257#p145257</link>
			<description><![CDATA[<p>Есть такой скрипт<br /></p><div class="codebox"><pre><code>
&#039; origin: https://stackoverflow.com/questions/31720595/pin-program-to-taskbar-using-ps-in-windows-10


If WScript.Arguments.Count &lt; 1 Then WScript.Quit
&#039;----------------------------------------------------------------------
Set objFSO = CreateObject(&quot;Scripting.FileSystemObject&quot;)
objFile    = WScript.Arguments.Item(0)
sKey1      = &quot;HKCU\Software\Classes\*\shell\{:}\\&quot;
sKey2      = Replace(sKey1, &quot;\\&quot;, &quot;\ExplorerCommandHandler&quot;)
&#039;----------------------------------------------------------------------
With WScript.CreateObject(&quot;WScript.Shell&quot;)
    KeyValue = .RegRead(&quot;HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer&quot; &amp; _
        &quot;\CommandStore\shell\Windows.taskbarpin\ExplorerCommandHandler&quot;)

    .RegWrite sKey2, KeyValue, &quot;REG_SZ&quot;

    With WScript.CreateObject(&quot;Shell.Application&quot;)
        With .Namespace(objFSO.GetParentFolderName(objFile))
            With .ParseName(objFSO.GetFileName(objFile))
                .InvokeVerb(&quot;{:}&quot;)
            End With
        End With
    End With

    .Run(&quot;Reg.exe delete &quot;&quot;&quot; &amp; Replace(sKey1, &quot;\\&quot;, &quot;&quot;) &amp; &quot;&quot;&quot; /F&quot;), 0, True
End With
&#039;----------------------------------------------------------------------</code></pre></div><p>Я запускаю его из стороннего приложения, передаю аргументом - путь к lnk-файлу, который хочу прикрепить к панели задач.<br />Скрипт хорошо работает. <br />Единственный минус - в свойствах получившегося ярлыка не заполнено поле &quot;Рабочая папка&quot;.<br />А без этого запускаемая программа некорректно работает.<br />Исправить ее не получится (third party app).</p><p>Как в этом скрипте записать еще и рабочую папку?<br /><span class="postimg"><img src="https://i.imgur.com/3Tu1x5l.png" alt="https://i.imgur.com/3Tu1x5l.png" /></span></p>]]></description>
			<author><![CDATA[null@example.com (user7256)]]></author>
			<pubDate>Fri, 22 Jan 2021 12:19:51 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=145257#p145257</guid>
		</item>
	</channel>
</rss>
