我有这个DLL,要用GetActiveTagData这个函数,但我只知道他在VB中的声明:Public Declare Function GetActiveTagData Lib "Mr3001ADll.dll" (ByVal hCom As Long, ByVal NetAddr As Byte, ByRef cnt As Byte, ByRef Value As Byte) As Integer
请问我这样写对。运行没报错但读不出数据来。
[DllImport("Mr3001ADll.dll",
             EntryPoint = "GetActiveTagData",
             CharSet = CharSet.Ansi,
             CallingConvention = CallingConvention.StdCall)]
        public static extern bool GetActiveTagData(
             int hCom,
             ref byte  NetAddr,
             ref byte cnt,
             ref byte value);
求解!谢谢!

解决方案 »

  1.   


      public static extern int GetActiveTagData(
      long hCom,
      byte NetAddr,
      ref byte cnt,
      ref byte value);
      

  2.   

      public static extern int GetActiveTagData(
      int hCom,
      byte NetAddr,
      ref byte cnt,
      ref byte value);
      

  3.   

    GetActiveTagData的返回类型As Integer
      

  4.   

     status1 = ClassInfo.Reader.GetActiveTagData(hCom, NetAddr, ref cnt, ref value[0]);
    按1楼的改过来,调用还是取不到值??