这个过程其实没有那么难,如果你认识深入了,做几个demo,就了解了。。
如果你写了一个win32 的工程,很长,但是又想封装成dll但是不知道怎么做,害怕从头来过,不用担心,只需要,改动一点点就行。
1 第一步。
新建一个win32的dll工程,要编译头的,不要空项目,把你的头文件 xxx.h xxx.cpp文件全部加进来,main()入口函数 的C++文件例外。。
但是其中一个文件要改动一下,就是你的 main()函数所在的C++文件,将你的让侯将你的main()函数所在文件的所有代码Copy进去,生成一个新入口函数的文件。。
将你的main函数改成输出函数。。或者将你要执行的工程函数,携程输出函数即可。。。
// Aitalk.cpp : 定义 DLL 应用程序的入口点。
//
#include "stdafx.h"
#include <malloc.h>
#include <stdio.h>
#include <tchar.h>
#include "AitalkSample.h"
#include <crtdbg.h>
#include <locale.h>
#include <stdlib.h>
#include <atlstr.h>
#include "sqlite3.h"
#include <winuser.h>
#pragma comment(lib, "sqlite3.lib")
#ifdef _MANAGED
#pragma managed(push, off)
#endif
BOOL APIENTRY DllMain( HMODULE hModule,
DWORD ul_reason_for_call,
LPVOID lpReserved
)
{
return TRUE;
}
// ///将你的代码全部放在这里,,
extern "C" _declspec(dllexport)int OutResult(char *p)
{
char *flag=p;
char *str="初始化
return 0;
}
// ///将你的代码全部放在这里,,
#ifdef _MANAGED
#pragma managed(pop)
#endif