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不能自己实现动态空间分配,传递指针时无法检测到
足够的空间导致读取失败。用那么大的数组实在别扭请达人能指点迷津。
...全文
124 点赞 收藏 1
写回复
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
百分百好牛 2007-12-04
char Buffer[1024]
才1KB吧,很大么?
俺觉得不大。只是及时释放,没有啥关系吧。
如果你的程序运行环境很内存有很高要求,当俺没有说过吧。
:)

回复
发动态
发帖子
工具平台和程序库
创建于2007-09-28

2.4w+

社区成员

C/C++ 工具平台和程序库
申请成为版主
社区公告
暂无公告