私のアプリケーションでは、p/invoke を使用して WaitForSingleObject を呼び出します。
[DllImport("kernel32.dll", SetLastError=true)]
static extern UInt32 WaitForSingleObject(IntPtr hHandle, UInt32 dwMilliseconds);
その後、イベントが登録され、
uint res = WaitForSingleObject(eventHandle, 0xFFFFFFFF);
if (res == 0x00000000)
{...}
アプリケーションは Windows XP 32 ビットでは問題なく動作しますが、Windows 7 64 ビットなどのシステムでは値を返しません。64ビットシステムでこれが起こる理由を誰か知っていますか?