dll Release与使用
1.解决方案属性页->项目默认属性->配置类型->动态库.dll
2.把要发布的dll接口放入一个头文件中,例如frontend.h,例如:
#ifdef DLL_FRONTEND_V1_1_H_H
#else
#define DLL_FRONTEND_V1_1_H_H extern "C" _declspec(dllimport)
#endif
DLL_FRONTEND_V1_1_H_H bool front_init();
DLL_FRONTEND_V1_1_H_H void write_lab(char* str4proc);
3.在对应的cpp文件中实现这些接口,例如:frontend.cpp:
#include "frontend.h"
bool front_init(){
string fname=".//properties.txt";
ifstream fin(fname.c_str());
if(!fin){
cerr<<"Can't open file: "<<fname<<endl;
exit(1);
}
pr.load(fin);//将property文件load到pr对象中存为键值对
fin.close();
}
void write_lab(char* str4proc){
string outlab = pr.getProperty("outlab");
writeLab(str4proc, outlab);
}
4.项目右键->添加->新建项->代码->模板定义文件(.def)
新建一个与上面.h和.cpp对应的.def文件,例如:
LIBRARY WS_SYNTAX_PINYIN
EXPORTS
front_init
write_lab
使用dll:
1)将.h,.lib,.dll拷贝过去;
2)使用语句:
#pragma comment(lib, "lib//crf_dll.lib")
3)将所有的配置文件全都拷贝过去