我是另开了一个线程时出现此错误,此线程其中建立一个数据集时出错;
constructor TAdobase.Create;
begin
 ADOQuery1 := TADOQuery.Create(nil);//此处错误!
 ADOQuery1.ConnectionString := Format(TTDataLink, [GetDBFPath]);
end;
此线程执行一次时正常,2到5次内必定有一次出错,并且一旦出错,此后永远浮现此错误!
谢谢解答!

解决方案 »

  1.   

    不要在线程中create它可以吗?
      

  2.   

    它提示你调用,那你就调用 CoInitialize。
    动态库中通过ADOConnection控件访问SQL Server数据库,要进行初始化的。
    Begin
      Try
        CoInitialize(Nil);
        ADOQuery1 := TADOQuery.Create(Nil); //此处异常!!!
      Except
        On E:Exception Do
        Begin
          MessageBox(0, pChar('异常【' +E.Message + '】'), '提示信息', MB_ICONWARNING);
          Exit;
        End;
        ADOQuery1.ConnectionString := Format(TTDataLink, [GetDBFPath]);
      End;
     CoUninitialize;
    End;
      

  3.   

    CoInitialize在哪里定义的啊,需要引用什么单元啊,请跟进指点。
      

  4.   

    任何ActiveX初始化都调用 CoInitialize的
    OLE2.pas有的