Delphi 的dll不能使用DataModule窗体吗。怎么我的会报错access violation,之前把ADO的控件放在窗体form上就没问题。
应该怎么改。网上说要添加下面的,但是不知道加在哪里。
Initialization   
      CoInitialize(nil);   
  Finalization   
      CoUnInitialize;   

解决方案 »

  1.   

    Initialization  
          CoInitialize(nil);  
      Finalization  
          CoUnInitialize;  
    unit尾部
      

  2.   

    还是不行哦。我贴下dll的部分代码
    private
        { Private declarations }
        exePath : String;
        procedure GetStrFileName;
      public
        { Public declarations }
         strcellname :string;
         StrFileName : string;
      end;
         function Execute(PicList : pchar ): boolean; stdcall; export;var
      FrmCddDisPlay: TFrmCddDisPlay;
      strcell,strFile :string;
    implementation
    uses DataModel, NeiBeData;
    {$R *.dfm}                                     
    function Execute(PicList : pchar): boolean; stdcall; export;
    var i: integer;
        showData : Boolean;
    begin
       try
         Application.CreateForm(TFrmCddDisPlay, FrmCddDisPlay);
         strcell := piclist;
         FrmCddDisPlay.Caption := strcell;
         FrmCddDisPlay.ShowModal;
          CoInitialize(nil);
         FrmCddDisPlay.Free;
         FrmCddDisPlay :=nil;
        except
        end;
    end;
      

  3.   

    就直接像平常的一样啊。那边写好时间。这边uses DataModul ,DataModul.函数过程。
    要不给我个demo看下。谢谢咯。
      

  4.   

    你的DataModul要用一个全局变量,在Initialization里创建对象.