BCB调用VC++生成的dll问题
各位好,我需要利用BCB静态调用VC++生成的dll,网上很多帖子方法,主要都是利用 implib.exe 对 dll 文件生成lib,然后就可以调用了,但是我试了都不行,请各位赐教一下。
//--------------------------
//VCDllTest1.cpp 文件内容
//------------------------
#include "stdafx.h"
#include "VCDllTest1.h"
int add(int a, int b)
{
return a + b;
}
//--------------------------
//VCDllTest1.h 文件内容
//------------------------
#pragma once
extern "C" _declspec(dllexport)int add(int a, int b);
在VS2015生成VCDllTest1.dll及VCDllTest1.lib文件后,创建了另一个新使用程序,静态加载,VS2015程序能使用此链接库。
//--------------------------
//BCB内容
//------------------------
然后转到BCB中(使用BCB6),已利用命令 implib.exe -a VCDllTest1.lib VCDllTest1.dll 生成了BCB调用的lib,并在工程中加载了VCDllTest1.lib,VCDllTest1.dll文件放在了.exe相同目录下了。
//--------------------------
//Unit1.cpp 文件内容
//------------------------
//extern "C" __declspec(dllexport) int add(int a, int b);
extern "C" __declspec(dllimport) int add(int a, int b);
void __fastcall TForm1::btn1Click(TObject *Sender)
{
int a = 2;
int b = 3;
int c = add(a,b);
}
但出现[Linker Error] Unresolved external '_add' referenced from E:\BCBWORK\VCDLLTEST\UNIT1.OBJ的问题,是哪一步错了吗?