Help!!! [Linker Error]
我写了个DLL,内容如下:
CPP内容
//---------------------------------------
#pragma hdrstop
#include <Windows.hpp>
#include <map>
#include "DevDRVR.h"
#include <stdio.h>
#include <math.h>
//---------------------------------------
//#pragma package(smart_init)
int *Fault;
HANDLE AppHandle=NULL,MainAppHandle=NULL;
//---------------------------------------
short DLLEXPORT WINAPI InitGlobalValue(HANDLE pMainAppHandle,HANDLE Hand,int *Flt)
{Fault=Flt;
AppHandle=Hand;
MainAppHandle=pMainAppHandle;
return GetLastError();
};
//---------------------------------------
H内容
//---------------------------------------
#ifndef DevDRVRH
#define DevDRVRH
//---------------------------------------
#define DLLEXPORT __export
extern "C"
{ short WINAPI InitGlobalValue(HANDLE pMainAppHandle,HANDLE Hand,int *Flt);
}
#endif
//---------------------------------------
我新建工程MDIFORM
#include <vcl.h>
#pragma hdrstop
#include <DevDRVr.h>
#include <stdio.h>
#include "ChildWin.h"
//---------------------------------------
void __fastcall TMDIChild::InitChildForm(void)
{ InitGlobalValue(Application->Handle,Handle,&Flt);
}
//---------------------------------------
编译时出现:
[Linker Error] Unresolved external 'InitGlobalValue' referenced from C:\PROGRAM FILES\BORLAND\CBUILDER6\PROJECTS\MDI\CHILDWIN.OBJ
请问是什么原因???
borland
[解决办法]
你这是静态方式调用,要把dll转成lib,包含到你的第二个工程里面来