Skip to content

Instantly share code, notes, and snippets.

@OOOlledj
Created April 29, 2025 19:44
Show Gist options
  • Select an option

  • Save OOOlledj/ea77174990dd3c331f1775fad82fedff to your computer and use it in GitHub Desktop.

Select an option

Save OOOlledj/ea77174990dd3c331f1775fad82fedff to your computer and use it in GitHub Desktop.
Потоковая расшифровка файлов программных лицензии 1С
# 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