动态加载dll的方法

定义函数指针

typedef int (WINAPI * GetDllFun)(WCHAR * wszPDFName, WCHAR * wszOutFileName, int * pPageCount);

extern HMODULE g_hMoudleViewer;

extern GetDllFun g_GetFirstPageViewer;

加载函数

AddDllFun(const CString & strFileName, const CString & strOutFileName
  , int & nPageCount)

{

 if(g_GetFirstPageViewer == NULL)

{

g_hMoudleViewer = ::LoadLibrary(_T("PDFViewer.dll"));
if(g_hMoudleViewer != NULL)

{

g_GetFirstPageViewer = (GetDllFun)GetProcAddress(g_hMoudleViewer, "GetFirstPage");

if(g_GetFirstPageViewer != NULL)

{

int nResult = g_GetFirstPageViewer((WCHAR*)(LPCTSTR)strFileName
     , (WCHAR*)(LPCTSTR)strOutFileName , &nPageCount);

}

}

}

}

 

用过之后要记得释放

g_GetFirstPageViewer = NULL;

if(g_hMoudleViewer != NULL)

{

::FreeLibrary(g_hMoudleViewer);

g_hMoudleViewer = NULL;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值