现在我有个C写的c.dll文件,想在C#里调用,有一个函数是传给结构体的,不知道在C#中怎么写这函数。
这个函数是:
int initialize(CCallbackInterface *CCallbackInterface)
参数名 类型 描述
CCallbackInterface CCallbackInterface* 回调函数指针结构体我在c.h里看到CCallbackInterface这结构是:struct _CALLBACKINTERFACE{
void (*onGetCapabilityToken)();
void (*onConnected)();
void (*onConnectError)(int reason);
...
};
typedef struct _CALLBACKINTERFACE CCallbackInterface;现在我在C#中这样用
public struct _CALLBACKINTERFACE{
void onGetCapabilityToken();
void onConnected();
void onConnectError(int reason);
...
}[DllImport("c.dll", EntryPoint = "initialize")] //初始化
public static extern int initialize(_CALLBACKINTERFACE CCallbackInterface); 我不知道对不对,因为我不知道在窗口cs中调用这个initialize的时候_CALLBACKINTERFACE这个要怎么传,知道的指教下,谢谢
这个函数是:
int initialize(CCallbackInterface *CCallbackInterface)
参数名 类型 描述
CCallbackInterface CCallbackInterface* 回调函数指针结构体我在c.h里看到CCallbackInterface这结构是:struct _CALLBACKINTERFACE{
void (*onGetCapabilityToken)();
void (*onConnected)();
void (*onConnectError)(int reason);
...
};
typedef struct _CALLBACKINTERFACE CCallbackInterface;现在我在C#中这样用
public struct _CALLBACKINTERFACE{
void onGetCapabilityToken();
void onConnected();
void onConnectError(int reason);
...
}[DllImport("c.dll", EntryPoint = "initialize")] //初始化
public static extern int initialize(_CALLBACKINTERFACE CCallbackInterface); 我不知道对不对,因为我不知道在窗口cs中调用这个initialize的时候_CALLBACKINTERFACE这个要怎么传,知道的指教下,谢谢
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货