Добрый день уважаемое сообщество.
1с8.2 самописная.
Как узнать MAC адрес компьютера, с которого заходил пользователь? А также записать этот МАК в справочник.
l2d808 @ Сегодня, 15:27
,
http://pro1c.org.ua/redirect.php?https://www.forum.mista.ru/topic.php?id=327244
|C:\Program Files\PostgreSQL\9.4.2-1.1C\bin>getmac
|
|Физический адрес Имя транспорта
|================= ==========================================================
|10-7B-44-16-C7-79 \Device\Tcpip_{4B9F7E56-610E-460F-90A7-AE2D91F2A575}
|00-FF-16-0D-B3-13 \Device\Tcpip_{160DB313-5615-466C-8497-D972C58FA97B}
|00-FF-32-A9-18-E2 \Device\Tcpip_{32A918E2-ECF9-4C8C-8DD8-417D7B1794B9}
|00-FF-86-45-FA-82 \Device\Tcpip_{8645FA82-14B3-412B-ACD9-60885857F52A}
|
|C:\Program Files\PostgreSQL\9.4.2-1.1C\bin>
Процедура ОпределитьMAC_адресНажатие(Элемент)
ServicesSet = ПолучитьCOMОбъект("winmgmts:{impersonationLevel=impersonate}!\\" + ИмяКомпьютера() + "\root\cimv2");
Items = ServicesSet.ExecQuery("Select * From Win32_NetworkAdapter");
Для каждого Item Из Items Цикл
MACAddress = Item.MACAddress;
Если Не ЗначениеЗаполнено(MACAddress) Тогда // -- если убрать это условие, можно получить еще больше интересной информации
Продолжить;
КонецЕсли;
AdapterType = Item.AdapterType;
Caption = Item.Caption; //-- переименуйте эту переменную, потому как она меняет заголовок окна обработки, это английский синоним свойства Форма.Заголовок
Manufacturer = Item.Manufacturer;
Status = Item.Status;
Name = Item.Name;
PermanentAddress = Item.PermanentAddress;
Line = "AdapterType: " + AdapterType
+ символы.ПС + "Caption: " + Caption
+ символы.ПС + "Manufacturer: " + Manufacturer
+ символы.ПС + "MACAddress: " + MACAddress
+ символы.ПС + "Name: " + Name
+ символы.ПС + "Status: " + Status;
Сообщить(Line);
КонецЦикла;
КонецПроцедуры
Процедура ОпределитьIPНажатие(Элемент)
// Определение MAC и IP адресов
MACAddress = "";
ServicesSet = ПолучитьCOMОбъект("winmgmts:{impersonationLevel=impersonate}!\\" + ИмяКомпьютера() + "\root\cimv2");
Items = ServicesSet.ExecQuery("Select * From Win32_NetworkAdapter");
Для каждого Item Из Items Цикл
MACAddress = Item.MACAddress;
Если MACAddress <> Null Тогда
Сообщить("MAC адрес: " + MACAddress);
Items = ServicesSet.ExecQuery("Select * From Win32_NetworkAdapterConfiguration");
Для каждого Item Из Items Цикл
Если Item.MACAddress = MACAddress Тогда
Если Item.MACAddress <> Null Тогда
Для каждого IPAddress Из Item.IPAddress Цикл
Сообщить(".IP адрес: " + IPAddress);
КонецЦикла;
КонецЕсли;
КонецЕсли;
КонецЦикла;
КонецЕсли;
КонецЦикла;
КонецПроцедуры
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua