//-------------IGDPrint.h文件代码
#ifndef _IGDPRINT_H_
#define _IGDPRINT_H_
//dll导出类
//dll跟其使用者共用的头文件
#pragma once
#include "IGDLog.h"
#include <list>
using namespace std;
interface IGDPrint
{
public:
virtual BOOL GDPrint() = 0;
virtual void Release() = 0;
};
IGDPrint* CreateGDPrint(IGDLog* pIGDLog);
void DestroyGDPrint(IGDPrint* pIGDDbAgent);
#endif
#include "IGDPrint.h"//DLL头文件
HINSTANCE hDllInst = LoadLibrary(_T("../bin/GDPrint.dll"));
if(hDllInst){
IGDPrint* pIGDPrint = NULL;
typedef IGDPrint* (*NewGDPrint)(IGDLog*);
NewGDPrint pNewGDPritFun = NULL; // 函数别名
pNewGDPritFun = (NewGDPrint)GetProcAddress(hDllInst, "CreateGDPrint");
if(pNewGDPritFun)
{
pIGDPrint = pNewGDPritFun(g_pIGDLog);
}
typedef void (*DelGDPrint)(IGDPrint*);
DelGDPrint pDelGDPritFun = NULL; // 函数别名
pDelGDPritFun = (DelGDPrint)GetProcAddress(hDllInst, "DestroyGDPrint");
if(pDelGDPritFun)
{
pDelGDPritFun(pIGDPrint);
}
FreeLibrary(hDllInst);
}