README.md

OpenSSL Libraries Module for Lazarus

📦 Описание модуля

openssl_libs.pas - модуль для автоматического извлечения библиотек OpenSSL (libeay32.dll и ssleay32.dll) из ресурсов приложения Lazarus.

🎯 Назначение

Модуль предназначен для упрощения работы с OpenSSL в проектах Lazarus при использовании:

  • Synapse - библиотека сетевых компонентов
  • Indy 10 - компоненты для работы с интернет-протоколами

📊 Поддерживаемые архитектуры

Архитектура Файл ресурсов Версия OpenSSL
32-bit ssl-libs-x32.lrs 1.0.2.17
64-bit ssl-libs-x64.lrs 1.0.2.17

🚀 Установка и использование

1. Добавление модуля в проект

В Lazarus добавьте модуль в uses:

uses
  ..., openssl_libs;

4. Использование в коде

// Извлечение библиотек при запуске
procedure TForm1.FormCreate(Sender: TObject);
begin
  if not SSLLibsExtract then
    ShowMessage('Ошибка извлечения библиотек OpenSSL');
end;

// Удаление библиотек при закрытии
procedure TForm1.FormDestroy(Sender: TObject);
begin
  SSLLibsRemove;
end;

⚙️ Функции модуля

function SSLLibsExtract: boolean;

Извлекает библиотеки OpenSSL в текущую директорию приложения.

Возвращает:

  • True - библиотеки успешно извлечены или уже существуют
  • False - произошла ошибка при извлечении

function SSLLibsRemove: boolean;

Удаляет библиотеки OpenSSL из текущей директории.

Возвращает:

  • True - библиотеки удалены или не существовали
  • False - произошла ошибка при удалении

🔧 Настройка проекта Lazarus

Для 32-bit приложения:

  1. Project → Project Options
  2. Config and Target → Target OS: win32
  3. Build modes: убедитесь, что выбран 32-bit режим

Для 64-bit приложения:

  1. Project → Project Options
  2. Config and Target → Target OS: win64
  3. Build modes: убедитесь, что выбран 64-bit режим

⚠️ Важные замечания

  1. Не смешивайте битности!

    • 32-bit приложение → только 32-bit библиотеки
    • 64-bit приложение → только 64-bit библиотеки
  2. Проверка архитектуры:

    {$IFDEF CPU64}
     // Код для 64-bit
    {$ELSE}
     // Код для 32-bit
    {$ENDIF}
    
  3. Расположение библиотек:

    • Библиотеки извлекаются в директорию приложения
    • Убедитесь, что у приложения есть права на запись

🔄 Версии

Компонент Версия Описание
Модуль 2.0 Поддержка 32/64-bit архитектур
OpenSSL 1.0.2.17 Стабильная версия библиотек
Lazarus 2.0+ Рекомендуемая версия IDE

📄 Лицензия

Модуль распространяется по лицензии MIT.
Библиотеки OpenSSL имеют свою собственную лицензию.

Описание
Модуль для распаковки из ресурсов библиотек проекта OpenSSL
Конвейеры
0 успешных
0 с ошибкой
Разработчики