Created
April 29, 2025 19:44
-
-
Save OOOlledj/ea77174990dd3c331f1775fad82fedff to your computer and use it in GitHub Desktop.
Потоковая расшифровка файлов программных лицензии 1С
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # 1. Сначала нужно скачать JAVA и затем указать переменную среды JAVA_HOME как путь к папке, в которой лежит папка "bin" с исполняемыми файлами JAVA | |
| # https://www.java.com/ru/download/ | |
| # 2. Скачать и установить Утилита лицензирования 1С:Предприятия (1C:Enterprise License Tools) | |
| # https://releases.1c.ru/project/EnterpriseLicenseTools | |
| # Кодировка | |
| [Console]::outputEncoding = [System.Text.Encoding]::GetEncoding('windows-1251') | |
| # Функция диалогового окна | |
| function Read-InputBoxDialog([string]$Message, [string]$WindowTitle, [string]$DefaultText) | |
| { | |
| Add-Type -AssemblyName Microsoft.VisualBasic | |
| return [Microsoft.VisualBasic.Interaction]::InputBox($Message, $WindowTitle, $DefaultText) | |
| } | |
| # Получить путь к папке с лицензиями | |
| $licenses_path = Read-InputBoxDialog -Message "Введите путь к папке с лицензиями." -WindowTitle "RINGer - kutuzov-it.com" -DefaultText "C:\ProgramData\1C\licenses" | |
| # Перенаправить весь вывод в файл | |
| $timestamp = Get-Date -Format "dd-MM-yyyy_HH-mm-ss" | |
| $filename = "Licenses_$timestamp.txt" | |
| $ErrorActionPreference = "Continue" | |
| $transcribition_log = $licenses_path + "\" + $filename | |
| Start-Transcript -path $transcribition_log -append | |
| $licenses = ring license list --path $licenses_path | |
| ForEach ($license in $licenses){ | |
| # Имя лицензии в виде "пинкод-серийник", | |
| #например "123456789012345-800111111" | |
| $lic_name = ($license -split " ",2)[0] | |
| # Получить имя файла лицензии (отформатированное) | |
| $lic_file= (($license -split " ",4)[3]).Replace(")","").Replace("(","").Replace("`"", "") | |
| # Pin, использованный для активации. Получается из $lic_name | |
| $lic_pin = ($lic_name -split "-")[0] | |
| # | |
| echo "`n$licenses_path`\$lic_file, пин-код: $lic_pin" | |
| $data = ring license info --name $lic_name --path $licenses_path | |
| echo $data | |
| # | |
| } | |
| Stop-Transcript |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment