Appendix B
Watchdog Timer Programming
B-2
ni.com
•
lpInBuffer
(in) Long pointer to a buffer that contains the data required to perform
the operation. This parameter can be NULL if the
dwIoControlCode
parameter specifies an operation that does not require input data.
•
nInBufferSize
(in) Size, in bytes, of the buffer pointed to by
lpInBuffer
.
•
lpOutBuffer
(out) Long pointer to a buffer that receives the operation’s output data.
This parameter can be NULL if the
dwIoControlCode
parameter
specifies an operation that does not produce output data.
•
nOutBufferSize
(in) Size, in bytes, of the buffer pointed to by
lpOutBuffer
.
•
lpBytesReturned
(out) Long pointer to a variable that receives the size, in bytes,
of the data stored into the buffer pointed to by
lpOutBuffer
. The
lpBytesReturned
parameter cannot be NULL. Even when an
operation produces no output data, and
lpOutBuffer
can be
NULL, DeviceIoControl makes use of the variable pointed to by
lpBytesReturned
. After such an operation, the variable value has
no meaning.
•
lpOverlapped
(in) Ignored; set to NULL.
•
Return Values
Nonzero indicates success. Zero indicates failure. To get extended
error information, call GetLastError.
How to Use the Control Codes
There are six control codes for the WDT driver operation codes.
IOCTL _WDT_ENABLE
Enables the application watchdog timer. By default, if the watchdog timer
is enabled, the WDT driver automatically triggers itself after the specified
period, and your application does not need to trigger the watchdog timer.
•
lpInBuffer
: unused
•
nInBufferSize
: unused