Данная функция используется для передачи команд устройствам, а точнее не им, а их виртуальным драйверам. Подробнее читайте "Шаг 151 - Что такое VXD". Для того, чтобы использовать ее нужен дескриптор VXD файла о том, как его получить читайте "Шаг 165 - Что такое Visual Assist". Сама функция имеет следующий вид:
BOOL DeviceIoControl ( HANDLE hDevice, // дескриптор устройства DWORD dwIoControlCode, // код операции LPVOID lpInBuffer, // буфер входных данных DWORD nInBufferSize, // размер буфера входных данных LPVOID lpOutBuffer, // буфер данных результата DWORD nOutBufferSize, // размер буфера результата LPDWORD lpBytesReturned, // адрес данных для вывода LPOVERLAPPED lpOverlapped // адрес перекрывающей структуры );
При успешном выполнении функция вернет ненулевое значение.