<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; VBScript: создание ярлыка для сетевого подключения]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=1596</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=1596&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «VBScript: создание ярлыка для сетевого подключения».]]></description>
		<lastBuildDate>Thu, 20 Nov 2008 07:23:15 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: VBScript: создание ярлыка для сетевого подключения]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=16125#p16125</link>
			<description><![CDATA[<p>Существует ещё один способ создать ярлык для существующего в телефонной книге удалённого подключения. Он заключается в создании текстового файла с произвольным именем и расширением «rnk» в кодировке ANSI (windows-1251), имеющего структуру ini-файла следующего вида:<br />* имя секции:<br /></p><div class="codebox"><pre><code>[Dial-Up Shortcut]</code></pre></div><p>* параметры (порядок параметров внутри секции не важен):<br /></p><div class="codebox"><pre><code>Phonebook=&lt;полный путь к телефонной книге&gt;
Entry=&lt;имя существующего подключения из телефонной книги&gt;</code></pre></div><p>Пример: <strong><em>C:\Documents and Settings\User\Рабочий стол\Мой Интернет.rnk</em></strong><br /></p><div class="codebox"><pre><code>[Dial-Up Shortcut]
Entry=Интернет
Phonebook=C:\Documents and Settings\All Users\Application Data\Microsoft\Network\Connections\Pbk\rasphone.pbk</code></pre></div><p>Созданный ярлык по поддерживаемым действиям аналогичен «обычному» помещению ярлыка существующего подключения на рабочий стол (за исключением некоторых деталей, о которых ниже). Функции подключения, отключения и редактирования свойств подключения, указанного ярлыком, выполняет связанное с типом файлов «rnk» приложение RasPhone.exe — «Телефонная книга удаленного доступа».</p><p><em>Подключить</em>:<br /></p><div class="codebox"><pre><code>rasphone.exe -lt &quot;C:\Documents and Settings\User\Рабочий стол\Мой Интернет.rnk&quot;</code></pre></div><p><em>Отключить</em>:<br /></p><div class="codebox"><pre><code>rasphone.exe -lh &quot;C:\Documents and Settings\User\Рабочий стол\Мой Интернет.rnk&quot;</code></pre></div><p><em>Изменение настроек подключения</em>:<br /></p><div class="codebox"><pre><code>rasphone.exe -le &quot;C:\Documents and Settings\User\Рабочий стол\Мой Интернет.rnk&quot;</code></pre></div><p><strong>Замечание</strong>.<br />Поскольку в современных операционных системах описанная возможность оставлена, скорее, для совместимости, то:<br />* пункты контекстного меню в локализованной версии Windows XP выглядят как «Connect», «Disconnect» и «Edit connection properties»;<br />* вызов команды контекстного меню «Edit connection properties» приводит к появлению диалогового окна со справкой по ключам приложения RasPhone.exe.</p><p>Локализовать контекстное меню можно в стиле Windows XP так: <strong><em>rnkfile - Localize like XP.reg</em></strong><br /></p><div class="codebox"><pre><code>REGEDIT4

[HKEY_CLASSES_ROOT\rnkfile\shell\Connect]
@=&quot;&amp;Подключить&quot;

[HKEY_CLASSES_ROOT\rnkfile\shell\Disconnect]
@=&quot;&amp;Отключить&quot;

[HKEY_CLASSES_ROOT\rnkfile\shell\Edit Connection Properties]
@=&quot;&amp;Изменение настроек подключения&quot;</code></pre></div><p>Либо в стиле Windows NT: <strong><em>rnkfile - Localize like NT.reg</em></strong><br /></p><div class="codebox"><pre><code>REGEDIT4

[HKEY_CLASSES_ROOT\rnkfile\shell\Connect]
@=&quot;&amp;Набрать номер&quot;

[HKEY_CLASSES_ROOT\rnkfile\shell\Disconnect]
@=&quot;&amp;Повесить трубку&quot;

[HKEY_CLASSES_ROOT\rnkfile\shell\Edit Connection Properties]
@=&quot;&amp;Изменить запись или параметры модема&quot;</code></pre></div><p>Следующий файл восстановит значения по умолчанию для Windows XP: <strong><em>rnkfile - Localize Restore XP default.reg</em></strong><br /></p><div class="codebox"><pre><code>REGEDIT4

[HKEY_CLASSES_ROOT\rnkfile\shell\Connect]
@=-

[HKEY_CLASSES_ROOT\rnkfile\shell\Disconnect]
@=-

[HKEY_CLASSES_ROOT\rnkfile\shell\Edit Connection Properties]
@=-</code></pre></div><p>Ошибка при вызове команды контекстного меню «Edit connection properties» происходит оттого, что в записи реестра хранится вызов приложения RasPhone.exe с более не поддерживаемым ключом «-v». Исправить ситуацию поможет следующий файл: <strong><em>rnkfile - Make Available [Edit Connection Properties] command.reg</em></strong><br /></p><div class="codebox"><pre><code>REGEDIT4

[HKEY_CLASSES_ROOT\rnkfile\shell\Edit Connection Properties\command]
@=&quot;C:\\WINDOWS\\system32\\rasphone.exe -le \&quot;%1\&quot;&quot;</code></pre></div><p>Следующий файл восстановит значения по умолчанию для Windows XP <em>[не знаю к чему, но, коль полагается, — прикладываю]</em>: <strong><em>rnkfile - [Edit Connection Properties] Restore XP default.reg</em></strong><br /></p><div class="codebox"><pre><code>REGEDIT4

[HKEY_CLASSES_ROOT\rnkfile\shell\Edit Connection Properties\command]
@=&quot;C:\\WINDOWS\\system32\\rasphone.exe -v -le \&quot;%1\&quot;&quot;</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (alexii)]]></author>
			<pubDate>Thu, 20 Nov 2008 07:23:15 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=16125#p16125</guid>
		</item>
		<item>
			<title><![CDATA[VBScript: создание ярлыка для сетевого подключения]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=11627#p11627</link>
			<description><![CDATA[<p>Создание ярлыка на Рабочем столе для существующего сетевого подключения (VPN или любого другого). В коде вместо &quot;Имя соединения&quot; укажите полное наименование нужного сетевого подключения, так, как оно отображается в папке Проводника &quot;Сетевые подключения&quot;.<br /></p><div class="codebox"><pre><code>Option Explicit

Const ssfCONNECTIONS = &amp;H0031
Const ssfDESKTOP = &amp;H0000
&#039;Const ssfCOMMON_DESKTOPDIRECTORY = &amp;H0019

Dim objShell
Dim objFolderConnections
Dim objFolderDesktop
&#039;Dim objFolderAllUsersDesktop
Dim objSubFolder


Set objShell = WScript.CreateObject(&quot;Shell.Application&quot;)
Set objFolderConnections = objShell.NameSpace(ssfCONNECTIONS)

If (Not objFolderConnections Is Nothing) Then
    For Each objSubFolder In objFolderConnections.Items
        If objSubFolder.Name = &quot;Имя соединения&quot; Then
            Set objFolderDesktop = objShell.NameSpace(ssfDESKTOP) &#039;objFolderAllUsersDesktop
            
            If (Not objFolderDesktop Is Nothing) Then
                objFolderDesktop.CopyHere objSubFolder
            End If
        End If
    Next
End If

Set objFolderDesktop = Nothing &#039; objFolderAllUsersDesktop
Set objFolderConnections = Nothing
Set objShell = Nothing

WScript.Quit 0</code></pre></div><p>При повторном исполнении скрипта на Рабочем столе появится ещё один ярлык с именем «Имя соединения (2)», «Имя соединения (3)» и т.д.<br />Автор скрипта - <strong>alexii</strong>.</p>]]></description>
			<author><![CDATA[null@example.com (The gray Cardinal)]]></author>
			<pubDate>Fri, 20 Jun 2008 08:33:28 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=11627#p11627</guid>
		</item>
	</channel>
</rss>
