gifts2017

Системный Администратор (WSH&WMI) + Скрипт: Серийный номер Windows

Опубликовал Андрей М. (StepByStep) в раздел Обработки - Универсальные обработки

1С и Windows Script Host (WSH) и Windows Management Instrumentation (WMI). + Скрипт: Серийный номер Windows. Файл и Клиент-Сервер. Обычная и Управляемая формы.

СИСТЕМНЫЙ АДМИНИСТРАТОР 8.4


СРЕДСТВА АДМИНИСТРИРОВАНИЯ:

- Универсальный редактор. Мультиобработчик. http://infostart.ru/public/100967/
- Системный Администратор (WSH & WMI).
- Настройка прав пользователей. БСП. http://infostart.ru/public/174375/
- LiteManager (удалённое управление компьютерами). http://infostart.ru/public/169176/

В основе обработки материалы статей:

1С и WSH и WMI. ОТ ТЕОРИИ К ПРАКТИКЕ.

Часть I: http://infostart.ru/public/165702/

Часть II: http://infostart.ru/public/166391/

Часть III: http://infostart.ru/public/166440/


ИСТОРИЯ ИЗМЕНЕНИЙ:

ВЕРСИЯ 8.4  (07.2016)
- Добавлены "Загрузка пользователей" из Windows, Active Directory.

ВЕРСИЯ 8.3.2  (08.2014).
- Добавлена поддержка "Режим использования модальности = НеИспользовать" (платформа 8.3.Х).
- Дополнена таблица логичских дисков информацией о сетевых дисках.


Microsoft Windows Script Host (WSH) - сервер сценариев Windows.

WSH-СХЕМА

(упрощенная схема)

Используется в качестве инструмента разработки и выполнения специальных сценариев для операционной системы Windows. Сценарии WSH пишутся на специализированных языках:
Microsoft Visual Basic Script Edition (VBScript) или Microsoft JScript. Свойства и методы объектов Microsoft WSH доступны также в приложениях, способных выступить в роли OLE-клиента.

WSH позволяет работать с:

 - Файловой системой;
 - Ресурсами локальной сети;
 - Реестром;
 - Специальными папками и ярлыками Windows;
 - Процессами. Запускать и контролировать их выполнение.

WSH позволяет взаимодействовать с Microsoft ActiveX:

 - ActiveX Data Object (ADO) — Доступ к базам данных;
 - Active Directory Service Interface (ADSI) — Службы каталогов;
 - Windows Management Instrumentation (WMI) — Инструментарий управления Windows.


Windows Management Instrumentation (WMI) - инструментарий управления Windows.

WMI-СХЕМА


(упрощенная схема)

WMI - это одна из базовых технологий для централизованного наблюдения и управления компьютерной инфраструктуры под управлением платформы Windows.
WMI – это расширенная и адаптированная компанией Microsoft реализация стандарта WBEM (WebBased Enterprise Management) компании DMTF Inc.
Основа WBEM - Common Information Model (CIM), реализующая объектно-ориентированный подход к представлению компонентов системы.

WMI позволяет работать с:

 - Системой;
 - Приложениями;
 - Оборудованием;
 - Сетями;
 - др. управляемыми компонентами.


Обработка "1С:СИСТЕМНЫЙ АДМИНИСТРАТОР (WSH&WMI)":

  

1С:Системный администратор

Возможности:

Получение основных характеристик компьютера:
 - Операционная система;
 - Материнская плата;
 - BIOS:
 - Процессор(ы);
 - Память;
 - Видео;
 - Мониторы;
 - Физические диски;
 - Логические диски;
 - Сетевые карты;
 - Принтеры;
 - Службы;
 - Процессы;
 - Журналы событий;
 - Сетевое окружение;
 - Открытые на сервере сессии;
 - Подключения к ресурсам сервера;
 - Терминальные сессии сервера;
 - Учетные записи пользователей;
 - Некоторые (в т.ч. переназначаемые) переменные окружения;
 - Установленные программы.
Подключиться к удаленному компьютеру и получить системную информацию (WMI).
Подлючиться к удаленному компьютеру, используя программу LiteManager, установленную в каталог по-умолчанию.
Запустить на выполнение оснастку и произвести изменения в настройке локального компьютера:
 - Панель управления.
Сформировать отчет: "Системная информация о компьютере".
С помощью отдельного скрипта (get_windows_key_via_reg_wmi.vbs), не входящего в обработку, возможно получение серийного номера Windows локального/удаленного компьютера.

Назначение скрипта:
1. Получение серийного номера Windows, локального/удаленного компьютера.
2. Проверка состояния службы удаленного реестра (запущена/не запущена).
3. Проверка возможности доступа по WMI к удаленным компьютерам.
Скрипт позволяет осуществить проверку без использования 1С:Предприятия и данной обработки.
Поддержка операционных систем Windows, вплоть до Windows 8.

Реализовано 2 метода чтения серийного номера Windows из реестра:
1. С помощью утилиты командной строки REG.EXE (Редактирование системного реестра Windows из командной строки).
   На целевом (удаленном) компьютере должна быть запущена служба "Удаленный реестр".
2. C помощью WMI (Windows Management Instrumentation - Инструментарий управления Windows).
   Необходимые настройки описаны в разделе "Настройки WMI".

Результатом выполнения скрипта является файл, имя которого содержит имя компьютера.
При успешном чтении серийного номера будет создан файл, содержащий примерно следующее:
PC: IS-PC
OS: Windows 8 Single Language
REG: T4XTK-NCGZ2-RYKYD-C65MD-7T87Q
WMI: T4XTK-NCGZ2-RYKYD-C65MD-7T87Q

При неуспешном чтении серийного номера будет создан файл, содержащий примерно следующее:
PC: IS-PC
OS: Windows 8 Single Language
REG: Error= 1: Error read \\IS-PC\hklm\software\microsoft\windows nt\currentversion\DigitalProductId.
WMI: Error= 462: Error create WinMGMT. Компьютер удаленного сервера не существует или недоступен.

Примеры запуска скрипта:
1. get_windows_key_via_reg_wmi.vbs
2. get_windows_key_via_reg_wmi.vbs ИмяПК
По-умолчанию (без параметра) скрипт выполняется относительно локального компьютера.


Настройка WMI:

  

WMI

Перед применением Обработки на локальном/удаленном компьютере необходимо проверить и, при необходимости, изменить настройки Windows:
(выполняется локально на каждом компьютере. Необходимы права Администратора Windows)

1. Состояние службы Windows Management Instrumentation (WMI):
   
   Имя Службы: "Инструментарий управления Windows"
   Запуск: "Автоматически".

2. UAC (User Account Control) - Контроль учетных записей пользователей:

   Активный UAC на целевом (удаленном) компьютере блокирует удаленный доступ по WMI.
   "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\EnableLUA" = 1-Активен, 0-Неактивен.

3. Разрешение в брандмауэре Windows:

   ОБЯЗАТЕЛЬНО:

   Общий доступ к файлам и принтерам.
   Если используется брандмауэр Windows,то он автоматически открывает порты, необходимые для предоставления общего доступа к файлам и принтерам, после включения обнаружения сети.

   Для Функционирования функциия Computer_Programs_Product() на Windows 2003 (см. Часть III):
   Функция, позволяющая получить информацию об установленных программах локальном/удаленном компьютере.

   При запуске на  на компьютере под управлением Windows Server 2003 возможна ошибка чтения данных,
   т.к. поставщик объекта Win32_Product по умолчанию в Windows Server 2003 не устаналивается.
   Установка:
   Панель управления - Установка и уделение программ - Установка компонентов Windows - Средства наблюдения и управления:
   Компонента: "Поставщик установщика Windows через WMI".

   Разрешение для PING:

   Вкладка "Дополнительные параметры - ICMP":
   Разрешить запрос входящего эха.

   Разрешить "Удаленное управление Windows":
   (Становится доступным "Сервер RPC").

   Windows XP:
   Из комендной строки:
   netsh firewall set service type = REMOTEADMIN mode = ENABLE scope = SUBNET

   Windows 7:
   Предпочтительный способ:
   Включить в оснастке брандмауэра исключения для "Удаленное управление Windows".
   ИЛИ
   Из комендной строки:
   netsh advfirewall firewall set rule group="Удаленное управление Windows" new enable=Yes

   Разрешить "Инструментарий управления Windows (WMI)":
   (Становится доступным "Сервер RPC").

   Windows 7:
   Предпочтительный способ:
   Включить в оснастке брандмауэра исключения для "Инструментарий управления Windows (WMI)".
   ИЛИ
   Из комендной строки:
   netsh advfirewall firewall set rule group="Инструментарий управления Windows (WMI)" new enable=Yes

   Разрешить удаленное управление (TCP 135, 445):

   Открыть порт TCP 135 для локальной подсети.
   
   Открытие порта TCP 445:
   Если разрешено "Совместное использование файлов и принтеров", то
   Открывать порт 445 не нужно, иначе - открыть.

   Windows Vista и выше:
   UAC:
   Активированный UAC на целевом (не локальный) компьютере блокирует удаленный доступ по WMI.

   Локальная политика безопасности:
   Параметры безопасности:
   - Контроль учетных записей: Режим одобрения администратором для встроенной учетной записи администратора
     Значение по-умолчанию: Отключено. Оставить таким.
   - Контроль учетных записей: Все администраторы работают в режиме одобрения администратором
     Значение по-умолчанию: Включено.
     При установке: Отключено становятся доступными администратору,
     не являющемуся встроенным администратором диски C$ по UNC, а также WMI при включенном UAC.

4. Синхронизировать время на компьютерах.

5. Проверка функционирования доступа к WMI на локальном/удаленном компьютере:

WMIC = WMI командной строки (WMIC, WMI command-line).
Упрощенный интерфейс командной строки для работы с WMI.

Командный файл, следующего содержания:

rem Запрос: имя ОС сервера c помощью команды wmic:
wmic /node:"%1" os get name

Где:
%1 - Имя локального/удаленного компьютера.

Тестовая среда:
Операционная система (x32/x64): Windows XP x32 SP3, Windows 7 x64 SP1, Windows Server 2003 R2 x32 SP2, Windows 8.0 x64.
1С:Предприятие:
   Платформа: 8.2.19/8.3.X
   Архитектура: Файл и Клиент-Сервер.
   Режим совместимости: НеИспользовать.
   Режим использования модальности = Использовать/НеИспользовать.
   Режим запуска: Обычное и Управляемое приложение.

P.S.:
Некоторая документация, описывающая WMI и WSH, доступна в ссылках для скачивания:
WMI (Автор: Бегер Юрий ака Uriu)
WSH (Автор: script-coding.com)

МА! С уважением к сообществу МА!


Скачать файлы

Наименование Файл Версия Размер
Системный Администратор 8.4 12
.epf 231,48Kb
10.07.16
12
.epf 8.4 231,48Kb Скачать
Системный Администратор 8.3 110
.epf 215,84Kb
10.07.16
110
.epf 8.3 215,84Kb Скачать
get_windows_key_via_reg_wmi.vbs. Получение серийного номера Windows локального/удаленного компьютера REG&WMI. 49
.vbs 9,30Kb
07.08.14
49
.vbs 9,30Kb Скачать
WMI-документация (Автор: Бегер Юрий ака Uriu) 73
.chm 1,57Mb
07.08.14
73
.chm 1,57Mb Скачать
WSH-документация (Автор: script-coding.com) 58
.chm 151,42Kb
07.08.14
58
.chm 151,42Kb Скачать
Системный Администратор 3.1 124
.epf 195,54Kb
10.07.16
124
.epf 3.1 195,54Kb Скачать
Системный Администратор 3.0 31
.epf 180,55Kb
10.07.16
31
.epf 3.0 180,55Kb Скачать
Системный Администратор 2.7 21
.epf 175,91Kb
10.07.16
21
.epf 2.7 175,91Kb Скачать
Системный Администратор 2.6 157
.epf 141,97Kb
10.07.16
157
.epf 2.6 141,97Kb Скачать
Системный Администратор 2.5 20
.epf 140,63Kb
10.07.16
20
.epf 2.5 140,63Kb Скачать
Системный Администратор 2.2 35
.epf 124,06Kb
10.07.16
35
.epf 2.2 124,06Kb Скачать
Системный Администратор 2.1 56
.epf 123,02Kb
10.07.16
56
.epf 2.1 123,02Kb Скачать
Системный Администратор 2.0 88
.epf 112,91Kb
10.07.16
88
.epf 2.0 112,91Kb Скачать
Системный Администратор 1.0 97
.epf 85,06Kb
10.07.16
97
.epf 1.0 85,06Kb Скачать

См. также

PowerTools от 1 000
Подписаться Добавить вознаграждение
Комментарии
1. andrey dyak (dyak84) 06.02.13 14:57
Судя по описаниям и возможностям был приятно удивлен и столько работы проделано и такие возможности. Автор так держать!!!!!!!
StepByStep; +1 Ответить 1
2. andrey dyak (dyak84) 06.02.13 14:59
А в обичной форме обработка есть, или только в управляемой форме??????
3. Дмитрий Бухалов (Re:аниматор) 06.02.13 15:20
При попытке открыть обработку

{Форма.Управляемая.Форма(209,12)}: Процедура или функция с указанным именем не определена (ТекущаяУниверсальнаяДатаВМиллисекундах)
Время = <<?>>ТекущаяУниверсальнаяДатаВМиллисекундах();

перед тем как выкладывать нужно делать проверку на ошибки!
StepByStep; +1 Ответить 3
4. Андрей М. (StepByStep) 06.02.13 15:24
5. Андрей М. (StepByStep) 06.02.13 15:25
(2) dyak84,
Пока только управляемая.
6. Андрей М. (StepByStep) 06.02.13 15:26
(3) Re:аниматор,
Версия платформы ?!
Платформа 8.2.17.153 - такая функция есть.
7. Андрей М. (StepByStep) 06.02.13 15:27
(3) Re:аниматор,
Тестирование производилось на Windows XP/7/2003.
8. Андрей М. (StepByStep) 06.02.13 16:32
(3) Re:аниматор,
Подправил, перезалил.
Извините за доставленные неудобства.
9. Дмитрий Бухалов (Re:аниматор) 06.02.13 17:06
(6) 16 была, обновил до 17, заработало
10. Олег Шалимов (CaSH_2004) 07.02.13 02:00
ОТЛИЧНАЯ описаловка! Редко когда увидеш такое. И функционал вроде весь реализован какой только можно.
Кстати (0) ты в курсе про аналог на обычных формах WindowsПроводник 1.3? Он тут уже с начала 2010-го лежит. Очень сильная вещь. Но и твой выглядит офигенно - только побольше бы картинок, по одной с закладки. Так в обычной форме ждать?
Жолтокнижниг; StepByStep; +2 Ответить 2
11. Роман Ложкин (webester) 07.02.13 02:12
Качать не стану, но плюсую, наверняка рано или поздно найдется применение :)
StepByStep; +1 Ответить
12. Андрей М. (StepByStep) 07.02.13 09:51
(10) CaSH_2004,
Спасибо.
Обработку эту не видел.
Задумки по обработке есть. Будет развиваться.
Обычная форма тоже будет.
13. Сергей Маслов (LexSeIch) 07.02.13 09:56
Мир этому дому!
Однозначно плюс. Статья хорошая. Функционал на уровне. Ждем обработку для обычной формы.
14. Алексей Опарихин (Al-X) 07.02.13 12:32
Обработка отличная !!! Единственно не все оснастки из панели управления у меня открылись.
Ставлю + !! Давно хотел научиться обращаться к WSH через 1С. Ну вот теперь будет наглядное пособие !!
15. Владимир Клименко (KliMich) 07.02.13 23:35
16. Алексей Ко (Жолтокнижниг) 09.02.13 16:57
Еще бы кнопочку, отчет - выводящую сводную информацию.
И тогда можно будет после установки прогр. лицензии сформировать, сохранить инфу и сравнить, когда отвалится лицензия, а бухи скажут, что ничего не меняли в компе.
17. Андрей М. (StepByStep) 12.02.13 00:03
(2) dyak84, (10) CaSH_2004, (13) LexSeIch,
Добавлена обычная форма.
18. Alex Steiner (OrsoBear) 13.02.13 10:27
Отличная работа!!!
То, что надо, и очень подошло под нашу конфигурацию,
все программы на управляемом приложении.

Спасибо за проделанную работу, забираю.
19. Валерий Завалко (ValeryZ) 13.02.13 12:10
Плюсую.
Подозреваю, есть чему поучиться на примере этой обработки, скачаю чуть позднее.
В мемориз, однозначно.
20. Матрос (Матрос) 14.02.13 04:28
"Плюс".
Для настоящего СисАдмина.
21. Роман (Raminus) 14.02.13 13:42
Плюс однозначно за теорию и практическое применение возьмем на заметку, возможно что то пригодится.
22. Константин (maverick76) 16.02.13 01:49
23. aleksei (alekseies) 19.02.13 14:08
Пока не скачал, но плюсую, наверняка думаю рано или поздно найдем применение ............
24. mozz mozz (mozz) 19.02.13 14:18
25. Андрей М. (StepByStep) 20.02.13 09:12
(19) ValeryZ, (20) Матрос, (21) Raminus, (22) maverick76, (24) mozz,
СПАСИБО.
26. Юлия Пухова (luchyk007) 20.02.13 18:04
Здорово реализовано, спасибо, можно ли к функционалу добавить поиск установленных программ, или это трудно реализовать
27. Андрей М. (StepByStep) 21.02.13 11:00
(26) luchyk007,
На данный момент можно воспользоваться системной оснасткой "установка и удаление программ", из последней вкладки "Панель управления".
В перспективе "Установленные программы" - будет добавлено.
28. roman melnikov (Mell) 21.02.13 11:58
Отличная идея, хорошая реализация, подробное описание, удобный интефейс. Вобщем ПЛЮС!
StepByStep; +1 Ответить 1
29. Андрей М. (StepByStep) 21.02.13 13:43
30. Андрей М. (StepByStep) 21.02.13 13:46
(26) luchyk007,
В 1С и Windows Script Host (WSH) и Windows Management Instrumentation (WMI). ОТ ТЕОРИИ К ПРАКТИКЕ. Часть III:
http://infostart.ru/public/166440/
Опубликована интересующая Вас функция: Computer_Programs().
31. KV1s (KroVladS) 22.02.13 12:11
(0) плюс за проделанную работу и качественное описание.
StepByStep; +1 Ответить
32. Андрей М. (StepByStep) 26.02.13 11:44
(26) luchyk007,
Добавлена возможность получения списка установленных программ как в обычную, так и в управляемую формы:
Две функции:

1. Computer_Programs_Product() - WMI, используя запрос "SELECT * FROM Win32_Product"

// Примечания:
// 1. Только программы, установленные с помощью Windows Installer.
// 2. Полнота информации в Windows 2000/XP/2003 ограничена.
// 3. Может не работать на 64-битных ОС.
// 4. Медленнее чтения из регистра.
//
// При запуске на на компьютере под управлением Windows Server 2003 возможна ошибка чтения данных,
// т.к. поставщик объекта Win32_Product по умолчанию в Windows Server 2003 не устаналивается.
// Установка:
// Панель управления - Установка и уделение программ - Установка компонентов Windows - Средства наблюдения и управления:
// Компонента: "Поставщик установщика Windows через WMI".

2. Computer_Programs_Registry() - Чтение реестра Windows.
// Примечания:
// 1. Полнота информации [в сравнении с функцией Computer_Programs_Product()]:
// - Количество программ больше, т.к. нет ограничения на "Только программы, установленные с помощью Windows Installer".
// - Количество данных о конкретной программе меньше, но основная информация доступна.
// 2. Поддержка 64-битных ОС (из-за отсутствия 64-битной Windows - не проверялось).
// 3. Быстрее, чем при использовании WMI: ("SELECT * FROM Win32_Product").
33. ta44ik (ta44ik) 27.02.13 06:55
Работа огромна, сделано на ура) Так держать)
StepByStep; +1 Ответить 1
34. Андрей М. (StepByStep) 02.03.13 08:37
35. Maximilian Alekseevich (1cmax) 03.03.13 20:42
Интересная работа, надо будет потестить
36. aleksei (alekseies) 07.03.13 13:36
на Windows 7 x64
{Форма.Обычная.Форма(35,27)}: Процедура или функция с указанным именем не определена (LOCAL_WindowsInfo)
ЭтотОбъект.ВиндовсИНФО = <<?>>LOCAL_WindowsInfo();
{Форма.Обычная.Форма(39,22)}: Процедура или функция с указанным именем не определена (Computer_RegistryInformation)
ЭтотОбъект.Реестр = <<?>>Computer_RegistryInformation();
{Форма.Обычная.Форма(42,42)}: Процедура или функция с указанным именем не определена (LOCAL_ComputerName_UserName_UserDomain)
ЭтотОбъект.ДоменКомпьютерПользователь = <<?>>LOCAL_ComputerName_UserName_UserDomain();
{Форма.Обычная.Форма(49,40)}: Процедура или функция с указанным именем не определена (Computer_BuildINAdministrator)
ЭтотОбъект.АдминистраторПоУмолчанию = <<?>>Computer_BuildINAdministrator();
{Форма.Обычная.Форма(52,32)}: Процедура или функция с указанным именем не определена (Computer_Motherboard)
ЭтотОбъект.МатеринскаяПлата = <<?>>Computer_Motherboard();
{Форма.Обычная.Форма(56,20)}: Процедура или функция с указанным именем не определена (Computer_BIOS)
ЭтотОбъект.БИОС = <<?>>Computer_BIOS();
StepByStep; +1 Ответить 4
37. Андрей М. (StepByStep) 07.03.13 14:25
(36) alekseies,
Скажите, пожалуйста, у Вас случайно не клиент-сервер ?
38. Андрей М. (StepByStep) 07.03.13 14:31
(36) alekseies,
Спасибо.
В ближайшее время будет исправлено.
39. Андрей М. (StepByStep) 07.03.13 14:47
(36) alekseies,
Возможен вопрос по 64-бит.
40. Андрей М. (StepByStep) 07.03.13 16:22
(36) alekseies,
Добавлена поддержка Клиент-Серверной архитектуры.
41. Андрей М. (StepByStep) 26.03.13 14:47
Версия 2.5 (26.03.2013).

Новое:
- Открытые на сервере сессии;
- Подключения к ресурсам сервера;
- Терминальные сессии сервера.
Изменено:
- Установленные программы.
При чтении из реестра добавлена в обработку функция: ИсключитьНеЧитаемыеСимволыИзСтроки().
- Прочие изменения.
42. Александр Хоменко (scape) 10.04.13 01:57
43. Александр Крынецкий (echo77) 25.05.13 22:11
Добавьте, пожалуйста, описание к публикации(что эта штука может делать) и скриншоты.
Эта штука по сети может всю информацию собрать?
44. Эльчин Гасанов (Flok) 16.08.13 13:44
Добрый день , автору большое спасибо обработка полезная , удобно что вся необходимая информация в одном месте и из 1С.

У меня есть 2 вопроса :
1) Возможно ли средствами wmi узнать сколько осталось до окончания срока действия лицензии Антивируса Касперского (очень удобно ведь можно прикрутить функцию оповещения по почте о близком сроке окончания )
2) Есть ли возможно выгрузки данных о конфигурации пк в файл отчета ?
45. Дмитрий Шерстобитов (DitriX) 19.08.13 15:06
Вопрос - сейчас все функции выполняюся на сервере.
Соответственно - если я по тонкому подключился - я вижу данные сервера, а мне нужно видеть данные клиентской машины.
Вопрос - можно ли как то переделать?
46. Олег Шалимов (CaSH_2004) 06.09.13 19:53
Красивое решение. Автор молодец! А про "WindowsПроводник" вкурсе? (ссылку вставить что-то не получается http://infostart.ru/public/172189/) Очень похожее решение
47. Андрей М. (StepByStep) 19.09.13 10:17
(43) echo77,
Скриншоты - на странице публикации.
Подключение к другим компьютерам - в одной из будущих версий.
48. Андрей М. (StepByStep) 19.09.13 10:26
(44) Flok,
1. Антивирусом Касперского не пользуюсь. Что и где он хранит - не знаю.
WMI имеет широкие возможности, но они, все же, ограничены определенным набором параметров.
И параметр типа "ДатаОкончанияСрокаДействияЛицензии" мне не встречался.
Если Касперский хранит этот параметр в реестре, то можно прочитать из него.
В статье "1С и Windows Script Host (WSH) и Windows Management Instrumentation (WMI). ОТ ТЕОРИИ К ПРАКТИКЕ. Часть III" http://infostart.ru/public/166440/
есть функция RegRead().
2. Отчет о конфигурации ПК - в ближайшей версии.
49. Андрей М. (StepByStep) 19.09.13 10:28
(45) DitriX,
Подключение к другим компьютерам - в одной из будущих версий (через одну).
50. Андрей М. (StepByStep) 19.09.13 10:32
(46) CaSH_2004,
СПАСИБО.
Не видел этой обработки.
51. Андрей М. (StepByStep) 23.09.13 13:39
(44) Flok,

Версия 2.7 (23.09.2013).

Добавлено:
- Операционная Система (Таблица).
- Физическая память (Таблица).
- Монитор (Таблица).
- Отчет "Системная информация о компьютере".
- Прочие изменения.
52. Александр Крынецкий (echo77) 27.09.13 10:11
Информация о серийном номере ОС присутствует?
Не увидел на скриншотах
53. Андрей М. (StepByStep) 27.09.13 13:34
(52) echo77,
Да. Серийный номер определяется.
Присутствует в таблице "Операционная система" и по нажатию гиперссылки в правом нижнем углу (например, Windows XP).
Скриншоты одной из предыдущей версии.
54. Александр Крынецкий (echo77) 30.09.13 06:56
Каким образом получаешь серийный номер?
55. Алекс Одинэсник (Alex1Cnic) 30.09.13 09:51
Вот это действительно полезные инструменты!
56. Алекс Одинэсник (Alex1Cnic) 30.09.13 09:58
Буду с нетерпением ждать новой функции "подключение к удаленному компьютеру"
57. Андрей М. (StepByStep) 30.09.13 10:33
(54) echo77,
Смотрите: Функция Computer_WindowsInfo() в статье:
1С и Windows Script Host (WSH) и Windows Management Instrumentation (WMI). ОТ ТЕОРИИ К ПРАКТИКЕ. Часть I
http://infostart.ru/public/165702/
58. Андрей М. (StepByStep) 30.09.13 10:34
(56) Alex1Cnic,
Подключение и получение информации будет возможно, если WMI будет настроен и доступен.
59. Александр Крынецкий (echo77) 30.09.13 14:21
(57) Эта штука позволяет получить ProductID, а не серийный номер Windows.
Сами посмотрите что она возвращает и сравните с тем что на наклейке
60. Андрей М. (StepByStep) 30.09.13 21:23
(59) echo77,
Да - это Product ID, а не Product Key.
61. Александр Крынецкий (echo77) 30.09.13 21:55
(60) и собственно вопрос: как корректно получить серийный номер удаленно у машины с Win7 x64? У меня WMI цепляется к ветке WOW64node32, а там его нет
62. Андрей М. (StepByStep) 30.09.13 22:59
(61) echo77,
Информация о ключе хранится в ключе реестра HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\DigitalProductId, но он там зашифрованный.
63. Александр Крынецкий (echo77) 01.10.13 09:02
(62) Я знаю, и есть скрипты которые расшифровывают DigitalProductID, но ничего в интернете я не видел про то как получить DigitalProductID у Win7 x64.

Если надо, выложу как публикацию рабочий скрипт получения серийного номера windows
64. Андрей М. (StepByStep) 01.10.13 09:55
(63) echo77,
Нашел скрипт.
Работает и на Windows 7 x64 и на Windows 8 x64.
Прикрепленные файлы:
get_windows_8_key_vbs.zip
65. Александр Крынецкий (echo77) 01.10.13 09:59
(64) Как это сделать удаленно?
66. Андрей М. (StepByStep) 01.10.13 10:17
(65) echo77,
Через некоторое время выпущу новую версию обработки.
Буду осуществлять подключение к удаленному компьютеру и получение информации с него.
Этот вопрос также посмотрю.
67. Андрей М. (StepByStep) 08.10.13 22:14
(56)Alex1Cnic,

Версия 3.0 (08.10.2013).

Добавлено:
- Подключение к удаленному компьютеру:
- Посредством WMI и сбор сиситемной информации о компьютере.
- Используя программу LiteManager, установленную в каталог по-умолчанию.
68. Алекс Одинэсник (Alex1Cnic) 09.10.13 08:16
Ух-ты попробуем подключение к удаленному компьютеру....
69. Александр Крынецкий (echo77) 11.10.13 21:23
Серийный номер Windows эта штука получает или все еще нет?
70. Андрей М. (StepByStep) 15.10.13 02:34
Версия 3.1 (15.10.2013).

- Функция Computer_MAC_IP() заменена на Computer_NetworkAdapter(), дополнена таблица "Сетевые карты".
- Изменено получение "Сетевого окружения".
- Добавлена возможность проверки доступности WMI отдельного компьютера.
- get_windows_key_via_wmi.vbs - Доработанный скрипт получения серийного номера Windows локального/удаленного компьютера через WMI. Отдельный скрипт, не входящий в обработку.
- Прочие изменения.
71. Андрей М. (StepByStep) 15.10.13 02:41
(69) echo77,
Выложил отдельный скрипт get_windows_key_via_wmi.vbs, не входящий в обработку.
Доработанный скрипт для получения серийного номера Windows локального/удаленного компьютера через WMI (в качестве параметра принимает имя компьютера, по-умолчанию, локальный компьютер).
Не включил в обработку по той причине, что из 1С:Предприятие не читается бинарный параметр реестра.
Кроме того, даже если, из 1С:Предприятие запускать этот скрипт, то бинарный параметр реестра также не читается, хотя разрешение на чтение раздела реестра имеется.
72. Александр Крынецкий (echo77) 15.10.13 06:34
(71) Этот скрипт позволяет получить s/n Windows7 x64? Судя по коду все еще нет

Не работает при получении s/n Windows7 x64. В файл пишет вот это:
Error=1: Error read HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\DigitalProductId.
XXXXX-XXXXX-XXXXX-XXXXX-XXXXX


что вполне логично
73. Андрей М. (StepByStep) 15.10.13 09:16
(72) echo77,
Позволяет и на Windows 7 x64 и на Windows 8 x64.
Проверено.
Читайте раздел "Настройка WMI" публикации.
74. Александр Крынецкий (echo77) 15.10.13 13:28
Выкладываю свою версию скрипта:
http://infostart.ru/public/203858/

И свою реализацию получения S/n из 1С
75. Андрей М. (StepByStep) 15.10.13 19:53
(74) echo77,
Получилось ?! - Мои Вам поздравления.
Значит - не все так плохо.
76. Александр Крынецкий (echo77) 16.10.13 07:25
(75) Получиться то получилось, только я не понимаю, почему ваш скрипт работает у вас и не работает у меня :-/
77. Вадим Аганин (Amicus_2010) 18.10.13 10:49
Хорошая работа, отличная обработка!
78. Андрей М. (StepByStep) 20.10.13 15:24
Версия 3.1 (20.10.2013).

Обновлен скрипт get_windows_key_via_reg_wmi.vbs.

Назначение скрипта:
1. Получение серийного номера Windows, локального/удаленного компьютера.
2. Проверка состояния службы удаленного реестра (запущена/не запущена).
3. Проверка возможности доступа по WMI к удаленным компьютерам.
Скрипт позволяет осуществить проверку без использования 1С:Предприятия и данной обработки.
Поддержка операционных систем Windows, вплоть до Windows 8.

Реализовано 2 метода чтения серийного номера Windows из реестра:
1. С помощью утилиты командной строки REG.EXE (Редактирование системного реестра Windows из командной строки).
На целевом (удаленном) компьютере должна быть запущена служба "Удаленный реестр".
2. C помощью WMI (Windows Management Instrumentation - Инструментарий управления Windows).
Необходимые настройки описаны в разделе "Настройки WMI".

Результатом выполнения скрипта является файл, имя которого содержит имя компьютера.
При успешном чтении серийного номера будет создан файл, содержащий примерно следующее:
PC: IS-PC
OS: Windows 8 Single Language
REG: T4XTK-NCGZ2-RYKYD-C65MD-7T87Q
WMI: T4XTK-NCGZ2-RYKYD-C65MD-7T87Q

При неуспешном чтении серийного номера будет создан файл, содержащий примерно следующее:
PC: IS-PC
OS: Windows 8 Single Language
REG: Error= 1: Error read \\IS-PC\hklm\software\microsoft\windows nt\currentversion\DigitalProductId.
WMI: Error= 462: Error create WinMGMT. Компьютер удаленного сервера не существует или недоступен.

Примеры запуска скрипта:
1. get_windows_key_via_reg_wmi.vbs
2. get_windows_key_via_reg_wmi.vbs
По-умолчанию скрипт выполняется относительно локального компьютера.
79. Андрей М. (StepByStep) 20.10.13 15:29
(76) echo77,
Выложил новую версию скрипта. Попробуйте его.
Добавлено чтение из удаленного реестра.
Имеются особенности, а именно:
' Windows x32/x64. Особенности использования. Известные проблемы (условие: настройки из раздела "Настройки WMI" произведены).
' Рекомендованный способ применения: Локально с правами администратора.
' Получение серийного номера удаленно.
' При удаленном получении серийного номера результат не всегда положительный.
' Исходный ПК x64, Целевой ПК x64 - результат положительный.
' Исходный ПК x64, Целевой ПК x32 - результат положительный.
' Исходный ПК x32, Целевой ПК x32 - результат положительный.
' Исходный ПК x32, Целевой ПК x64 - REG - отрицательный, WMI - положительный результат.
' Пояснение:
' При считывании из x32-Клиента в результате отображения x64-Ключей на x32-Ключи происходит обращение к ветке реестра:
' HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows NT\CurrentVersion\DigitalProductID
' Ключ DigitalProductID в разделе HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows NT\CurrentVersion по-умолчанию отсутствует.
Что касается WMI, то настройки достаточно подробно описаны на странице публикации. Все с чем столкнулся - описал.
Основная причина, по которой ПК с Windows Vista и выше могут быть недоступны - это UAC.
Причем недостаточно в "Панели управления" - "Настройка уведомления об изменении параметров компьютера"
передвинуть ползунок в "Никогда не уведомлять". Необходимо полностью отключать UAC через реестр: "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Sys­tem\EnableLUA" = 1-Активен, 0-Неактивен.
Где-то это допустимо с точки зрения безопасности - где-то - нет. Это уже надо решать.
80. Александр Крынецкий (echo77) 20.10.13 16:53
(77) Могут, но только один раз - за такое банят.
81. Андрей Блохин (Razlagutt) 25.10.13 10:58
Привет! Что-то у меня в сети не все компы видит. С чем это может быть связано? Потом. Как порты разрешить в смысле относительно какой программы/службы?
82. Андрей М. (StepByStep) 29.10.13 22:14
(81) Razlagutt,
Настройки портов и др. описаны в разделе "Настройка WMI:".
Изначально список компьютеров берется из "Сетевого окружения" - на форме "СПИСОК"
и только потом пингуется и, если успешно - записывается в таблицу.
Но и в сетевом окружении Windows компьютеры не сразу появляются (до 15 мин.) и это при правильных настройках.
Если используете "WMI-PING", то попробуйте обычный визуализируемый "PING".
83. Андрей Блохин (Razlagutt) 31.10.13 19:26
(82) StepByStep, визуализируемый "WMI-PING" и спасает. Что касается настроек WMI. Делаю все по инструкции, безрезультатно. Пока фаервол не отключишь доступ к WMI не будет. Другая проблема в том, что все фаерволы отключены, а доступ к WMI на некоторых компах все равно нет (у меня 3 компа никак не хотят доступ давать). Что нужно сделать в фаерволе, чтобы WMI работал без отключения фаервола?
84. Андрей М. (StepByStep) 01.11.13 01:04
(83) Razlagutt,

По настройкам WMI, кроме написанного добавить нечего. Видимо не столкнулся с другими проблемами, хотя проделал это на десятках компьютеров Windows XP - Windows 7.

3 компьютера - это случайно не Windows 7/8 ?
Если да - то см. UAC:

Характерно для операционных систем Windows Vista и выше.
Активный UAC на целевом (удаленном) компьютере блокирует удаленный доступ по WMI.
"HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Sys­tem\EnableLUA" = 1-Активен, 0-Неактивен.
85. Андрей М. (StepByStep) 01.11.13 01:12
(83) Razlagutt,
Проверка из командной строки Windows:

Запрос: имя ОС сервера c помощью команды wmic:
wmic /node:"Имя компьютера" os get name
86. Андрей Блохин (Razlagutt) 01.11.13 14:15
(84) StepByStep, ну я вырубал УАК, но бестолку, хотя он, кстати, не всегда мешает. На нескольких машинах забыл отрубить, но все работает.
87. Андрей М. (StepByStep) 01.11.13 15:15
(86) Razlagutt,
Компьютеры в домене ?
88. Андрей Блохин (Razlagutt) 02.11.13 13:34
Рабочая группа на Win7 pro 16 шт.
89. Андрей Блохин (Razlagutt) 05.11.13 13:45
(85) StepByStep, воспользовался я этой штукой wmic /node:"Имя компьютера" os get name. Выдал он мне, что отказано в доступе, хотя в комп вхожу, УАК отключен, доступ к шарам есть, порты разрешил какие надо, в исключения добавил.
90. Андрей М. (StepByStep) 06.11.13 18:54
(89) Razlagutt,
Спасибо. Посмотрю.
91. Андрей Блохин (Razlagutt) 07.11.13 08:28
(90) StepByStep, новости с фронта. Если я пишу wmic /node:"PCName" /user:"AdminName" /password:"AdminPassword" os get name, то все здорово (в консоли), но я так понимаю, что твоя обработка не может знать учетные данные админа поэтому доступа в WMI я не получаю.
StepByStep; +1 Ответить 1
92. Андрей М. (StepByStep) 07.11.13 10:50
(91) Razlagutt,
В ДЕСЯТКУ. Разрабатывал, отлаживал, работая под админом, являющимся админом и на удаленных компьютерах...
93. Андрей Блохин (Razlagutt) 07.11.13 14:00
(92) StepByStep, да только вот почему с остальными пк таких траблов нет? Не требуют повышения прав.
94. Андрей М. (StepByStep) 08.11.13 10:15
(93) Razlagutt,
Проверьте, пожалуйста:

1. В Центр управления сетями и общим доступом - Дополнительные параметры общего доступа:
Проверьте идентичность настроек на ПК, где все нормально и "проблемных" ПК.

2. Пользователя+пароль на "проблемных" ПК и пользователь+пароль на ПК, на котором осуществляется запуск 1С+Обработка.
95. Андрей Блохин (Razlagutt) 13.11.13 10:50
(94) StepByStep, 1) Все совпадает.
2) Учетки на удаленном и локальном должны совпадать разве?
96. Андрей М. (StepByStep) 14.11.13 09:55
(95) Razlagutt,
1. Хорошо.
2. Если пользователь, использованный в wmic совпадает с пользователем, под которым запускается 1С, то доступ к WMI в принципе должен быть. Но если пользователь, под которым запускается 1С не имеет прав доступа к целевому компьютеру - то WMI недоступен.
3. Возможно. Если отключение брандмауера позволяет получить данные по WMI, то надо смотреть правила брандмауера.
97. Андрей Блохин (Razlagutt) 14.11.13 15:43
(96) StepByStep, последние вести с фронта. Из 4-х компом 3 "сдались". Решение: нужно создать правило или дать доступ исходящим пакетам приложения C:\Windows\SysWOW64\wbem\WMIC.exe. Тип соединения = Исходящее, IP = all, Протокол = TCP, Удаленный порт = 49154. Прикрепил скрин.

Но тот, который мы обсуждаем здесь не дается. Он отличается от всех тем, что на нем нет 1С, но я думаю не в этом дело. И фиг знает, что с этим делать. Я уже на хакер.ру статейку про wmi изучил, но безрезультатно =(
Прикрепленные файлы:
StepByStep; +1 Ответить 1
98. Андрей М. (StepByStep) 22.11.13 10:35
(97) Razlagutt,
// Windows Vista и выше:
// ---------------------
// UAC:
// Активированный UAC на целевом (не локальный) компьютере блокирует удаленный доступ по WMI.
//
// Локальная политика безопасности:
// Параметры безопасности:
// - Контроль учетных записей: Режим одобрения администратором для встроенной учетной записи администратора
// Значение по-умолчанию: Отключено. Оставить таким.
// - Контроль учетных записей: Все администраторы работают в режиме одобрения администратором
// Значение по-умолчанию: Включено.
// При установке: Отключено становятся доступными администратору,
// не являющемуся встроенным администратором диски C$ по UNC, а также WMI при включенном UAC.
99. cssprite 14.01.14 10:28
В клиент-серверном варианте, если сервер на linux, обработка не работает