<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; AHK:  Настройки сетевого адаптера]]></title>
	<link rel="self" href="http://forum.script-coding.com/extern.php?action=feed&amp;tid=7985&amp;type=atom" />
	<updated>2013-02-02T02:35:17Z</updated>
	<generator>PunBB</generator>
	<id>http://forum.script-coding.com/viewtopic.php?id=7985</id>
		<entry>
			<title type="html"><![CDATA[Re: AHK:  Настройки сетевого адаптера]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=69035#p69035" />
			<content type="html"><![CDATA[<div class="quotebox"><blockquote><p>этот код это первая часть скрипта</p></blockquote></div><p>Часть этого кода будет присутствовать в скрипте.</p>]]></content>
			<author>
				<name><![CDATA[creature.ws]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=26105</uri>
			</author>
			<updated>2013-02-02T02:35:17Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=69035#p69035</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK:  Настройки сетевого адаптера]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=69030#p69030" />
			<content type="html"><![CDATA[<p>Если я правильно понимаю, то первый этап - это создание безопасных массивов для работы с COM. (Не понимаю для чего, но судя по всему надо.) </p><div class="codebox"><pre><code>Var_IPAddress := &quot;192.168.60.26&quot;
IPAddress := ComObjArray(8, 1)            
IPAddress[0] := Var_IPAddress

Var_SubnetMask := &quot;255.255.255.0&quot;
SubnetMask := ComObjArray(8, 1)            
SubnetMask[0] := Var_SubnetMask

Var_Gateway := &quot;192.168.0.6&quot;
Gateway := ComObjArray(8, 1)            
Gateway[0] := Var_Gateway

MsgBox, 64, Массивы для &quot;COM&quot;, % &quot;Айпи: &quot; IPAddress[0] &quot;`nМаска: &quot; SubnetMask[0] &quot;`nШлюз: &quot; Gateway[0]               
ExitApp</code></pre></div><p>То есть, этот код это первая часть скрипта. Я правильно понимаю?</p>]]></content>
			<author>
				<name><![CDATA[migomigo]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=24684</uri>
			</author>
			<updated>2013-02-01T09:46:31Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=69030#p69030</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK:  Настройки сетевого адаптера]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=69023#p69023" />
			<content type="html"><![CDATA[<p>По ссылкам в сообщении #18 можно найти пример на vbs:<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="codebox"><pre><code>strComputer = &quot;.&quot;
Set objWMIService = GetObject( _
    &quot;winmgmts:\\&quot; &amp; strComputer &amp; &quot;\root\cimv2&quot;)
Set colNetAdapters = objWMIService.ExecQuery _
    (&quot;Select * from Win32_NetworkAdapterConfiguration &quot; _
        &amp; &quot;where IPEnabled=TRUE&quot;)
strIPAddress = Array(&quot;192.168.1.141&quot;)
strSubnetMask = Array(&quot;255.255.255.0&quot;)
strGateway = Array(&quot;192.168.1.100&quot;)
strGatewayMetric = Array(1)
 
For Each objNetAdapter in colNetAdapters
    errEnable = objNetAdapter.EnableStatic( _
        strIPAddress, strSubnetMask)
    errGateways = objNetAdapter.SetGateways(_
        strGateway, strGatewaymetric)
Next</code></pre></div></div></div><p>От него отталкивайтесь, а не от кода из сообщения #12 <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /></p><p>В Autohotkey, действие:<br /></p><div class="codebox"><pre><code>strIPAddress = Array(&quot;192.168.1.141&quot;)</code></pre></div><p>будет выглядеть как:<br /></p><div class="codebox"><pre><code>IPAddress := ComObjArray(8, 1)
IPAddress[0] := &quot;192.168.1.141&quot;</code></pre></div><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"><p>Если в скрипте подразумевается работа только с массивами, применимыми в качестве параметров методов COM объектов, то можно переопределить «родную» Array():<br /></p><div class="codebox"><pre><code>Array(Args*) {
    count := Args.MaxIndex()
    Array := ComObjArray(8, count)

    loop %count%
        Array[A_Index - 1] := Args[A_Index]

    return Array
}</code></pre></div></div></div>]]></content>
			<author>
				<name><![CDATA[creature.ws]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=26105</uri>
			</author>
			<updated>2013-01-31T14:41:29Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=69023#p69023</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK:  Настройки сетевого адаптера]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=69017#p69017" />
			<content type="html"><![CDATA[<p>Попробовал разобраться - это для меня слишком сложно.. <br /></p><div class="codebox"><pre><code>Static := &quot;192.168.0.151&quot;

WMI := ComObjGet(&quot;winmgmts:\\&quot; A_ComputerName &quot;\root\cimv2&quot;)
query := &quot;SELECT EnableStatic FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled=TRUE&quot;

for NetAdapter in WMI.ExecQuery(query) {
    NewEnableStatic := NetAdapter.EnableStatic
    NewEnableStatic[1] := Static
    NetAdapter.EnableStatic(NewEnableStatic)
}</code></pre></div><p>На этот код Айпи адрес даже и не почесался..</p>]]></content>
			<author>
				<name><![CDATA[migomigo]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=24684</uri>
			</author>
			<updated>2013-01-31T12:52:06Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=69017#p69017</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK:  Настройки сетевого адаптера]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=68970#p68970" />
			<content type="html"><![CDATA[<p>Примеры на VBS: <a href="http://msdn.microsoft.com/en-us/library/windows/desktop/aa394595%28v=vs.85%29.aspx">WMI Tasks: Networking</a><br /><em>WMI </em> — <a href="http://msdn.microsoft.com/en-us/library/windows/desktop/aa393854%28v=vs.85%29.aspx">SWbemServices object</a>.<br /><em>ExecQuery</em> — <a href="http://msdn.microsoft.com/en-us/library/windows/desktop/aa393866%28v=vs.85%29.aspx">ExecQuery</a> метод этого объекта.<br /><em>WMI.ExecQuery(query)</em> — при данном query — «коллекция сетевых адаптеров» для которых флаг IPEnabled = true<br /><em>for NetAdapter in WMI.ExecQuery(query)</em>&nbsp; — перебор коллекции.<br /><em>NetAdapter.SetDNSServerSearchOrder()</em> — вызов метода SetDNSServerSearchOrder класса Win32_NetworkAdapterConfiguration в контексте текущего адаптера.</p><p><em>NetAdapter.EnableStatic()</em> — вызов метода EnableStatic. В качестве агрумента этому методу следует передать объект (предварительно созданный с помощью встроенной функции ComObjArray) содержащий нужные параметры.</p>]]></content>
			<author>
				<name><![CDATA[creature.ws]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=26105</uri>
			</author>
			<updated>2013-01-29T14:11:07Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=68970#p68970</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK:  Настройки сетевого адаптера]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=68957#p68957" />
			<content type="html"><![CDATA[<p>Немогу проследить аналогию.. <img src="//forum.script-coding.com/img/smilies/roll.png" width="15" height="15" /></p><p>Если вам не трудно, адаптируйте пожалуйста этот скрипт:<br /></p><div class="codebox"><pre><code>alternateDNS := &quot;8.8.4.4&quot;

WMI := ComObjGet(&quot;winmgmts:\\&quot; . A_ComputerName . &quot;\root\cimv2&quot;)
query := &quot;SELECT DNSServerSearchOrder FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled=TRUE&quot;

for NetAdapter in WMI.ExecQuery(query) {
    NewDNSServerSearchOrder := NetAdapter.DNSServerSearchOrder
    NewDNSServerSearchOrder[1] := alternateDNS
    NetAdapter.SetDNSServerSearchOrder(NewDNSServerSearchOrder)
}</code></pre></div><p>для команды: <strong>EnableStatic</strong><br />Может быть тогда смогу понять...</p><br /><br /><br /><div class="codebox"><pre><code>WMI.ExecQuery(query)</code></pre></div><p>Насколько я понимаю, ссылается на функцию.. Среди встроенных функций, таковую не могу найти, в теле скрипта её нет.. Как этот код работает - не понимаю..</p>]]></content>
			<author>
				<name><![CDATA[migomigo]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=24684</uri>
			</author>
			<updated>2013-01-29T13:37:24Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=68957#p68957</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK:  Настройки сетевого адаптера]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=68944#p68944" />
			<content type="html"><![CDATA[<p><a href="http://msdn.microsoft.com/en-us/library/windows/desktop/aa394217%28v=vs.85%29.aspx">Win32_NetworkAdapterConfiguration class</a> содержит&nbsp; необходимые методы.<br /><strong>SetGateways</strong> для маски и шлюза, <strong>SetDNSServerSearchOrder </strong> для dns, <strong>EnableStatic </strong> для ip aдрес.</p>]]></content>
			<author>
				<name><![CDATA[creature.ws]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=26105</uri>
			</author>
			<updated>2013-01-29T13:05:34Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=68944#p68944</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK:  Настройки сетевого адаптера]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=68940#p68940" />
			<content type="html"><![CDATA[<p>То что надо, спасибо! <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /></p><p>Дело в том что мои познания не идут дальше <strong>AHK</strong>. И эта функция для меня - тёмный лес...<br /><strong>creature.ws</strong>!<br />А если речь пойдет о Всех настройках сетевого адаптера?</p><p>Возможно такую же функцию написать для:<br /><strong>IP Адрес:</strong><br /><strong>Маска подсети:</strong><br /><strong>Шлюз:</strong><br /><strong>DNS:</strong><br /><strong>Альтернативный DNS: </strong>(Уже есть)</p>]]></content>
			<author>
				<name><![CDATA[migomigo]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=24684</uri>
			</author>
			<updated>2013-01-29T12:23:24Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=68940#p68940</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK:  Настройки сетевого адаптера]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=68915#p68915" />
			<content type="html"><![CDATA[<p>Попробуйте не копировать DNSServerSearchOrder в NewDNSServerSearchOrder,<br />а предварительно его создать и заполнить.</p>]]></content>
			<author>
				<name><![CDATA[creature.ws]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=26105</uri>
			</author>
			<updated>2013-01-27T13:11:37Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=68915#p68915</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK:  Настройки сетевого адаптера]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=68914#p68914" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>creature.ws пишет:</cite><blockquote><div class="quotebox"><blockquote><p>В таком случае, версия AHK не имеет значения.</p></blockquote></div><p>Версия определяет реализацию. Для актуальной:</p><div class="codebox"><pre><code>alternateDNS := &quot;92.168.250.22&quot;

WMI := ComObjGet(&quot;winmgmts:\\&quot; . A_ComputerName . &quot;\root\cimv2&quot;)
query := &quot;SELECT DNSServerSearchOrder FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled=TRUE&quot;

for NetAdapter in WMI.ExecQuery(query) {
    NewDNSServerSearchOrder := NetAdapter.DNSServerSearchOrder
    NewDNSServerSearchOrder[1] := alternateDNS
    NetAdapter.SetDNSServerSearchOrder(NewDNSServerSearchOrder)
}</code></pre></div></blockquote></div><p>Этот код, после запуска выдаёт у меня следующую ошибку:<br /><span class="postimg"><img src="http://migo.ucoz.ru/AHK/01010101010.jpg" alt="http://migo.ucoz.ru/AHK/01010101010.jpg" /></span></p>]]></content>
			<author>
				<name><![CDATA[migomigo]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=24684</uri>
			</author>
			<updated>2013-01-27T12:01:40Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=68914#p68914</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK:  Настройки сетевого адаптера]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=68808#p68808" />
			<content type="html"><![CDATA[<div class="quotebox"><blockquote><p>В таком случае, версия AHK не имеет значения.</p></blockquote></div><p>Версия определяет реализацию. Для актуальной:</p><div class="codebox"><pre><code>alternateDNS := &quot;8.8.4.4&quot;

WMI := ComObjGet(&quot;winmgmts:\\&quot; . A_ComputerName . &quot;\root\cimv2&quot;)
query := &quot;SELECT DNSServerSearchOrder FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled=TRUE&quot;

for NetAdapter in WMI.ExecQuery(query) {
    NewDNSServerSearchOrder := NetAdapter.DNSServerSearchOrder
    NewDNSServerSearchOrder[1] := alternateDNS
    NetAdapter.SetDNSServerSearchOrder(NewDNSServerSearchOrder)
}</code></pre></div>]]></content>
			<author>
				<name><![CDATA[creature.ws]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=26105</uri>
			</author>
			<updated>2013-01-24T06:05:37Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=68808#p68808</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK:  Настройки сетевого адаптера]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=68800#p68800" />
			<content type="html"><![CDATA[<p>Супер! <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /><br />Спасибо!</p>]]></content>
			<author>
				<name><![CDATA[migomigo]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=24684</uri>
			</author>
			<updated>2013-01-23T12:23:43Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=68800#p68800</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK:  Настройки сетевого адаптера]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=68757#p68757" />
			<content type="html"><![CDATA[<p>Горячую клавишу можно и в одну строчку уместить:<br /></p><div class="codebox"><pre><code>F10:: Run, netsh interface ip add dnsservers %Conect_Name% %IP_Adress%, , Hide</code></pre></div>]]></content>
			<author>
				<name><![CDATA[ypppu]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=5974</uri>
			</author>
			<updated>2013-01-21T16:27:17Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=68757#p68757</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK:  Настройки сетевого адаптера]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=68756#p68756" />
			<content type="html"><![CDATA[<p>Спасибо. <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /> <br /><img src="//forum.script-coding.com/img/smilies/cool.png" width="15" height="15" />&nbsp; Вот что получилось:</p><div class="codebox"><pre><code>SendMode Input 
SetKeyDelay, -1

Conect_Name := &quot;BSS&quot;                       ;=============================== [ Имя сетевого подключения ]
IP_Adress := &quot;192.168.250.22&quot;              ;=============================== [ DNS Server ]
WinName := &quot;ahk_class ConsoleWindowClass&quot;  ;=============================== [ Имя Окна ]
Command = netsh interface ip add dnsservers &quot;%Conect_Name%&quot; %IP_Adress%
    
F10::
Run, CMD.exe, C:\Windows\System32
WinWait, % WinName
Send, % Command &quot;{Enter}&quot;
Sleep, 1000
WinClose, % WinName
return</code></pre></div><p>Я правильно вас понял, или можно как-то упростить? Как считаете? <img src="//forum.script-coding.com/img/smilies/roll.png" width="15" height="15" /></p>]]></content>
			<author>
				<name><![CDATA[migomigo]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=24684</uri>
			</author>
			<updated>2013-01-21T16:13:15Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=68756#p68756</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK:  Настройки сетевого адаптера]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=68724#p68724" />
			<content type="html"><![CDATA[<p><a href="http://kaktusenok.blogspot.ru/2012/09/blog-post.html">Настройка параметров сетевого адаптера из командной строки </a><br /></p><div class="fancy_spoiler_switcher"><div class="fancy_spoiler_switcher_header"><strong>+</strong>&nbsp;Изменить настройки DNS</div><div class="fancy_spoiler"><p><strong>Изменить настройки DNS</strong><br />Команда выглядит следующим образом:<br /></p><div class="codebox"><pre><code>
C:\Windows\system32&gt;netsh interface ip set dnsservers help
 
Применение: set dnsservers [name=]&lt;строка&gt; [source=]dhcp|static
             [[address=]&lt;IP-адрес&gt;|none]
             [[register=]none|primary|both]
             [[validate=]yes|no]
 
Параметры
 
      Тег            Значение
 
      name         - Имя или индекс интерфейса.
      source       - Одно из следующих значений:
                     dhcp: назначает DHCP в качестве источника конфигурации
                           DNS-серверов для определенного интерфейса.
                     static: назначает в качестве источника конфигурации
                           DNS-серверов локальную статическую конфигурацию.
      address      - Одно из следующих значений:
                     &lt;IP-адрес&gt;: IP-адрес DNS-сервера.
                     none: очищает список DNS-серверов.
      register     - Одно из следующих значений:
                     none: отключает динамическую регистрацию DNS.
                     primary: регистрация только с суффиксом основного DNS.
                     both: регистрация как с суффиксом основного DNS,
                           так и с суффиксом, определенным для подключения.
 
      validate     - Указывает, выполняется ли проверка после настройки
                     параметров DNS-сервера. Значение по умолчанию: yes.
 
 
Примечания. Задает в конфигурации DNS-сервера режим DHCP или статический
            режим. Параметр addr будет доступен для конфигурации
            статического списка IP-адресов DNS-серверов для указанного
            интерфейса только при установке источником static. Если значение
            параметра Validate равно yes, то новый DNS-сервер проверяется.
 
Примеры
 
      set dnsservers name=&quot;Local Area Connection&quot; source=dhcp
      set dnsservers &quot;Local Area Connection&quot; static 10.0.0.1  primary</code></pre></div><p>В сети гуляет подавляющее большинство описаний, где вместо dnsservers указывается dns. Это устаревший параметр, который оставлен для совместимости.</p><p>Пример 1. Задать автоматическое получение параметров DNS-сервера по протоколу DHCP для адаптера &quot;Подключение по локальной сети&quot;:	</p><div class="codebox"><pre><code>
netsh interface ip set dnsserver name=&quot;Подключение по локальной сети&quot; source=dhcp
или
netsh interface ip set dnsserver &quot;Подключение по локальной сети&quot; dhcp</code></pre></div><p>Пример 2. Задать статические параметры DNS-сервера для адаптера &quot;Подключение по локальной сети&quot;, где первый DNS-сервер имеет IP-адрес 213.108.208.2, а второй 213.108.209.2:</p><div class="codebox"><pre><code>
netsh interface ip set dnsservers &quot;Подключение по локальной сети&quot; static 213.108.208.2
netsh interface ip add dnsservers &quot;Подключение по локальной сети&quot; 213.108.209.2</code></pre></div><p>Обратите внимание, что команда set dnsservers сбрасывает список DNS-серверов для выбранного сетевого адаптера и устанавливает первый DNS-сервер в указанное значение. Последующие DNS-сервера добавляются через команду add вместо set.</p></div></div>]]></content>
			<author>
				<name><![CDATA[ypppu]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=5974</uri>
			</author>
			<updated>2013-01-20T19:20:00Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=68724#p68724</id>
		</entry>
</feed>
