Win32API ReadFile的问题

brightcloud 2007-12-04 02:36:41
我是用来做串口通信程序,所有的函数原型为:
::ReadFile(m_hCommHandle, pBuffer, dwBufferLength, &dwReadLength, &m_ReadOverlapped);
当给pBuffer传递Buffer(声明为char Buffer[1024])时程序运行正常,问题是我实在不想每次分配个大数组,进行如下改进:
char* pRecvBuffer = NULL; 然后将pRecvBuffer传递给pBuffer,查看COMSTAT可以看到有数据已进入缓冲区但
调用GetLastError一直出现ERROR_NOACCESS错误,自己分析是ReadFile不能自己实现动态空间分配,传递指针时无法检测到
足够的空间导致读取失败。用那么大的数组实在别扭请达人能指点迷津。
...全文
171 1 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
百分百好牛 2007-12-04
  • 打赏
  • 举报
回复
char Buffer[1024]
才1KB吧,很大么?
俺觉得不大。只是及时释放,没有啥关系吧。
如果你的程序运行环境很内存有很高要求,当俺没有说过吧。
:)

24,860

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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