德成的
只有提供VB PB DEPHI函数
如何用C#调用?通用函数声明Public Declare Function DC_Com_Open Lib "Fox_DC.dll" (ByVal n As Integer, ByVal nBaudRate As Long) As Integer Public Declare Sub DC_Com_Close Lib "Fox_DC" () Public Declare Sub DC_SetLanguage Lib "Fox_DC" (ByVal bLan as BYTE) Public Declare Function DC_AutoTestCard Lib "Fox_DC.dll" (CardType As String) As Integer Public Declare Function DC_GetLastError Lib "Fox_DC" (ByVal nErr As Integer, pErrInfo As String) As Integer Public Declare Function DC_Scream Lib "Fox_DC" (ByVal n As Integer) As Integer Public Declare Function DC_TestDevice Lib "Fox_DC" () As Integer Public Declare Function DC_TestCard Lib "Fox_DC" () As Integer Public Declare Function DC_GetCardType Lib "Fox_DC" (nCardType As Byte) As Integer Public Declare Function DC_Control_light Lib "Fox_DC" (ByVal n As Byte) As Integer Public Declare Function DC_UpdateBaud Lib "Fox_DC" (ByVal nOldBaudRate As Long, ByVal nNewBaudRate As Long, ByVal nCom As Byte) As Integer Public Declare Function DC_USB_A_Open Lib "Fox_DC.dll" () As Integer Public Declare Sub DC_USB_A_Close Lib "Fox_DC" () Public Declare Function DC_USB_B_Open Lib "Fox_DC.dll" (ByVal nPort As Integer, ByVal dwBaudRate as long) As Integer Public Declare Sub DC_USB_B_Close Lib "Fox_DC" ()

解决方案 »

  1.   

    如果有com接口,那么直接引用这个库如果是纯dll,用dllimort导入这些函数
      

  2.   

    通过dllimport导入Fox_DC.dll,再调用函数
      

  3.   

    要怎么导,将DLL复制到BIN
    然后
    [DllImport("Fox_DC.dll", CharSet = CharSet.Auto, CallingConvention = CallingConvention.StdCall)] 
    导入?
    如何调用函数?
    有多个不同类型参数传递啊
    Function Integer DC_Mif_Read(Integer bAddr ,Ref String bData ) Library "Fox_DC.dll"
      

  4.   

    楼主可上网查一下
    C# 调用win32 api照抄那种调用方式就可以了
      

  5.   

    谢谢
    我看了一下,但是在项目里面竟然不能引用这个DLL
    无奈只能写绝对路径
    但是
    运行时错误:
    无法加载 DLL“C:/Program Files/Takcere/IC Card Ver2.7/dll/FOX_DC.dll”: 找不到指定的模块。 (异常来自 HRESULT:0x8007007E)。 测试代码如下:
       [DllImport("C:/Program Files/Takcere/IC Card Ver2.7/dll/FOX_DC.dll", CharSet = CharSet.Auto, CallingConvention = CallingConvention.StdCall)]
        public static extern Int32 DC_Com_Open(Int32 n, Int32 ByVal);     protected void Page_Load(object sender, EventArgs e)
        {
            DC_Com_Open(1, 115200);
        }
    请高手指点迷津