麻烦高手看看,这几句vb调用dll的句子怎样转成delphi的?
Public Declare Function DAQmxCreateTask Lib "nicaiu.dll" (ByVal taskName As String, ByRef taskHandle As Long) As Long
Public Declare Function DAQmxCreateDOChan Lib "nicaiu.dll" (ByVal taskHandle As Long, ByVal lines As String, ByVal nameToAssignToLines As String, ByVal lineGrouping As DAQmxLineGrouping) As Long
Public Declare Function DAQmxStartTask Lib "nicaiu.dll" (ByVal taskHandle As Long) As Long谢谢:我转的部分如下,有错误,麻烦帮忙改改。
  Function DAQmxCreateTask(taskName:String;taskHandle:Pinteger ):Longint;stdcall; external 'nicaiu.dll';
  Function DAQmxCreateDOChan(taskHandle : Longint  ; lines:String; nameToAssignToLines:String;lineGrouping:DAQmxLineGrouping):Longint  ; stdcall;external 'nicaiu.dll';
  Function DAQmxStartTask(taskHandle:Longint  ):Longint  ; stdcall;external 'nicaiu.dll';

解决方案 »

  1.   

    Function DAQmxCreateTask(taskName:PWideString;taskHandle:integer ):integer;stdcall; external 'nicaiu.dll';
    Function DAQmxCreateDOChan(taskHandle : integer; lines:PWideString; nameToAssignToLines:PWideString;lineGrouping:DAQmxLineGrouping):integer; stdcall;external 'nicaiu.dll';
    Function DAQmxStartTask(taskHandle:integer):integer; stdcall;external 'nicaiu.dll';
    DAQmxLineGrouping   这个是什么类型,lz自己查查资料,估计是自定义数据类型
      

  2.   

    DAQmxLineGrouping 这个是自定义的,如下,没问题
      DAQmxLineGrouping =(
        DAQmx_Val_ChanPerLine = 0  ,
        DAQmx_Val_ChanForAllLines = 1
      );  DAQmxValGroup =(
        DAQmx_Val_GroupByChannel = 0,
        DAQmx_Val_GroupByScanNumber = 1
      );
      

  3.   

    调用DAQmxCreateTask的时候,出错,报内存地址access violation at address 6DCA758D in module 'nidmxf.dll'. write of address 0042c590.
      

  4.   

    谢谢 kfcoffe 
     
      

  5.   

    这样吧,自己想办法吧。人不多啊。总之本人支持delphi!!!!!