Chinaunix首页 | 论坛 | 博客
  • 博客访问: 929162
  • 博文数量: 201
  • 博客积分: 8078
  • 博客等级: 中将
  • 技术积分: 2162
  • 用 户 组: 普通用户
  • 注册时间: 2008-05-20 17:22
文章分类

全部博文(201)

文章存档

2013年(3)

2012年(11)

2011年(34)

2010年(25)

2009年(51)

2008年(77)

分类: WINDOWS

2010-11-25 20:56:47

在写 XMPP Client的时候,调用 GetDlgItemTextW/GetWindowTextW 发现老是不对,压根拿不到值,而错误码却是0(一些系统能正常工作), 但是GetDlgItemTextA/GetWindowTextA却正常。偶然的机会,发现又无意中修正了这个问题。最终发现原因是最后的参数传了字节数进去。而内存块比较大。
估计是由于函数检查到操作的内存页无效,所有罢工了。所以有以下现象:
1、小于一个页面的buffer应该没有这个问题。
2、在buffer后在定义相同的buffer应该也不会有这个问题(因为内存页有效,只是逻辑有问题,后面定义的变量有可能被覆盖,造成buffer溢出)。

阅读(764) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~