Russian Qt Forum
Ноябрь 24, 2024, 02:35 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Как сделать, чтобы приложение не валилось, если нет dll?  (Прочитано 2353 раз)
Yurko_San
Гость
« : Май 12, 2017, 15:41 »

Добрый вечер!

Я использую libcurl.dll в проекте, но она используется редко. Не подскажите, как сделать так, чтобы при отсутствии этой dll приложение не валилось, а выдавало предупреждение и продолжало работать с ограниченной функциональностью? Спасибо!

dll подключаю так:

win32: {
    win32-msvc*: error("Doesn't support Microsoft Visual Studio compiler! Please use MinGW GCC.")
    QT += axcontainer

    SOURCES += \
        src/tools/msexcel.cpp \
        src/devices/CashDevice/shtrihfrkdriver_win.cpp \
        src/services/idle/idle_win.cpp

    HEADERS += \
        src/tools/msexcel.h

    CONFIG(release, debug|release): LIBS += -L$$PWD/lib/ncreport/lib/ -lNCReport2
    CONFIG(debug, debug|release): LIBS += -L$$PWD/lib/ncreport/lib/ -lNCReportDebug2

    DEFINES += USE_ACTIVEX
    LIBS += -lwinspool \
            -L$$PWD/3dparty/curl-7.54.0/lib/ -lcurldll
    DEFINES += CURL_STATICLIB
    INCLUDEPATH += $$PWD/3dparty/curl-7.54.0/include
}
Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #1 : Май 12, 2017, 15:45 »

Придется грузить в рантайме. Читай http://doc.qt.io/qt-5/qlibrary.html
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #2 : Май 13, 2017, 07:59 »

Или линковать weak (в MSVC "delay loaded dll")
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.047 секунд. Запросов: 20.