C++ API DLL Project

C++ API DLL Project

本文关键字:Project DLL API C++      更新时间:2023-10-16

我有一个C 项目,该项目使用DLL和LIB文件附带的API以及一个标题文件。我想创建一个win32表单项目。

我的问题是如何将项目与dll和lib文件链接。

但是主要的问题是,我如何订阅事件?在API中,我可以调用函数,该功能会按照事件响应返回,在MFC项目中,我通常会在消息循环中订阅。但是在Win32中没有消息循环。

也许我自己正在复杂情况,这比我想象的要容易。请为我澄清这种情况。

谢谢。

当有人问一个以上的问题...在您的"主要问题"的情况下,总是很难回答,请显示相关的API呼叫以订阅事件。您错了Win32中没有消息循环...只是没有 mfc 消息循环。

我现在正在回答一个简单的问题..."您如何链接DLL"。我有点假设您正在使用Visual Studio。那是对的吗?我这样做的方式,当我急忙的时候就是这样:

#include "mylib.h"
#pragma comment(lib, "mylib.lib")

这就是全部。当然,我想要标题,但是当我使用时,我告诉编译器也可以链接库。

我似乎回想起其他时间,我只是简单地将库文件拖到项目的解决方案视图中,从而有效地将其添加为源。这也有效。

很长的路是编辑您的项目设置,转到 linker 部分,然后在 input 小节下,您将库添加到列表。您需要为所有配置做到这一点。有多种方法可以正确维护它,但我不会在这里进行。

如果您不使用Visual Studio,请忽略我的答案。

您不能将项目与dll文件链接,您可以将项目与lib文件链接,您可以在项目设置对话框中添加lib文件名(linker)

或,您将其添加到您的代码

#pragma comment(lib,"xxxx.lib")

DLL文件将在运行时加载。

有关消息循环,请参见http://msdn.microsoft.com/en-us/library/windows/desktop/ms644928(v = vs.85).aspx

或以下:http://msdn.microsoft.com/en-us/library/windows/desktop/mms644996(v = vs.85).aspx#modeless_box