IOCTL_FARC_DEINIT

Description:
Deinitialize the the driver and ARCNET controller.
The execution of the IOCTL_FARC_DEINIT leads to the canceling of all pending ReadFile- and WriteFile-requests.

Parameters:

Parameter Type Description
Input
- - -
Output
- - -

Notes:

This function can take some time, before it succeeds. You should always wait for the successful return, before closing the driver handle!

Possible errors (see also Error codes):
E_FARC_INVALID_HANDLE

Example:
Note, that the following example is only a fragment. It is recommended, that the driver is opened in asynchronous mode and a handle to the driver is available.

OVERLAPPED overlapped; DWORD read, err; BOOL ret; overlapped.Offset = 0; overlapped.OffsetHigh = 0; overlapped.hEvent = CreateEvent(NULL, TRUE, FALSE, NULL); ... ret = DeviceIoControl(drvhandle, IOCTL_FARC_DEINIT, NULL, 0, NULL, 0, &read, &overlapped); if (!ret) { err = GetLastError(); if (err == E_FARC_PENDING) { ret = GetOverlappedResult(drvhandle, &overlapped, &read, TRUE); if (!ret) { err = GetLastError(); // do errorhandling here } else { // Now you can do a CloseHandle } } else { // other error occured, perhaps wrong handle } } ...

See also:
DeviceIoControl()
ReadFile()
WriteFile()
IOCTL_FARC_INIT

Back to Programming Guide Contact Copyright and Disclaimer