Windows NT ( 2)



         

- 8


ovRead.OffsetHigh = 0;

ovRead.hEvent = NULL;

//

ovWrite.Offset = 0;

ovWrite.OffsetHigh = 0;

ovWrite.hEvent = NULL;

//

while(TRUE)

{

//

bResult = ReadFile(hSrcFile, cBuf, sizeof(cBuf),

&dwBytesRead, &ovRead);

//

if(!bResult)

{

// ,

switch (dwError = GetLastError())

{

//

//

case ERROR_HANDLE_EOF:

{

return;

}

//

case ERROR_IO_PENDING:

{

// ,

//

//

//

// IdleWork();

//

// ,

//

WaitForSingleObject(hSrcFile, INFINITE);

//

//

bResult = GetOverlappedResult(hSrcFile, &ovRead,

&dwBytesRead, FALSE);

if(!bResult)

{

switch (dwError = GetLastError())

{

//

//

case ERROR_HANDLE_EOF:

{

return;

}

default:

break;

}

}

}

default:

break;

}

}

//

//