heisheis
高崇进
采纳率0%
2016-07-04 09:03 阅读 1.1k

一个c++的方法结构体,c#调用传入结构体导出一直不对,求各位大神帮忙

struct HL7SDK_INTERFACE
{
void (* OnConnect) (int iBedNO);

void (* OnDisconnect)(int iBedNO);      

void (* OnRecvHL7Msg)(int iBedNO, void * pMsg, int iLen, int iMsgType); 

void (* OnSendHL7Msg)(int iBedNO, void *pMsg, int iLen, int iMsgType);  

};
typedef struct HL7SDK_INTERFACE HL7SDK_INTERFACE, *PHL7SDK_INTERFACE;
int InitHL7SDK(PHL7SDK_INTERFACE pHL7SDKInterace, enum HL7_WORK_MODE enHL7ServerMode, unsigned long ulServerIP, unsigned long ulLocalIP);

一个c++的方法结构体,c#调用传入结构体导出一直不对,求各位大神帮忙

[DllImport("HL7SDK.dll", EntryPoint = "InitHL7SDK", CallingConvention = CallingConvention.Cdecl)]
public extern static int InitHL7SDK(ref SDKStruct pHL7SDKInterace, publicStruct.HL7_WORK_MODE serverMode, System.UInt32 serverIP, System.UInt32 localIP);

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

1条回答 默认 最新

  • bjtbjt 5t4rk 2016-07-04 09:54

    1 注意编码 CharSet = CharSet.Ansi,
    2 注意指针 要开启C# unsafe模式才可以识别。
    3 调用约定要和封装的dll保持一致。

    点赞 评论 复制链接分享

相关推荐