`
aigo
  • 浏览: 2537237 次
  • 性别: Icon_minigender_1
  • 来自: 宜昌
社区版块
存档分类
最新评论

error C2712: Cannot use __try in functions that require object unwinding

阅读更多

原文:http://social.msdn.microsoft.com/Forums/en/vcgeneral/thread/42985583-36fb-4e14-8642-bd837aac0727

 

I have a code that is called on a pointer that may be invalid (I have no control over its value):

 

__try
{
  CString str = (LPCTSTR)wParam;

  //Work with 'str' now
}
__except(1)
{
  //Memory fault
}

 

But when I try to use it in a MFC project, it gives me this error:

error C2712: Cannot use __try in functions that require object unwinding

 

 

解决方法:

__try
{
  DoStuffWithWParam(wParam);
}
__except(1)
{
  //Memory fault
}

void DoStuffWithWParam(WPARAM wParam) {

CString str = (LPCTSTR)wParam;

  //Work with 'str' now
}

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics