GetOverlappedResult() call in overlay I/O
- From: "Angie" <kimojolin@xxxxxxxxx>
- Date: Tue, 15 Jan 2008 11:44:08 -0800
In the application, I tried to find out how many bytes was written by the
driver by calling GetOverlappedResult() API.
I do not know why this API alwaysreturn 0 in length. Before calliing
GetOverlappedResult(), the application does wait the following API
dwRet = WaitForMultipleObjects(2, h, FALSE, INFINITE);
Does anybody have such problem in calling GetOverlappedResult()?
-----------------------Get the number of bytes written by
driver ---------------------------------------------------------
DWORD
UVPNDriverHelper::GetReturnedBytes(HANDLE hEvent)
{
OVERLAPPED Overlapped;
DWORD NumberOfBytesTransferred;
memset(&Overlapped, 0, sizeof(OVERLAPPED));
Overlapped.hEvent=hEvent;
if (!GetOverlappedResult(m_hDevice, &Overlapped, &NumberOfBytesTransferred,
TRUE))
{
ERRORLOGLEVEL0(_T("GetOverlappedResult() fail
error=%x\n"),GetLastError());
return 0;
}
ERRORLOGLEVEL0(TEXT("GetReturnedBytes(): NumberOfBytesTransferred(%d)
error=%d!!!\n"),NumberOfBytesTransferred, GetLastError());
return NumberOfBytesTransferred;
}
.
- Follow-Ups:
- Re: GetOverlappedResult() call in overlay I/O
- From: Abhishek R [MSFT]
- Re: GetOverlappedResult() call in overlay I/O
- From: Maxim S. Shatskih
- Re: GetOverlappedResult() call in overlay I/O
- Prev by Date: Cancel-safe queu with multiple requested buffers.
- Next by Date: Re: Cancel-safe queu with multiple requested buffers.
- Previous by thread: Cancel-safe queu with multiple requested buffers.
- Next by thread: Re: GetOverlappedResult() call in overlay I/O
- Index(es):
Relevant Pages
|