HOOK CreateFile

Tmx999 2004-05-08 03:47:13
为什么我hook CreateFile的时候得到的函数名总是 \ 或者 C
我用MessageBox显示CreateFileW中的参数LPCTSTR lpFileName,要么是 \ 要么是 C (CreateFileA 没有用)
郁闷,大家知道是为什么吗?是编码的问题?
...全文
104 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
Tmx999 2004-05-09
  • 打赏
  • 举报
回复
终于,终于可以了
是Unicode码
编译的时候没有设置UNICODE,_UNICODE
因此MessageBox在编译链接的时候用的MessageBoxA
只要把MessageBox强制换成MessageBoxW就可以正常显示了
谢谢 风哥
halk 2004-05-08
  • 打赏
  • 举报
回复
用 WCHAR类型的缓冲区接收文件名试试,返回的可能是Unicode字符串。
IsTextUnicode函数可以协助判断是不是Unicode字串。
halk 2004-05-08
  • 打赏
  • 举报
回复
请注意Unicode编码问题。

15,473

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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