Здравствуйте, уже писал по этому поводу но та тема уже закрыта, да и проблему тогда частично решили, а заключается она в следующем:
Перенесли лицензии на новый сервер с ОС Windows Server 2012 R2 Standart, установили HASP LM, как служба он установился и работает, как приложение установился, но при запуске выдает следующую ошибку:
Сигнатура проблемы:
Имя события проблемы: BEX
Имя приложения: nhsrvw32.exe
Версия приложения: 8.32.1.1
Отметка времени приложения: 48117a64
Имя модуля с ошибкой: StackHash_5861
Версия модуля с ошибкой: 0.0.0.0
Отметка времени модуля с ошибкой: 00000000
Смещение исключения: PCH_08_FROM_ntdll+0x0003C8AC
Код исключения: c0000005
Данные исключения: 00000008
Версия ОС: 6.3.9600.2.0.0.16.7
Код языка: 1049
Дополнительные сведения 1: 5861
Дополнительные сведения 2: 5861822e1919d7c014bbb064c64908b2
Дополнительные сведения 3: 9044
Дополнительные сведения 4: 904415419f02c4ad4d39c4867383d25a
P.S. Сразу скажу что запускал от имени администратора, и пробовал запускать под совместимостью со всеми предложенными ОС.
Скорее всего не заметят, хотя на 100% гарантировать это нельзя: в отличие от 7.7, проверявшей наличие HASP только при запуске, платформа 8.x периодически делает это все время работы.
И если проверка попадет на интервал между остановкой службы и ее запуском, то программа вылетит с сообщением: "Ключ защиты программы больше не доступен! Работа программы завершена."
Как часто происходит такая проверка - ХЗ, точную информацию найти не удалось, но я попробовал проверить: специально запустил Б.П 3.0 и выдернул HASP (локальный). Десять минут пока отработала без вылета.
Так что если подобрать интервал перезапуска службы чтобы с одной стороны, не накапливались зависшие лицензии, а с другой - пользователи не вылетали, то можно забыть об этой проблеме.
BAT-файлы для перезапуска элементарные и есть в ссылках, которые я приводил раньше.
5.
user705522_constantin_h
3708.11.18 15:54 Сейчас в теме
(4)Попробуйте отключить средство безопасности "предотвращение выполнения данных (DEP)". Сделать это можно так:
1. Нажмите правой клавишей на "Мой компьютер" -> Свойства, либо вызовите панель "Система" в панели управления;
2. Выберите пункт "Дополнительные параметры системы" в левой части окна;
3. Перейдите на вкладку "Дополнительно" и нажмите кнопку "параметры";
4. Выберите вкладку "Предотвращение выполнения данных"
5. Выберите пункт "Включить DEP для всех программ и служб, кроме выбранных ниже"
6. Добавьте приложение сюда, при запуске которого появляется проблема APPCRASH в модуле StackHash
7. Нажмите кнопку применить
Еще одним решением может быть полное отключение DEP:
bcdedit.exe /set {current} nx AlwaysOff (в командной строке от админа)
Смысл технологии DEP заключается в том, что Windows, опираясь на аппаратную поддержку NX (No Execute, для процессоров AMD) или XD (Execute Disabled, для процессоров Intel) предотвращает выполнение исполняемого кода из тех областей памяти, которые помечены как неисполняемые. Если проще: блокирует один из векторов атаки вредоносного ПО.
Однако, для некоторого ПО включенная функция предотвращения выполнения данных может послужить причиной появления ошибок при запуске — встречается это и для прикладных программ, и для игр. Ошибки вида «Инструкция по адресу обратилась к памяти по адресу. Память не может быть read или written» тоже могут иметь своей причиной DEP.
Гм! Только один я не понимаю - зачем автор добивается запуска менеджера лицензий как приложения, если он без проблем работает как служба? Какой в этом тайный смысл?
Supported Operating Systems
•Windows 2000
•Windows XP x86 and x64
•Windows Server 2003 x86 and x64
•Windows Vista x86 and x64
•Windows Server 2008 x86 and x64
•Windows 7 x86 and x64
Server 2012 в этом списке нет, так что HASP LM имеет полное право вести себя как ему заблагорассудится.
Что делать? Можно сменить релиз дистрибутива и попробовать решение, которое рекомендуется в той ветке:
(10) Раздача лицензий у Вас происходит: с помощью LM или с помощью сервера 1С? Не совсем понятно, "тянут лицензии с сервера". Лицензии - это ключ (аппаратный или программный) и ПО, которое контролирует соответствие разрешенных ключом и занятых в данный момент лицензий.
ПО может быть: HASPLicenseManager или 1C Server. Именно "или", но не "и". Из собственного опыта, "и" вносит беспорядок в порядок раздачи лицензий.
(20) HASPLicenseManager как служба-HASP Loader позволяет раздавать лицензии, но не контролировать их. То есть говоря по русски я не могу отключать зависшие сеансы или принудительно отрубать людей от лицензии.
(24)Тогда встречный вопрос, а если я перезапущу службу то все зависшие сеансы вылетят а те кто работал это не заметят?
HASP скачал с официального сайта, сейчас к сожалению сложно найти...
Скорее всего не заметят, хотя на 100% гарантировать это нельзя: в отличие от 7.7, проверявшей наличие HASP только при запуске, платформа 8.x периодически делает это все время работы.
И если проверка попадет на интервал между остановкой службы и ее запуском, то программа вылетит с сообщением: "Ключ защиты программы больше не доступен! Работа программы завершена."
Как часто происходит такая проверка - ХЗ, точную информацию найти не удалось, но я попробовал проверить: специально запустил Б.П 3.0 и выдернул HASP (локальный). Десять минут пока отработала без вылета.
Так что если подобрать интервал перезапуска службы чтобы с одной стороны, не накапливались зависшие лицензии, а с другой - пользователи не вылетали, то можно забыть об этой проблеме.
BAT-файлы для перезапуска элементарные и есть в ссылках, которые я приводил раньше.
(21) Это верно, контроль только визуальный, с помощью "AladdinMonitor". "0" в колонке TimeOut означает свободные лицензии на этом ключе. Зависшие сеансы снимаются с помощью "Консоли администрирования 1С Сервера". После снятия зависшего сеанса, строка с "0" в колонке "TimeOut" в мониторе появляется секунд через 10, в принципе приемлемо.
(13)Спасибо, прочитал. Но скрипт не подходит по причине того что могут и работающие пользователи вылететь. А в обсуждении к сожалению ничего полезного(
1. Подскажите, главная цель - отключать зависшие сеансы или запустить LM в режиме приложения?
2. Если говорим про запуск LM как приложения, Вы пробовали режим совместимости? Через свойства приложения установить другую версию ОС.