大家好:
问题如题,希望大家能给点建议.

解决方案 »

  1.   

    盒子上去翻翻,有几个Demo的。
      

  2.   

    谢谢,
    我看了,盒子上讲的大多只是如何动态调用dll中的窗口,没有如何控制dll中的子窗口,我主要是想看看这方面的。
      

  3.   

    DLLfunction ShowDefectiveStorage_Month_Report:Boolean;
    var
      form1:TForm1;
    begin
      Form1 := TForm1.Create(Application);
      form1.Show;
    end;
    exports
    ShowDefectiveStorage_Month_Report;
    EXEtype
      TDLL = function():Boolean; stdcall;
    end;var 
    HINSTANCE:Thandle;
    pFunction:TDLL; 
    begin   
    hInstance:=LoadLibrary(PChar('XXX.dll'));  
    pFunction:=GetProcAddress(hInstance, PChar(ShowDefectiveStorage_Month_Report));   pFunction; 
    我这些都是动态调用的,放在数据库里,做一个DLL,插入下表。
    然后把接口,DLL名字,放到表里,程序启动自动加载也有现成平台了,很方便的此基础上开发。就像开发EXE一样简单,开发完转换下成DLL。方便快捷。
    QQ:20589816
    可以先看。
      

  4.   


    这是page的判断,是否存在,存在就不创建,显示,不然就创建
         for j:= 0 to PageControl1.PageCount-1 do
             begin
                if PageControl1.Pages[j].Caption=Str then
                  begin
                    PageControl1.Pages[j].Show;
                    Exit;
                  end;
             end;
              if not FileExists(pchar(ExtractFilePath(Paramstr(0))+Cache.Strings[IndexStr]+'.dll')) then  
               begin
                Exit;
               end;
                  Page:=TRzTabSheet.Create(PageControl1);
                  Page.Caption:=str;
                  Page.PageControl:=PageControl1;
                  Page.Show;