#https #webserver #indy
Вопрос:
Написанное в RAD Studio 10.4 Sydney C Builder, у меня есть 64-разрядное приложение для Windows, которое включает в себя веб-сервер. Как интерактивное приложение Windows, у меня нет проблем с обслуживанием HTTPS. Однако, когда я пытаюсь преобразовать это приложение в службу Windows, при инициализации веб-сервера возникает исключение:
«Нарушение доступа по адресу 0000000025529F04 в модуле ‘libeay32.dll». Прочитайте адрес FFFFFFFFFFFFFFFF»
Я использую сгенерированный пример кода приложения веб-сервера в качестве основы своего приложения, но это требует некоторых изменений при реализации в службе Windows.
Я заметил, что объект «Приложение» изменяется при создании интерактивного приложения веб-сервера, поэтому возникает вопрос, требуется ли какой-то особый подход при реализации приложения службы Windows.
Есть какие-нибудь предложения?
Комментарии:
1. Нарушение доступа вблизи адреса 0 (в данном случае
-1
) обычно означаетnil
, что осуществляется доступ к указателю. Вам нужно отладить свой код, чтобы увидеть, какой код выполняется по адресу0000000025529F04
, и найтиnil
его .
Ответ №1:
Испытывая значительные сомнения по поводу тестового сценария, я воссоздал очень простое приложение, и это работает как в 32 — разрядных, так и в 64-разрядных службах Windows.
Соответственно, похоже, что что-то в моем более сложном приложении вызывает эту проблему.
Итак, простой ответ на мой вопрос: «Нет, ничего особенного не требуется».