|
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
| Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Первое задание- инвентаризация в сети |
|
|
CMD/BAT - Первое задание- инвентаризация в сети
|
|
Новый участник Сообщения: 3 |
Всем привет!
я новичок, разбираюсь с первым крупным заданием от старшего Сис. Админа- это провести инвентаризацию в сети винды и офиса после того как сфоткал все наклейки на ПК пользователей, хочу массово через цмд получить ключи активации, которые сейчас стоят на винде7 пользователей. Скачал PSTools, через psexec.exe имею доступ к компам, как автоматизировать данный скрипт для всех ПК в сети (Его я нашел на этом форуме). (В идеале круто если каждый ПК создал бы со своим именем строчку, напротив которой ключ активации в csv/txt.) Set WshShell = CreateObject("WScript.Shell")
regKey = "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\"
DigitalProductId = WshShell.RegRead(regKey & "DigitalProductId")
Win8ProductName = "Windows Product Name: " & WshShell.RegRead(regKey & "ProductName") & vbNewLine
Win8ProductID = "Windows Product ID: " & WshShell.RegRead(regKey & "ProductID") & vbNewLine
Win8ProductKey = ConvertToKey(DigitalProductId)
strProductKey ="Windows Key: " & Win8ProductKey
Win8ProductID = Win8ProductName & Win8ProductID & strProductKey
MsgBox(Win8ProductKey)
MsgBox(Win8ProductID)
Function ConvertToKey(regKey)
Const KeyOffset = 52
isWin8 = (regKey(66) \ 6) And 1
regKey(66) = (regKey(66) And &HF7) Or ((isWin8 And 2) * 4)
j = 24
Chars = "BCDFGHJKMPQRTVWXY2346789"
Do
Cur = 0
y = 14
Do
Cur = Cur * 256
Cur = regKey(y + KeyOffset) + Cur
regKey(y + KeyOffset) = (Cur \ 24)
Cur = Cur Mod 24
y = y -1
Loop While y >= 0
j = j -1
winKeyOutput = Mid(Chars, Cur + 1, 1) & winKeyOutput
Last = Cur
Loop While j >= 0
If (isWin8 = 1) Then
keypart1 = Mid(winKeyOutput, 2, Last)
insert = "N"
winKeyOutput = Replace(winKeyOutput, keypart1, keypart1 & insert, 2, 1, 0)
If Last = 0 Then winKeyOutput = insert & winKeyOutput
End If
a = Mid(winKeyOutput, 1, 5)
b = Mid(winKeyOutput, 6, 5)
c = Mid(winKeyOutput, 11, 5)
d = Mid(winKeyOutput, 16, 5)
e = Mid(winKeyOutput, 21, 5)
ConvertToKey = 123 a & "-" & b & "-" & c & "-" & d & "-" & e
End Function
|
|
|
Отправлено: 16:00, 18-10-2017 |
|
Ветеран Сообщения: 992
|
Профиль | Сайт | Отправить PM | Цитировать 0. Расшариваем папку с доступом "Domain Computers" на запись.
1. Правим скрипт (к слову: это VBS, а не CMD), чтобы он складывал отчет в файл, например, с именем компьютера, в шару указанную в п.0 2. Добавляем через групповые политики задачу от имени системы на целевые компы (здесь можно добавить подпункт с копированием скрипта на целевой комп, но это уже по желанию). 3. Пьем пиво дней несколько, пока собираются данные. 4. Демонстрируем начальнику шару. почему такой способ лучше чем разовый запуск скрипта с проверкой всех доступных компов? потому что не все компы будут доступны во время запуска скрипта (см. законы Мерфи), в то время как задача в шедулере выполнится тогда, когда комп получит ее с групповыми политиками, сиречь при ближайшей перезагрузке или перечтении политик. з.ы. пункты 3 и 4 можно поменять местами |
|
Отправлено: 16:11, 18-10-2017 | #2 |
|
Новый участник Сообщения: 3
|
Профиль | Отправить PM | Цитировать Цитата Elven:
Например, как убрать у этого скрипта графический интерфейс, чтобы он сразу в файл записал данные и все |
|
|
Отправлено: 16:53, 18-10-2017 | #3 |
|
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата tyhome:
|
|
|
Отправлено: 16:57, 18-10-2017 | #4 |
|
Новый участник Сообщения: 3
|
Профиль | Отправить PM | Цитировать Цитата Iska:
|
||
|
Отправлено: 17:01, 18-10-2017 | #5 |
|
|
Участник сейчас на форуме |
|
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
| Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
| В сети появилось первое тестирование процессора Intel Ivy Bridge | OSZone News | Новости железа | 0 | 05-07-2011 08:30 | |
| В сети появилось первое изображение материнской платы ECS A75F-A | OSZone News | Новости железа | 0 | 20-05-2011 17:30 | |
| Log/Monitoring - Инвентаризация сети | sword_495 | Сетевые технологии | 2 | 13-05-2008 12:07 | |
| Прочее - Помогите решить задание по организации сети (теоритическое описание) | Angelpro | Хочу все знать | 3 | 18-12-2007 10:59 | |
|