Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Любой язык - [решено] Передача значения из vbs в bat

Ответить
Настройки темы
Любой язык - [решено] Передача значения из vbs в bat

Новый участник


Сообщения: 48
Благодарности: 1

Профиль | Сайт | Отправить PM | Цитировать


Есть файл vbs, он выводит ключ винды, надо чтобы батник после запуска запустил vbs и присвоил переменной значение ключа. Ну или можно как-нить без vbs, просто надо присвоить переменной в bat ключ винды. Заранее спасибо.

Скрытый текст

Set WshShell = CreateObject("WScript.Shell")
regKey = "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\"
DigitalProductId = WshShell.RegRead(regKey & "DigitalProductId")

Win8ProductKey = ConvertToKey(DigitalProductId)
strProductKey ="Windows 8 Key: " & Win8ProductKey

MsgBox(Win8ProductKey)

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 = a & "-" & b & "-" & c & "-" & d & "-" & e
End Function

Отправлено: 13:11, 09-02-2015

 

Ветеран


Сообщения: 874
Благодарности: 575

Профиль | Отправить PM | Цитировать


idlazarev_alex@vk, замените в VBS-файле строку
Код: Выделить весь код
MsgBox(Win8ProductKey)
на строку
Код: Выделить весь код
WScript.Echo Win8ProductKey
и тогда в пакетном файле иcпользуйте такой код:


Код: Выделить весь код
@echo off

for /f %%i in ('cscript //nologo "my.vbs"') do @set Win8ProductKey=%%i

echo %Win8ProductKey%
pause>nul

.
Это сообщение посчитали полезным следующие участники:

Отправлено: 13:56, 09-02-2015 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Любой язык - [решено] Передача значения из vbs в bat

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] получение значения (дата и время) из vbs-скрипта ptrlgnv Скриптовые языки администрирования Windows 5 29-05-2013 05:54
Любой язык - [решено] Передать данные из bat-файла в vbs-скрипт Hector Скриптовые языки администрирования Windows 2 21-06-2011 15:43
Разное - [решено] PHP - Передача полезного значения(части) массива из одного скрипта php, в другой. ilka Программирование и базы данных 8 02-11-2010 19:37
CMD/BAT - [решено] Передача значения переменной в IF при EnableExtensions kotik147 Скриптовые языки администрирования Windows 1 19-05-2010 09:22
CMD/BAT - Передача ввода из bat-файла в консольную программу infallible Скриптовые языки администрирования Windows 1 01-06-2007 10:33




 
Переход