在DLL中包含窗体

在DLL中如何包含窗体,C++Builder6中方法如下:
(1)先包含接口文件,这是各个DLL中需要实现的功能,并在主窗口中调用这些接口。

#ifndef IDLLControlHPP
#define IDLLControlHPP
//DLL中的基本接口类,窗口消息处理须继承此类
class IDLLObject
{
public:
    virtual void   __fastcall  Initialize(Forms::TApplication* AApp) = 0 ;
    virtual void   __fastcall  UNInitialize(void) = 0 ;
    virtual HANDLE __fastcall  MergeForm(Controls::TWinControl* AParent) = 0 ;
    virtual void   __fastcall  GetPulsVersion(char * PulsName,char * Version,char * description)=0;
	
    virtual void __fastcall  DelObject()=0;//卸载DLL中的窗体
    virtual void __fastcall  ShowObject(bool isShow)=0;//是否显示DLL中的窗体
};
#endif

(2)创建一个DLL工程,在其中添加一个窗口,边框设为bsNone.并添加如下事件处理函数。其他代码编写和平常创建窗口一样。

void __fastcall TfrmLogin::FormCloseQuery(TObject *Sender, bool &CanClose)
{
    CanClose = caFree;
}

(3)每个DLL中的窗体中,

上一篇:__stdcall,__cdecl,__pascal,__fastcall的区别


下一篇:BCB编写DLL终极手册