动态连接库一般是在运行时连接并使用,一般把动态连接库添加到工程跟目录下或者在系统文件夹下,但是有时为了隐含动态连接库文件,可以在工程中添加的方法。
1,首先在设计时把动态连接库添加到资源。如在InitMotorDB工程中添加libmySQL.dll文件作为资源
在使用动态连接库时,首先从资源中读取数据,然后写DLL文件(即从资源文件还原成动态连接库文件),然后装入,下来的流程就是跟显式连接动态连接库一样的操作了。
如下例子:
//头文件
class CMysql : public CObject
{
//。。。。
//定义函数指针类型
typedef MYSQL* (WINAPI *MYSQL_INIT)(MYSQL*);
typedef MYSQL* (WINAPI *MYSQL_REAL_CONNECT)(MYSQL*, LPCSTR, LPCSTR, LPCSTR, LPCSTR, UINT,LPCSTR,UINT);
typedef int (WINAPI *MYSQL_QUERY)(MYSQL*,LPCSTR);
typedef MYSQL_RES* (WINAPI *MYSQL_USE_RESULT)(MYSQL*);
typedef MYSQL_ROW (WINAPI *MYSQL_FETCH_ROW)(MYSQL_RES*);
typedef void (WINAPI *MYSQL_FREE_RESULT)(MYSQL_RES*);
typedef int (WINAPI *MYSQL_SELECT_DB)(MYSQL*,LPCSTR);
typedef MYSQL_RES* (WINAPI *MYSQL
在编译时加入DLL而无需再运行时连接的方法
最新推荐文章于 2022-10-31 20:33:35 发布