如题。本人只会C#(vs 2005 c#),不懂VC++代码,在工业控制中要用到一个.dll动态链接库,里面也就几个小函数,哪位高手可以帮我转成C#调用形式的,谢谢了!打开设备:
   
    函数:HANDLE WINAPI XC_PCImOpenDevice(ULONG iIndex,BOOL iEnableMemory,BOOL iEnableInterrupt )  
功能:打开XC_PCI设备,返回句柄,出错则无效
参数:iIndex 指定XC_PCI设备序号,0对应第一个设备
  iEnableMemory 是否需要支持存储器
  iEnableInterrupt 是否需要支持中断
返回值:-1  表示打开设备失败;其它值表示打开设备成功             
关闭设备
函数:VOID WINAPI XC_PCImCloseDevice( ULONG iIndex )  
功能:关闭XC_PCI设备
    参数:iIndex 指定XC_PCI设备序号
返回值:无 
读入
函数:BOOL WINAPI XC_PCImReadIoByte( ULONG iIndex, PVOID iAddr, PUCHAR oByte )  
功能:从I/O端口读取一个字节
    参数:iIndex   指定XC_PCI设备序号
          iAddr     指定I/O端口的地址
  oByte   指向一个字节单元,用于保存读取的字节数据
    返回值:布尔值,成功为true,否则为false     
写出
函数:BOOL WINAPI XC_PCImWriteIoByte(ULONG iIndex, PVOID iAddr, UCHAR iByte )  
功能:向I/O端口写入一个字节   
    参数:iIndex    指定XC_PCI设备序号
iAddr    指定I/O端口的地址
iByte     待写入的字节数据

解决方案 »

  1.   

    HANDLE WINAPI XC_PCImOpenDevice(ULONG iIndex,BOOL iEnableMemory,BOOL iEnableInterrupt )
    Intptr XC_PCImOpenDevice (Int32 iIndex, bool iEnableMemory, bool iEnableInterrupt )
    VOID WINAPI XC_PCImCloseDevice( ULONG iIndex )
    void XC_PCImCloseDevice(Int32 iIndex)
    BOOL WINAPI XC_PCImReadIoByte( ULONG iIndex, PVOID iAddr, PUCHAR oByte ) 
    bool XC_PCImReadIoByte(Int32 iIndex, Inptr iAddr, Intprt oByte)
    BOOL WINAPI XC_PCImWriteIoByte(ULONG iIndex, PVOID iAddr, UCHAR iByte ) 
    bool XC_PCImWriteIoByte(Int32 iIndex, Intptr iAddr, Intptr iByte)