IDirectMusicPort::DeviceIoControl

The IDirectMusicPort::DeviceIoControl method calls the Win32 DeviceIoControl function on the underlying file handle implementing the port.

HRESULT DeviceIoControl(
  DWORD dwIoControlCode, 
  LPVOID lpInBuffer, 
  DWORD nInBufferSize, 
  LPVOID lpOutBuffer, 
  DWORD nOutBufferSize, 
  LPDWORD lpBytesReturned, 
  LPOVERLAPPED lpOverlapped
);
 

Parameters

dwIoControlCode
Control code of operation to perform.
lpInBuffer
Buffer containing input data.
nInBufferSize
Size of input buffer.
lpOutBuffer
Buffer to receive output data.
nOutBufferSize
Size of output buffer
lpBytesReturned
Address of a variable to receive output byte count.
lpOverlapped
Overlapped structure for asynchronous operation.

Return Values

If the method succeeds, the return value is S_OK.

If it fails, the method may return one of the following error values:

E_POINTER
E_NOTIMPL

Remarks

This method is supported only on ports implemented by a Windows Driver Model (WDM) filter graph. In the case of a WDM filter graph, the file handle used will be the topmost pin in the graph.

DirectMusic reserves the right to refuse to perform defined kernel streaming operations on a pin which might collide with operations it is performing on the filter graph. User-defined operations, however, will never be blocked.

QuickInfo

  Windows NT/2000: Requires Windows 2000.
  Windows 95/98: Requires Windows 95 or later. Available as a redistributable for Windows 95.
  Header: Declared in dmusicc.h.