Имя: Пароль:
1C
1С v8
Как получить результат выполненного кода bat-ника
0 Повелитель
 
30.04.15
08:26
Пишу подсистему для учета компьютеров и ПО компании.

Необходимо получить Ключ продукта Windows 7.

Есть код для bat-файла, который при запуске выдает этот ключ.
Вот текст команды (Код взять отсюда, авторам спасибо. Попонтуюсь, серийный номер виндуз и сила пакетных файлов...):


echo off
setlocal enabledelayedexpansion
for /f "tokens=3" %%i in ('reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v DigitalProductId') do (
    set x=%%~i
    )
for /l %%z in (104,2,132) do (
    set /a array[%%z]=0x!x:~%%z,2!
    )
call :getkey
echo Ключ виндуз: %getkey%
pause > nul
exit /b

:getkey (p) {
    setlocal enabledelayedexpansion
    set out=%~0
    set pc=BCDFGHJKMPQRTVWXY2346789
    set x=0
    for /l %%i in (0,1,28) do (
        if !x! gtr 28 goto break
        set a=0
        for /l %%j in (132,-2,104) do (
            set /a a=array[%%j] + !a! * 256
            set /a array[%%j]="( !a! / 24 ) & 255"
            set /a a%%=24
            set /a n=%%j
            )
        for %%z in (!a!) do set key=!pc:~%%z,1!!key!
        set /a f="( !x! + 2 ) %% 6"
        if !f! equ 0 if !x! lss 28 (
            set /a x+=1
            set key=-!key!
            )
        <nul set /p u=.
        set /a x+=1
        )
:break
    echo.
    endlocal & set %out:~1%=%key%
    exit /b
    }


Как мне теперь забрать результат батника.

Или подскажите другой способ получения ключа.
1 Jonny_Khomich
 
30.04.15
08:33
сохрани в файл
2 Повелитель
 
30.04.15
08:36
(1) Каким методом?
3 George Wheels
 
30.04.15
08:39
(2) > или >>
4 Повелитель
 
30.04.15
08:42
(3) Я пока другого способа не нашел ))
5 vde69
 
30.04.15
08:43
@echo Ключ виндуз: %getkey% >MuFile.txt
6 George Wheels
 
30.04.15
08:43
(4) А зачем другой?
7 altone1C
 
30.04.15
08:44
Поменяй
echo Ключ виндуз: %getkey%
на
echo Ключ виндуз: %getkey% > c:\key.txt
8 altone1C
 
30.04.15
08:45
(6) Ну, правильней прямо из 1с из реестра прочитать, или на чём он там пишет
9 George Wheels
 
30.04.15
08:45
(7) При записи в корень может не прокатить.
10 altone1C
 
30.04.15
08:46
(9) Может. Поэтому лучше писать на шару с добавлением имени компа к имени файла :)
11 Kvant1C
 
30.04.15
08:46
(0) А тебе принципиально нужно с помощью батника ключ получать? Твоя подсистема не может прямо из реестра его прочитать?
12 Повелитель
 
30.04.15
09:06
(11) Думаю может, но этот метод первый попался.
(7) Спасибо сейчас попробую
13 Повелитель
 
30.04.15
09:09
(11) В реестре я его нашел, лежит в DigitalProductId
Но значение лежит в бинарном виде, это придется еще писать как его в нормальный вид перевести.
14 Kvant1C
 
30.04.15
10:04
(13) вот тут посмотри http://winitpro.ru/index.php/2012/10/12/kak-uznat-klyuch-windows-8/

можно это скрипт в 1с запихнуть
15 Повелитель
 
30.04.15
10:48
(14) Спасибо сейчас попробую.
(7) Этот вариант не взлетает у меня. Батник вручную работает, записывает в файл. А из 1с не пишет тот же скрипт. Каких-то прав видимо не хватает :(
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс