Robert Shearman wrote:
Andrey Turkin wrote:
/******************************************************************************
BindIoCompletionCallback (KERNEL32.@)
*/ +extern NTSTATUS WINAPI RtlSetIoCompletionCallback(HANDLE,LPOVERLAPPED_COMPLETION_ROUTINE,ULONG);
This should go in winternl.h.
winternl.h may not depend on winbase.h for some reason, so this would mean either changing prototype to "(HANDLE,LPVOID,ULONG)", which seems wrong, or redefining LPOVERLAPPED_COMPLETION_ROUTINE and OVERLAPPED/LPOVERLAPPED, which seems to be too much duplication.
BOOL WINAPI BindIoCompletionCallback( HANDLE FileHandle, LPOVERLAPPED_COMPLETION_ROUTINE Function, ULONG Flags) {
- FIXME("%p, %p, %d, stub!\n", FileHandle, Function, Flags);
- SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
- NTSTATUS status;
- TRACE("(%p, %p, %d)\n", FileHandle, Function, Flags);
- status = RtlSetIoCompletionCallback( FileHandle, Function, Flags );
- if (status == STATUS_SUCCESS) return TRUE;
- SetLastError( RtlNtStatusToDosError(status) ); return FALSE;
}