c++如何生成動態連接庫並顯示調用

如下代碼的測試環境 vc++6.0ios

步驟    1.建立Dll工程c++

          2.建立用來調用Dll的測試工程windows

1.  建立Dll工程函數

    a.用vc++6.0建立一個dll(Dynamic~Link Library)工程測試

    b.代碼: spa

    

BOOL APIENTRY DllMain( HANDLE hModule, 
                       DWORD  ul_reason_for_call, 
                       LPVOID lpReserved
					 )
{
    return TRUE;
}


extern "C" __declspec(dllexport)  int  add(int x,int y)
{
	return x+y;
}

extern "C" 表示在連接庫裏面生成原模原樣的函數,方便調用
__declspec(dllexport) 表示dll導出的調用約定

編譯成功後,Debug目錄下會出現一個與工程名.dllcode


2.建立用來調用Dll的測試工程 io

    a.建立一個控制檯程序 編譯

    b.將上面生成的dll拷貝到該工做目錄下
class

    c.代碼

#include <iostream>
#include <windows.h>

using namespace std;

typedef int (*ExternAdd)(int ,int);
int main(int argc, char* argv[])
{
	HINSTANCE hi=LoadLibrary("Dll2.dll");
	if(hi==NULL)
	{
		cout<<"不能加載動態連接庫"<<endl;
	}
	ExternAdd p=(ExternAdd)GetProcAddress(hi,"add");
	cout<<p(1,2)<<endl;
	FreeLibrary(hi);
	return 0;
}
相關文章
相關標籤/搜索