首页
社区
课程
招聘
[求助]为何这个hook老发生异常?
发表于: 2008-1-12 12:21 3919

[求助]为何这个hook老发生异常?

2008-1-12 12:21
3919
当在程序某个模块iat里面安装了下面这个函数时,调用原来的那个老是发生异常,不知是什么原因?

int __stdcall Mine_WideCharToMultiByte (
                                                                                   UINT CodePage,            // code page
                                                                                   DWORD dwFlags,            // performance and mapping flags
                                                                                   LPCWSTR lpWideCharStr,    // wide-character string
                                                                                   int cchWideChar,          // number of chars in string.
                                                                                   LPSTR lpMultiByteStr,     // buffer for new string
                                                                                   int cbMultiByte,          // size of buffer
                                                                                   LPCSTR lpDefaultChar,     // default for unmappable chars
                                                                                   LPBOOL lpUsedDefaultChar  // set when default char used
)
{
        int rv;

        __try
        {

         rv =Real_WideCharToMultiByte(CodePage,dwFlags,lpWideCharStr,cchWideChar,lpMultiByteStr,cbMultiByte,lpDefaultChar,lpUsedDefaultChar);

        }
        __finally
        {
                AfxMessageBox("这个常会调用,上面的参数都没改过,为什么还会异常?");

        }
return rv

}

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (2)
雪    币: 266
活跃值: (60)
能力值: ( LV9,RANK:290 )
在线值:
发帖
回帖
粉丝
2
__finally
  {
    AfxMessageBox("这个常会调用,上面的参数都没改过,为什么还会异常?");

  }
finally是无论如何都会发生的,你应该要用 __except。
2008-1-13 09:32
0
雪    币: 206
活跃值: (43)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
呵呵,我以为是try里面发生异常才会跳到final去执行的呢!谢谢!
2008-1-13 14:03
0
游客
登录 | 注册 方可回帖
返回
//