
Я пытаюсь отправить несколько писем через программу на C++.
Кто-то порекомендовал библиотеку libquickmail.
Но, кажется, я не совсем понимаю... Сначала я думал, что это библиотека только для командной строки, но разве нет способа использовать ее в моей программе на C++?
Я поместил файл quickmail.h в свой каталог и включил его в свой файл cpp. В дополнение к этому я поместил libquickmail-0.dll, libquickmaillight-0.dll и quickmail.exe в свою папку.
Но всякий раз, когда я пытаюсь скомпилировать основной файл, я получаю фатальную ошибку, что "smtpsocket.cpp" и quickmail.cpp отсутствуют. Но я не включаю их никуда! Так почему я не могу просто использовать dll. Разве он не должен компилироваться без этих файлов?
Спасибо за вашу помощь.
ой, и кстати, я использую Windows, а не Linux... Есть несколько файлов .a lib, но, к сожалению, нет quickmail.lib или чего-то похожего.
Редактировать 1:
После выполнения рекомендаций Павла Скипенса я получаю следующую ошибку:
"libquickmail-0.dll" : fatal error LNK1108: invalid or corrupt file: cannot read at 0x408"
"libquickmaillight-0.dll" : fatal error LNK1108: invalid or corrupt file: cannot read at 0x408"
решение1
Попробуйте это:
1. Перейдите в Project -> Project properties -> Configuration Properties -> Linker -> Additional Library Directories Это поле, где linker будет искать ваши файлы .dll. Добавьте туда путь к вашим файлам .dll.
2. Убедитесь, что вы выбрали в конфигурации «все конфигурации», иначе вы можете получить ошибку компоновки при попытке компиляции в режиме, отличном от того, в котором вы в данный момент работаете. И выберите также все платформы. Эти два параметра находятся в верхней части окна на страницах свойств проекта.
3. Перейдите в configuration properties -> Linker -> Input -> Additional Dependencies Здесь вы должныдобавитьимена .dll, которые в данный момент отсутствуют. Убедитесь, что вы не удалили то, что есть сейчас.
4. Скомпилируйте и скомпонуйте свой проект.
Если вы получили какую-либо ошибку, обновите свой пост сообщением об ошибке из окна вывода.
решение2
libquickmail был создан для Windows с помощью MinGW-w64 и поставляется с .a
файлами библиотеки MinGW-w64.
Если вы используете MSVC, то вам понадобится .lib
файл библиотеки.
Пожалуйста, взгляните на:https://stackoverflow.com/questions/9360280/how-to-make-a-lib-file-when-have-a-dll-file-and-a-header-file