<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; AHK: получение MAC-адреса не используя командной строки]]></title>
		<link>http://forum.script-coding.com/viewtopic.php?id=12952</link>
		<atom:link href="http://forum.script-coding.com/extern.php?action=feed&amp;tid=12952&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «AHK: получение MAC-адреса не используя командной строки».]]></description>
		<lastBuildDate>Tue, 29 Aug 2017 11:03:42 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: AHK: получение MAC-адреса не используя командной строки]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=118912#p118912</link>
			<description><![CDATA[<p><strong>teadrinker</strong>, уже покликал там всё) До вашего поста. Вот решение: <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"><p>if(adapter.MACAddress &amp;&amp; !!adapter.NetEnabled = 1 &amp;&amp; <span style="color: red">adapter.Manufacturer != &quot;Oracle Corporation&quot;</span>)</p></div></div>]]></description>
			<author><![CDATA[null@example.com (MandarinKa02)]]></author>
			<pubDate>Tue, 29 Aug 2017 11:03:42 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=118912#p118912</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: получение MAC-адреса не используя командной строки]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=118911#p118911</link>
			<description><![CDATA[<p>Тогда не знаю, вот <a href="https://msdn.microsoft.com/en-us/library/aa394216(v=vs.85).aspx">здесь</a> список свойств, проверяйте.</p>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Tue, 29 Aug 2017 11:00:15 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=118911#p118911</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: получение MAC-адреса не используя командной строки]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=118910#p118910</link>
			<description><![CDATA[<p><strong>teadrinker</strong>, спасибо большое. То что нужно).<br />Подправил для себя:<br /></p><div class="codebox"><pre><code>
GetMac()
{
	for adapter in ComObjGet(&quot;winmgmts:&quot;).InstancesOf(&quot;Win32_NetworkAdapter&quot;)  {
		if(adapter.MACAddress &amp;&amp; !!adapter.NetEnabled = 1 &amp;&amp; adapter.Manufacturer != &quot;Oracle Corporation&quot;)
			return adapter.MACAddress
	}
	return -1
}
</code></pre></div><p>И всё равно есть небольшая зацепочка: <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /><br /><span class="postimg"><img src="http://i.imgur.com/sdbOejL.jpg" alt="http://i.imgur.com/sdbOejL.jpg" /></span></p>]]></description>
			<author><![CDATA[null@example.com (MandarinKa02)]]></author>
			<pubDate>Tue, 29 Aug 2017 10:40:31 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=118910#p118910</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: получение MAC-адреса не используя командной строки]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=118882#p118882</link>
			<description><![CDATA[<p>Попробуйте так:<br /></p><div class="codebox"><pre><code>for adapter in ComObjGet(&quot;winmgmts:&quot;).InstancesOf(&quot;Win32_NetworkAdapter&quot;)  {
   if adapter.MACAddress
      MsgBox, % adapter.Description  . &quot;`n&quot;
              . adapter.AdapterType  . &quot;`n&quot;
              . !!adapter.NetEnabled . &quot;`n&quot;
              . adapter.MACAddress
}</code></pre></div><p>Обращайте внимание на третье значение (adapter.NetEnabled).</p>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Mon, 28 Aug 2017 22:59:36 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=118882#p118882</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: получение MAC-адреса не используя командной строки]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=118866#p118866</link>
			<description><![CDATA[<p>А, верно, надо очищать переменную.</p>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Mon, 28 Aug 2017 15:45:28 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=118866#p118866</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: получение MAC-адреса не используя командной строки]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=118864#p118864</link>
			<description><![CDATA[<p><strong>teadrinker</strong>, т.к. у вас один адаптер, то вы ничего не заметите. Но у меня происходит вот такая штука:<br /><span class="postimg"><img src="http://i.imgur.com/LxHX1si.jpg" alt="http://i.imgur.com/LxHX1si.jpg" /></span><br />Адреса склеиваются.<br />Замените в коде последние строчки:<br /></p><div class="codebox"><pre><code>
Loop  {
		description := StrGet(offset := pNext + A_PtrSize + 4 + MAX_ADAPTER_NAME_LENGTH + 4, &quot;CP0&quot;)
		Loop % AddressLength := NumGet( (offset += MAX_ADAPTER_DESCRIPTION_LENGTH + 4) + 0, &quot;UInt&quot;)
			macAddress .= (A_Index = 1 ? &quot;&quot; : &quot;:&quot;) . Format( &quot;{:02X}&quot;, *(offset + 4 + A_Index - 1) )
		
		adapters.Push({ description: description, macAddress: macAddress })
	} until !pNext := NumGet(pNext + 0)
	Return adapters
</code></pre></div><p>На:<br /></p><div class="codebox"><pre><code>
Loop  {
		macAddress := &quot;&quot;
		description := StrGet(offset := pNext + A_PtrSize + 4 + MAX_ADAPTER_NAME_LENGTH + 4, &quot;CP0&quot;)
		Loop % AddressLength := NumGet( (offset += MAX_ADAPTER_DESCRIPTION_LENGTH + 4) + 0, &quot;UInt&quot;)
			macAddress .= (A_Index = 1 ? &quot;&quot; : &quot;:&quot;) . Format( &quot;{:02X}&quot;, *(offset + 4 + A_Index - 1) )
		
		adapters.Push({ description: description, macAddress: macAddress })
	} until !pNext := NumGet(pNext + 0)
	Return adapters
</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (MandarinKa02)]]></author>
			<pubDate>Mon, 28 Aug 2017 15:37:25 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=118864#p118864</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: получение MAC-адреса не используя командной строки]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=118863#p118863</link>
			<description><![CDATA[<p><strong>teadrinker</strong>, по такому же принципу ищу зацепку.</p><p>У меня вот такая ерунда:<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"><p>Везде настоящий MAC заменил на нули) не ругайтесь<br /></p><div class="codebox"><pre><code>
Настройка протокола IP для Windows

   Имя компьютера  . . . . . . . . . : MandarinKa
   Основной DNS-суффикс  . . . . . . : 
   Тип узла. . . . . . . . . . . . . : Гибридный
   IP-маршрутизация включена . . . . : Нет
   WINS-прокси включен . . . . . . . : Нет

Ethernet adapter Tunngle:

   Состояние среды. . . . . . . . : Среда передачи недоступна.
   DNS-суффикс подключения . . . . . : 
   Описание. . . . . . . . . . . . . : TAP-Win32 Adapter V9 (Tunngle)
   Физический адрес. . . . . . . . . : 00-00-00-00-00-00
   DHCP включен. . . . . . . . . . . : Да
   Автонастройка включена. . . . . . : Да

Ethernet adapter Подключение по локальной сети:

   Состояние среды. . . . . . . . : Среда передачи недоступна.
   DNS-суффикс подключения . . . . . : 
   Описание. . . . . . . . . . . . . : Broadcom NetLink (TM) Gigabit Ethernet
   Физический адрес. . . . . . . . . : 00-00-00-00-00-00
   DHCP включен. . . . . . . . . . . : Да
   Автонастройка включена. . . . . . : Да

Адаптер беспроводной локальной сети Беспроводное сетевое соединение 2:

   Состояние среды. . . . . . . . : Среда передачи недоступна.
   DNS-суффикс подключения . . . . . : 
   Описание. . . . . . . . . . . . . : Microsoft Virtual WiFi Miniport Adapter
   Физический адрес. . . . . . . . . : 00-00-00-00-00-00
   DHCP включен. . . . . . . . . . . : Да
   Автонастройка включена. . . . . . : Да

Адаптер беспроводной локальной сети Беспроводное сетевое соединение:

   DNS-суффикс подключения . . . . . : 
   Описание. . . . . . . . . . . . . : Atheros AR5B97 Wireless Network Adapter
   Физический адрес. . . . . . . . . : 00-00-00-00-00-00
   DHCP включен. . . . . . . . . . . : Да
   Автонастройка включена. . . . . . : Да
   Локальный IPv6-адрес канала . . . : fe80::6001:bdee:223c:fb48%11(Основной) 
   IPv4-адрес. . . . . . . . . . . . : 192.168.0.100(Основной) 
   Маска подсети . . . . . . . . . . : 255.255.255.0
   Аренда получена. . . . . . . . . . : 28 августа 2017 г. 6:33:52
   Срок аренды истекает. . . . . . . . . . : 5 октября 2153 г. 0:54:35
   Основной шлюз. . . . . . . . . : 192.168.0.1
   DHCP-сервер. . . . . . . . . . . : 192.168.0.1
   IAID DHCPv6 . . . . . . . . . . . : 242540075
   DUID клиента DHCPv6 . . . . . . . : 00-00-00-00-00-00-00-00-00-00-00-00-11
   DNS-серверы. . . . . . . . . . . : 192.168.0.1
   NetBios через TCP/IP. . . . . . . . : Включен

Ethernet adapter VirtualBox Host-Only Network:

   DNS-суффикс подключения . . . . . : 
   Описание. . . . . . . . . . . . . : VirtualBox Host-Only Ethernet Adapter
   Физический адрес. . . . . . . . . : 0A-00-27-00-00-00
   DHCP включен. . . . . . . . . . . : Нет
   Автонастройка включена. . . . . . : Да
   Локальный IPv6-адрес канала . . . : fe80::57c:f8fd:d4dd:e6c2%15(Основной) 
   IPv4-адрес. . . . . . . . . . . . : 192.168.56.1(Основной) 
   Маска подсети . . . . . . . . . . : 255.255.255.0
   Основной шлюз. . . . . . . . . : 
   IAID DHCPv6 . . . . . . . . . . . : 503971879
   DUID клиента DHCPv6 . . . . . . . : 00-01-00-01-21-03-D3-EC-74-DE-2B-CC-F3-DE
   DNS-серверы. . . . . . . . . . . : fec0:0:0:ffff::1%1
                                       fec0:0:0:ffff::2%1
                                       fec0:0:0:ffff::3%1
   NetBios через TCP/IP. . . . . . . . : Включен
</code></pre></div></div></div>]]></description>
			<author><![CDATA[null@example.com (MandarinKa02)]]></author>
			<pubDate>Mon, 28 Aug 2017 15:29:58 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=118863#p118863</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: получение MAC-адреса не используя командной строки]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=118862#p118862</link>
			<description><![CDATA[<p>Точно не знаю, у меня везде по одному. Если никто не подскажет, пришлите скриншот, что выдаёт команда ipconfig /all по этим адаптерам, и какой из них в данный момент используется. Предполагаю, что у неиспользуемого нет ip-адреса.</p>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Mon, 28 Aug 2017 15:24:43 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=118862#p118862</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: получение MAC-адреса не используя командной строки]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=118861#p118861</link>
			<description><![CDATA[<p><strong>teadrinker</strong>, спасибо, работает. А как получить MAC текущего адаптера? Например у меня ноутбук и есть Ethernet и Wi-Fi. Используется сейчас Wi-Fi(текущий адаптер).</p>]]></description>
			<author><![CDATA[null@example.com (MandarinKa02)]]></author>
			<pubDate>Mon, 28 Aug 2017 15:04:25 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=118861#p118861</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: получение MAC-адреса не используя командной строки]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=118860#p118860</link>
			<description><![CDATA[<p><strong>Malcev</strong>, в шапочке написал <strong><span class="bbu">без командной строки</span></strong>. Спасибо за ответ, но это не то.</p>]]></description>
			<author><![CDATA[null@example.com (MandarinKa02)]]></author>
			<pubDate>Mon, 28 Aug 2017 14:28:49 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=118860#p118860</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: получение MAC-адреса не используя командной строки]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=118835#p118835</link>
			<description><![CDATA[<p>Через winapi так:<br /></p><div class="codebox"><pre><code>adapters := GetMacAddresses()
for k, v in adapters
   MsgBox, % v.description . &quot;`n&quot; . v.macAddress

GetMacAddresses()  {
   static ERROR_BUFFER_OVERFLOW := 111, ERROR_SUCCESS := 0
        , MAX_ADAPTER_NAME_LENGTH := 256, MAX_ADAPTER_DESCRIPTION_LENGTH := 128
        , errors := { 13: &quot;ERROR_INVALID_DATA&quot;, 50: &quot;ERROR_NOT_SUPPORTED&quot;
                    , 87: &quot;ERROR_INVALID_PARAMETER&quot;, 232: &quot;ERROR_NO_DATA&quot; }
   size := 2
   Loop
      VarSetCapacity(PIP_ADAPTER_INFO, size, 0)
   until ( res := DllCall(&quot;Iphlpapi\GetAdaptersInfo&quot;, Ptr, &amp;PIP_ADAPTER_INFO, UIntP, size) ) != ERROR_BUFFER_OVERFLOW
   if (res != ERROR_SUCCESS)  {
      MsgBox, % &quot;Ошибка &quot; . errors[res]
      Return
   }
   adapters := []
   pNext := &amp;PIP_ADAPTER_INFO
   Loop  {
      description := StrGet(offset := pNext + A_PtrSize + 4 + MAX_ADAPTER_NAME_LENGTH + 4, &quot;CP0&quot;)
   
      Loop % AddressLength := NumGet( (offset += MAX_ADAPTER_DESCRIPTION_LENGTH + 4) + 0, &quot;UInt&quot;)
         macAddress .= (A_Index = 1 ? &quot;&quot; : &quot;:&quot;) . Format( &quot;{:02X}&quot;, *(offset + 4 + A_Index - 1) )
      
      adapters.Push({ description: description, macAddress: macAddress })
   } until !pNext := NumGet(pNext + 0)
   Return adapters
}</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Mon, 28 Aug 2017 10:05:57 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=118835#p118835</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: получение MAC-адреса не используя командной строки]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=118833#p118833</link>
			<description><![CDATA[<p>ipconfig /all</p>]]></description>
			<author><![CDATA[null@example.com (Malcev)]]></author>
			<pubDate>Mon, 28 Aug 2017 09:55:18 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=118833#p118833</guid>
		</item>
		<item>
			<title><![CDATA[AHK: получение MAC-адреса не используя командной строки]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=118831#p118831</link>
			<description><![CDATA[<p>В общем задался не так давно вопросом как заполучить MAC-адрес компьютера?<br />Сначала использовал командую строку, но оказалось не эффективным, т.к. командная строка &quot;гребет&quot; физический адрес не того адаптера.<br />Потом на англоязычном форуме нашел такую функцию:<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>
IPAddress()
{
	for objItem in ComObjGet(&quot;winmgmts:\\.\root\CIMV2&quot;).ExecQuery(&quot;SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled = True&quot;)
	{
		if (objItem.IPAddress[0] = A_IPAddress1)
		{
			return, % objItem.MACAddress
		}
	}
}
</code></pre></div></div></div><p>Тоже немного проработала. Пишет что <a href="http://imgur.com/a/TIksv">отказано в доступе</a> (AVAST стоит на компьютере).<br />Кто-то знает ещё способы как достать MAC-адрес?<br /><span class="postimg"><img src="http://i.imgur.com/Oj7oHzh.jpg" alt="http://i.imgur.com/Oj7oHzh.jpg" /></span></p>]]></description>
			<author><![CDATA[null@example.com (MandarinKa02)]]></author>
			<pubDate>Sun, 27 Aug 2017 19:14:47 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=118831#p118831</guid>
		</item>
	</channel>
</rss>
