把问题发过来吧.
[email protected]

解决方案 »

  1.   

    问题是这样的, 我对Delphi很熟,但是vb以前用的很少, 现在碰到问题:
     1.   有一个用C++build编写的DLL文件,如附件CVAPIV01.dll, 它的全部函数说明如附件文档CVAPIV01.h  ,一般它的流程是
     先使用函数:  extern "C" __declspec(dllimport) int __stdcall GetVersionAPI(char *Ver); 我在vb中使用如下:
       定义:Private Declare Function GetVersionAPI Lib "G:\CVAPIV01.dll" (ByVal ver As String) As Integer   使用:
         Dim C As String
         If GetVersionAPI(C) = 0 Then
            MsgBox "得到版本号"
         Endif
       但是每次使用都报错,write错误,你可以试试,   dll文件是没有什么问题的.在Delphi\ C++Build调用多次.
    2.   另外还有一些函数:
    extern "C" __declspec(dllimport) 
    int __stdcall MF_Request(int DeviceAddress, unsigned char inf_mode, unsigned char *buffer);
    extern "C" __declspec(dllimport) i
    nt __stdcall MF_Anticoll(int DeviceAddress,unsigned char *snr,unsigned char &status);
    extern "C" __declspec(dllimport) 
    int __stdcall MF_Select(int DeviceAddress,unsigned char *snr);
             象  1. unsigned char *   
                 2. unsigned char &    
                 3. char *  
         在Vb中如何对应参数?谢谢,不胜感激,回答后高分相送! 现在我个人有7310分,高手可以留下Email或QQ号我可以随时请教。
      

  2.   

    不是啊,我现在在VB中使用DLL文件碰到上面问题,与Delphi没有任何关系.
      

  3.   

    int __stdcall MF_Request(int DeviceAddress, unsigned char inf_mode, unsigned char *buffer);
    Private Declare Function MF_Request Lib "G:\CVAPIV01.dll" (ByVal DeviceAddress As interger, ByVal inf_mode As String, buffer As String) As Integer
    其他类似嘛,自己定义就行啊
      

  4.   

    谢谢大家问题已经解决。
    int  __stdcall  MF_Request(int  DeviceAddress,  unsigned  char  inf_mode,  unsigned  char  *buffer);  
    Private  Declare  Function  MF_Request  Lib  "G:\CVAPIV01.dll  "  (ByVal  DeviceAddress  As  interger,  ByVal  inf_mode  As  byte, byref buffer()  As byte  )  As  Integer