• 6536阅读
  • 0回复

在VC中动态调用(静态调用比较麻烦)BCB做的DLL的方法 [复制链接]

上一主题 下一主题
离线XChinux
 

只看楼主 倒序阅读 楼主  发表于: 2005-07-30
在VC中动态调用(静态调用比较麻烦)BCB做的DLL的方法:
{
  typedef int (__stdcall *TCallDllFunc)();
  TCallDllFunc DllFunc;
  HINSTANCE Inst=LoadLibrary("madebybcb.dll");
  (FARPROC &)DllFunc = GetProcAddress(Inst, "DllFunc");
  ShowDialog();
  FreeLibrary(Inst);
}
在BCB中做DLL时,使用VC的DllMain方式而不是BCB的DllEntryPoint方式
简单的输出函数
extern "C" __declspec(dllexport) int __stdcall ShowDialog()
{

//if (Form2 != NULL)
//{
//   delete Form2;
//   Form2 = NULL;
//}
Form2 = new TForm2(NULL);
Form2->ShowModal();
delete Form2;
Form2 = NULL;
return 0;
}

记住使用__stdcall方式。
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
快速回复
限100 字节
 
上一个 下一个