关于非托管代码调用托管函数的问题

程之殇 2012-06-19 02:35:44
我现在有一个非托管的c++程序里,想调用系统提供的.net里的NetworkAvailabilityChanged方法。
但是NetworkAvailabilityChanged 需要提供一个回调函数,不知道该如何设置。

如果在class里设置回调函数,则利用比如&Event::NetworkAvailabilityChanged方式,发现编译失败。
如果在cpp头部设置一个public函数,是可以成功调用的。但是因为需要在success后调用class里的方法(onNetworkChange)。不知道如何将Object^转换为Event*?

比如下面class sample:
Class NetworkManager

{

public:

setNetworkListener(){

NetworkChange::NetworkAvailabilityChanged += gcnew NetworkAvailabilityChangedEventHandler(this,&NetworkAvailabilityChanged);}

onNetworkChange();

}
外部有个public function:
void NetworkAvailabilityChanged (Object^ sender,NetworkAvailabilityEventArgs^ e)
{

}

现在 NetworkAvailabilityChanged 可以正常接收到反馈。但是我想调用class里的onNetworkChange,如何将Object^转化为Event*的指针呢?

...全文
514 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
程之殇 2014-02-26
  • 打赏
  • 举报
回复
结贴晚了,见谅
程之殇 2012-06-25
  • 打赏
  • 举报
回复
没人帮助下么???

7,540

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 VC.NET
社区管理员
  • VC.NET社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧