本帖最后由 asp9988 于 2009-07-27 16:26:37 编辑

解决方案 »

  1.   

    public static extern ushort SI_Open(ulong OpenID,ref IntPtr rHandle);或public static extern ushort SI_Open(ulong OpenID,IntPtr rHandle);
      

  2.   

    open(DWORD Num,HANDLE *handle)第2个参数字是硬件句柄把...你给他个IntPtr.Zero; ....看看这个参数到底是怎么获取到的.
      

  3.   

    函数原形
    SI_USB_XP_API 
    SI_STATUS WINAPI SI_Open( 
            DWORD dwDevice, 
            HANDLE* cyHandle 
            );根据dwDevice来打开设备,cyHandle指针指向的值在以后用来操作设备,是设备句柄。 
    SI_STATUS status = SI_Open(pDevList->GetCurSel(), &m_hUSBDevice); 
    返回总是6,返回0才正确,不知道要怎么改