win32事件调用不在winxp上工作但在win7上工作

时间:2013-05-02 21:02:55

标签: c++ winapi

我有一个管理com端口设备(条形码扫描器)的c ++服务。它能够很好地从com端口读取,并且一直在努力实现写入功能,以便向扫描器发送命令,请求它捕获图像。

我发布了32位版本,它在Windows 7 64位上工作得很好。我最近试图在Windows XP机器上测试完全相同的构建,但它无法写入com端口。

我发现错误是我的SetEvent(m_writeReady)返回true,但是没有设置事件(至少等待没有释放线程)。

m_writeReady = CreateEventW(NULL, TRUE, FALSE, NULL);
...
const HANDLE handles[7] =
{
    ...
    m_writeReady
};
...
WaitForMultipleObjects(sizeof(handles) / sizeof(HANDLE), handles, FALSE, INFINITE);

并在另一个帖子中

SetEvent(m_writeReady);

什么会导致WaitForMultipleObjects在winxp上运行得不错时在winxp上没有解锁?

0 个答案:

没有答案