---
name: "DeviceIoControl"
section: "3w"
platform: "linux"
package: "wine-doc"
version: "0.0.981018-1.1"
release: "Debian 2.1 (Slink)"
platforms: ["linux"]
url: "https://new.carta.tech/DeviceIoControl"
---

# DeviceIoControl(3w)

DeviceIoControl (KERNEL32.188)

## NAME

DeviceIoControl - DeviceIoControl (KERNEL32.188)

## SYNOPSIS

**BOOL32 DeviceIoControl**\
 **(**\
\
 	**HANDLE32 hDevice,**\
\
 	**DWORD dwIoControlCode,**\
\
 	**LPVOID lpvInBuffer,**\
\
 	**DWORD cbInBuffer,**\
\
 	**LPVOID lpvOutBuffer,**\
\
 	**DWORD cbOutBuffer,**\
\
 	**LPDWORD lpcbBytesReturned,**\
\
 	**LPOVERLAPPED lpOverlapped**\
 **);**

## DESCRIPTION

This is one of those big ugly nasty procedure which can do a million and one things when it comes to devices. It can also be used for VxD communication.

A return value of FALSE indicates that something has gone wrong which GetLastError can decypher.
