VC调用delphi写的DLL的问题,请赐教。
我用delphi作了一个DLL,两个输出函数,其中一个不要任何参数,一个需要一个PCHAR类型的参数,DLL做好后在Delphi下调试调用成功。但是在VC中,调用不带参数的函数成功,调用带参数的函数失败,而且没有给我任何提示信息,以前没有用过VC,不懂怎么回事,请高手赐教!
我的VC代码如下
typedef char* (__stdcall * SpliderWord)(char* resstr);
typedef char* (__stdcall * Getinfo)(void);
HINSTANCE hInstance;
SpliderWord spliderword;
Getinfo getinfo;
LPCWSTR dlllib = L"e:\\cndivdll.dll";
hInstance = LoadLibrary(dlllib);
if (hInstance == NULL)
{
doc->add ( *Field::Text(_T("idxtext"),doctext) );
return doc;
}
spliderword=(SpliderWord)GetProcAddress(hInstance,"SpliderWord");
getinfo=(Getinfo)GetProcAddress(hInstance,"Getinfo");
char* spliderbuf = "";
spliderbuf = getinfo();
spliderbuf = doctext;
spliderword(spliderbuf); // 执行到这儿出错,没有看到提示信息
FreeLibrary(hInstance);