要调用C++写的DLL BOOL EC_API chekCalValue(VOID), C#要怎样写?

解决方案 »

  1.   

    bool EC_API chekCalValue()不行啊,报错
      

  2.   

    那个函数不会是void *吧?
      

  3.   

    你可以将dll添加进来 然后打开双击dll 就可以看到里面的接口了 然后就可以通过类和函数调用了
      

  4.   

    那个函数不会是void *吧?
      

  5.   

    关键
    EC_API 是怎么定义的
      

  6.   

    #ifdef EC_EXPORTS
    #define EC_API __declspec(dllexport)
    #else
    #define EC_API __declspec(dllimport)
    #endiftypedef unsigned char UCHAR;
    typedef unsigned short USHORT;
    typedef unsigned long ULONG;
    /* EC CHIP Id Define */
    #define NS541 0x00
    #define WPCE8769 0x01
    #define WPCE775 0x02
    #define NPCE783 0x03
    #define NPCE781 0x04
    #define ITE8512 0x20
    #define ENE3910 0x40
    #define UnKonwnEC 0xFEextern "C" 
    {
    BOOL EC_API chekCalValue(VOID)
    }
      

  7.   

    [ DllImport( "XX.dll" ) ] 
    public extern BOOL EC_API chekCalValue();
      

  8.   

    extern "C"
    {
      BOOL __stdcall chekCalValue();
    } [ DllImport( "XX.dll" ) ]
    public extern BOOL chekCalValue();
      

  9.   

    看来是EC_API不用定义,之所在C++中有这个,是因为要把这个函数导出来。。所以楼上的声明是对的