Использование утилиты ring для выяснения данных о программных лицензиях

20 Comments

  1. triviumfan

    Зачем извращаться? Плюс ставить эту виртуальную машину жабы… ведь можно получить данные прямо из агента в несколько строчек кода, а на 1с есть одна из наиболее популярных обработок https://infostart.ru/public/188444/

    Reply
  2. Vovan58

    Вот и ставить не надо JVM… А данные лицензий там видны (в обработке) — адрес, e.mail, организация? Цели -разные! Эту утилиту приходится применять при повторном запросе лицензии.

    Reply
  3. molodoi1sneg

    Добрый день.

    Подскажите В файле ринг.бат вот такой код:

    @echo off
    SETLOCAL ENABLEDELAYEDEXPANSION ENABLEEXTENSIONS
    
    rem  —————————————————————————-
    rem Ring launcher
    rem
    rem Required environment variables:
    rem JAVA_HOME — location of a Java installation directory.
    rem Optional environment variables:
    rem RING_OPTS — additional Java options
    rem  —————————————————————————-
    
    IF NOT DEFINED JAVA_HOME (
    echo.
    echo Error: JAVA_HOME environment variable is not set.
    echo Please set the JAVA_HOME environment variable to the location of your Java installation.
    echo.
    goto error
    )
    
    set «NEW_JAVA_HOME=%JAVA_HOME:»=%»
    
    IF NOT EXIST «!NEW_JAVA_HOME!injava.exe» (
    echo.
    echo Error: «!NEW_JAVA_HOME!injava.exe» is not found.
    echo Please set the JAVA_HOME environment variable to the location of your Java installation.
    echo.
    goto error
    )
    
    IF ERRORLEVEL 1 (
    echo Unexpected error. Unable to enable extensions.
    goto error
    )
    
    set RING_JAVA=»%NEW_JAVA_HOME%injava.exe»
    set RING_MAIN=»com._1c.ring.cli.Ring»
    
    set java_opts_adds=
    rem Check whether we can use additional java options
    IF DEFINED RING_OPTS (
    set java_opts_adds=%RING_OPTS%
    echo Using RING_OPTS from environment variable: %RING_OPTS%.
    )
    
    set CLASSPATH=»%~dp0/lib/*»
    
    %RING_JAVA% %java_opts_adds% -cp %CLASSPATH% %RING_MAIN% %*
    set ERROR_CODE=%ERRORLEVEL%
    goto end
    
    :error
    rem — If error occurred — place a flag
    set ERROR_CODE=1
    goto end
    
    rem Exit
    :end
    IF %ERRORLEVEL% NEQ 0 (
    if %ERROR_CODE% NEQ 0 (
    set ERROR_CODE=ERRORLEVEL
    )
    )
    cmd /C exit /B %ERROR_CODE%
    

    Показать

    Как заменить ?

    Reply
  4. Vovan58

    Его не меняем. Это же комментарии!

    Reply
  5. kembrik

    (1) В повседневной работе часто использую утилиту ring для

    1. Узнать сколько активаций уже профукано

    2. Узнать на кого собственно регистрировали

    Насколько я знаю, готовых обработок для получения этих данных нет

    Reply
  6. Vovan58

    Кому в лом повторить, обращайтесь в личку!

    Reply
  7. killovolt

    Спасибо, работает!

    Reply
  8. v_den_v

    подскажите пожалуйста, а как победили расположение файла «ring-commands.cfg» в котором прописываются доступные модули для использования с утилитой ring, в частности «license»?

    собственно цель как и у вас — получить мобильный инструмент для работы с лицензиями на разных ПК, не устанавливая для этого дополнительный софт. пока приходится на каждом ПК подкидывать файл ring-commands.cfg в %ALLUSERSPROFILE%1C1CE,

    т.к. без этого «ring» не видит установленный модуль «license»

    Reply
  9. Vovan58

    Пока, ни как. Ну то есть , как Вы делаю.

    Reply
  10. Xershi

    (8) я писал код на сервере: Универсальный монитор лицензий 1С

    Reply
  11. v_den_v

    (9) ясно, спасибо. Возможно, данный нюанс стоило отразить в статье.

    Reply
  12. Vovan58

    (10) Ну и? Устанавливать license нужно и в Вашем случае…

    Reply
  13. Xershi

    (12) все верно, но только на сервере, а на ПК клиентов не надо. Без установки функционал же модуля не доступен.

    Reply
  14. Vovan58

    (13) на клиентском компьютере слетела лицензия, 1С Вы не запустите на нем…. Как раз на ПК клиентов и надо… Ведь именно на нем надо восстанавливать лицензию. И у них вообще сервера 1С может и не быть… Основное время занимает скачивание и установка JRE и этой «приблуды» к нему для шифрования (к стати, помните куда надо писать эти библиотеки?). А сам ring устанавливается мгновенно…. Поэтому флэшка и нужна…

    Reply
  15. Vovan58

    (11) ну вот в (14) ответил как я это делаю : Устанавливаю ring , без всяких джав и работаю с флэшки.

    Reply
  16. Xershi

    (14) установкой софта у меня админы занимаются.

    Reply
  17. Vovan58

    (16) тогда так и надо сказать, что Вы не в теме…

    Reply
  18. rmIvanT

    (8)

    %ALLUSERSPROFILE%1C1CE,

    т.к. без этого «ring» не видит установленный модуль «license»

    Нашёл решение:

    Добавляем строчку, в наш изменённый E:gvkLic
    ing.bat
    :

    в начало:

    IF EXIST %ProgramData%1Clicenses (
    COPY /Y %ProgramData%1Clicenses*.lic E:gvkLic1Clicenses\r
    ) ELSE (
    echo.
    echo Error: %ProgramData%1Clicenses is not found.
    echo Каталог с лицензиями 1С не обнаружен.
    echo.
    goto error
    )
    set ProgramData=E:gvkLic

    Показать

    в конец, перед (при успешном выполнении копируем файлы взад)) ) cmd /C exit…

    COPY /Y E:gvkLic1Clicenses*.lic C:ProgramData1Clicenses

    создаём папки E:gvkLic1C1CE

    и E:gvkLic1Clicenses

    и кидаем туда(E:gvkLic1C1CE) файлик ring-commands.cfg

    Важно не забыть поправить файлик ring-commands.cfg он должен выглядеть так:

    license:
    —
    file:    .1CEcomponents1c-enterprise-license-tools-0.11.0+1-x86com._1c.license.activator.ring-0.11.0-1.jar
    arch:    x86
    version: 0.11.0

    Файл является текстовым, в кодировке UTF_8 (без BOM), формат файла – YAML.

    E:gvkLic — путь к Вашей переносной утилите Ring

    ВНИМАНИЕ: Под обычным пользователем не работает, у него нет доступа на запись в %ProgramData%1Clicenses, печаль… без админских прав не обойтись

    Reply
  19. Vovan58

    (18) А зачем Вы переписываете лицензии? И они могут лежать еще и в других местах…

    Это путь к нарушению лицензионности и прекращению работы лицензий (их порчи)

    Чуть позже отпишусь как эту проблему решить… вечером 🙂

    Reply
  20. rmIvanT

    (19)

    А зачем Вы переписываете лицензии?

    За тем, что для сеанса переопределяем переменную окружения «set ProgramData=…», чтобы утилита заработала

    На чтение информации работает(не портится), активировать пока не пробовал.

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *