1. 程式人生 > >VC6.0 建立 MFC DLL

VC6.0 建立 MFC DLL

一:建立MFC shared DLL
1.使用def檔案:
新增新的類CExportDll,,將新類中匯出函式 放在 def檔案中。例子如下:

// ExportDll.h: interface for the CExportDll class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_EXPORTDLL_H__ED0A2587_E787_40A2_A847_AC66E6E634B0__INCLUDED_)
#define AFX_EXPORTDLL_H__ED0A2587_E787_40A2_A847_AC66E6E634B0__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

class CExportDll  
{
public:
	CExportDll();
	virtual ~CExportDll();
// 	int  AddF(int a, int b); 在類內匯出的函式不可被呼叫,只能是一個全域性函式
//     int Subtract(int a, int b);
};
int  AddF(int a, int b);
int Subtract(int a, int b);
#endif // !defined(AFX_EXPORTDLL_H__ED0A2587_E787_40A2_A847_AC66E6E634B0__INCLUDED_)

**【注意】**如果只使用def匯出時,匯出函式必須為全域性的,不能放在新新增的類中,DLL會編譯通過,而且檢視depends是有AddF匯出函式,但就是在呼叫函式時會報錯。
【問題】warning LNK4022: cannot find unique match for symbol “Add”
符號沒有找到唯一的匹配,也就是說有兩個相同的符號,重新命名下 ,AddF就可以啦。