用ASProtect加壳过的程序不能捕获异常

ncjc1 2010-04-20 10:28:05
我做的一个Win32程序,在程序WinMain中使用了SetUnhandledExceptionFilter(myExceptionFilter)来生成dump文件。
INT WINAPI WinMain( HINSTANCE, HINSTANCE, LPSTR, int )
{
........
SetUnhandledExceptionFilter(myExceptionFilter);
DisableSetUnhandledExceptionFilter();
........
}

为了测试异常,我加了一个除0操作:
try
{
iFg1 = iFg2= 0;
iFg1 = 5/iFg2;
}
catch(...)
{
throw;
}

在不加壳时程序可以捕获异常,而且可以生成dump文件;用ASProtect加壳后程序就不能捕获异常了,直接弹出系统关闭程序的对话框,请问这是怎么回事呢? 望高手赐教!
...全文
243 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
blueice12 2010-04-23
  • 打赏
  • 举报
回复
加密壳本身就有反调试措施,会不会不许你dump了?
尹成 2010-04-22
  • 打赏
  • 举报
回复
壳本身也用到这些SEH,如果要捕获异常需要自己写个壳
ncjc1 2010-04-22
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 lmxmx 的回复:]
如果想要加壳,压缩壳最好,极少出现兼容性问题。

加密壳的话,使用了太多所谓的“技术”,结果可想而知……
[/Quote]

谢谢楼上!

嗯,我就是用了加密壳,因为ASPtotect中有生成注册码的功能,所以在程序中用了他的注册机制。
看了问题不好搞了啊!
lmxmx 2010-04-22
  • 打赏
  • 举报
回复
如果想要加壳,压缩壳最好,极少出现兼容性问题。

加密壳的话,使用了太多所谓的“技术”,结果可想而知……

ncjc1 2010-04-22
  • 打赏
  • 举报
回复
昨天在Win7上测试了一下,那上面加壳的程序可以dump,但是无法和代码联系起来定位错误位置!应该是加过壳的程序里面乱了!

请问有没有方法在加壳的程序中记录错误呢?因为程序到别人手中如果出错的话,我想记录错误的信息,然后发回来!
vincent_1011 2010-04-22
  • 打赏
  • 举报
回复
因为这些壳本身也用到这些SEH。个人意见
lsupper 2010-04-22
  • 打赏
  • 举报
回复
估计加壳后,dump不出来,加壳后,里面的节表什么的都变了,不是标准的了,windows就不能自动帮你dump了~~
ncjc1 2010-04-22
  • 打赏
  • 举报
回复
等待!
ncjc1 2010-04-21
  • 打赏
  • 举报
回复
顶!求助!

16,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

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