定义:function MakeGuestCard(byvId:pchar;byvRoom:pchar;byvBegin:pchar;byvEnd:pchar):integer;stdcall;
function MakeGuestCard(byvId:pchar;byvRoom:pchar;byvBegin:pchar;byvEnd:pchar):integer;stdcall;//制宾客卡
  var
    str1,str2,strSwitchRoom,strId,strRoom,strBegin,strEnd,strChildRoom,strWrite,strRoom1,strType:string;
    intI:integer;
    qryFind:Tadoquery;
begin
    qryFindData:=Tadoquery.crete(nil);//这行代码报错,编译能能过,一但调用执行了这行代码就报错。
end;
不知道何如解决,在线等待各位的解决方案。

解决方案 »

  1.   

    报啥错?是否 没CoInitiallize(nil) 和 CoUninitiaze 的原因?
      

  2.   

    在DLL入口函数中加入CoInitialize(nil);
    如:
      case Reason of
        DLL_PROCESS_ATTACH:
        begin
          CoInitialize(nil);
       
        end;
        DLL_PROCESS_DETACH: CoUnInitialize() ;    DLL_THREAD_ATTACH:;
        DLL_THREAD_DETACH:;
      end;
      

  3.   

    是不是应该这个啊qryFind:=Tadoquery.crete(nil)
      

  4.   

    我很好奇编译为什么能通过,显然变量名和create都写错了。。
      

  5.   

      var
      str1,str2,strSwitchRoom,strId,strRoom,strBegin,strEnd,strChildRoom,strWrite,strRoom1,strType:string;
      intI:integer;
      qryFind:Tadoquery;
    begin
      qryFindData:=Tadoquery.crete(nil);//这行代码报错,编译能能过,一但调用执行了这行代码就报错。
    end;
    这两个名不一样
      

  6.   

      qryFind:Tadoquery;
    begin
      qryFindData:=Tadoquery.crete(nil);//这行代码报错,编译能能过,一但调用执行了这行代码就报错。
    end;