Windows Driver Framework (WDF)

Overview of the Windows Driver Framework technology.

To develop Windows Driver Framework, you need these headers:

For the programming guide, see Windows Driver Framework.

Enumerations

 
DEVICE_POWER_STATE

The DEVICE_POWER_STATE enumeration identifies the device power states that a device can enter.
POWER_ACTION

Learn how the POWER_ACTION enumeration identifies the system power actions that can occur on a computer.
SECURITY_IMPERSONATION_LEVEL

The SECURITY_IMPERSONATION_LEVEL enumeration contains values that identify security impersonation levels.
WDF_CALLBACK_CONSTRAINT

WDF_CALLBACK_CONSTRAINT enumeration
WDF_CHILD_LIST_RETRIEVE_DEVICE_STATUS

The WDF_CHILD_LIST_RETRIEVE_DEVICE_STATUS enumeration defines device status values that the framework stores in a driver's WDF_CHILD_RETRIEVE_INFO structure.
WDF_DEVICE_FAILED_ACTION

The WDF_DEVICE_FAILED_ACTION enumeration identifies the action that the framework will take when a driver reports an unrecoverable software or hardware failure.
WDF_DEVICE_HWACCESS_TARGET_SIZE

This enumeration is used internally by the framework. Do not use. This enumeration is defined in wdfdevice.h.
WDF_DEVICE_HWACCESS_TARGET_SIZE

This enumeration is used internally by the framework. Do not use. This enumeration is defined in wudfddi_types.h.
WDF_DEVICE_HWACCESS_TARGET_TYPE

Learn how the WDF_DEVICE_HWACCESS_TARGET_SIZE enumeration is used internally by the framework. Do not use. This enumeration is defined in wdfdevice.h.
WDF_DEVICE_HWACCESS_TARGET_TYPE

Learn how the WDF_DEVICE_HWACCESS_TARGET_SIZE enumeration is used internally by the framework. Do not use. This enumeration is defined in wudfddi_types.h.
WDF_DEVICE_IO_BUFFER_RETRIEVAL

The WDF_DEVICE_IO_BUFFER_RETRIEVAL enumeration is used to specify when UMDF makes an I/O request's buffers available to the driver.
WDF_DEVICE_IO_TYPE

The WDF_DEVICE_IO_TYPE enumeration is used to specify a method for accessing data buffers.
WDF_DEVICE_IO_TYPE

Learn that the WDF_DEVICE_IO_TYPE enumeration is used to specify a method for accessing data buffers.
WDF_DEVICE_PNP_STATE

The WDF_DEVICE_PNP_STATE enumeration identifies all of the states that the framework's Plug and Play state machine can enter.
WDF_DEVICE_POWER_POLICY_STATE

The WDF_DEVICE_POWER_POLICY_STATE enumeration identifies all of the states that the framework's power policy state machine can enter.
WDF_DEVICE_POWER_STATE

The WDF_DEVICE_POWER_STATE enumeration identifies all of the states that the framework's power state machine can enter.
WDF_DEVICE_SHUTDOWN_FLAGS

The WDF_DEVICE_SHUTDOWN_FLAGS enumeration defines flags that identify types of shutdown notifications that a driver can receive.
WDF_DISPATCH_IRP_TO_IO_QUEUE_FLAGS

The WDF_DISPATCH_IRP_TO_IO_QUEUE_FLAGS enumeration type defines flags that the driver can specify when it calls WdfDeviceWdmDispatchIrpToIoQueue.
WDF_DMA_DIRECTION

The WDF_DMA_DIRECTION enumeration defines the direction of a DMA transfer.
WDF_DMA_ENABLER_CONFIG_FLAGS

The WDF_DMA_ENABLER_CONFIG_FLAGS enumeration type defines flags that are used in a driver's WDF_DMA_ENABLER_CONFIG structure.
WDF_DMA_PROFILE

The WDF_DMA_PROFILE enumeration identifies the types of bus-master or system-mode DMA operations that devices can support.
WDF_DRIVER_INIT_FLAGS

The WDF_DRIVER_INIT_FLAGS enumeration specifies driver initialization flags.
WDF_EVENT_TYPE

The WDF_EVENT_TYPE enumeration specifies.
WDF_EVENT_TYPE

Learn how the WDF_EVENT_TYPE enumeration specifies types of events about which a driver can notify a registered application.
WDF_EXECUTION_LEVEL

The WDF_EXECUTION_LEVEL enumeration type specifies the maximum IRQL at which the framework will call the event callback functions that a driver has supplied for a framework object.
WDF_FILE_INFORMATION_CLASS

The WDF_FILE_INFORMATION_CLASS enumeration identifies the types of file information that a driver can obtain or set.
WDF_FILE_INFORMATION_CLASS

Learn how the WDF_FILE_INFORMATION_CLASS enumeration identifies the types of file information that a driver can obtain or set.
WDF_FILEOBJECT_CLASS

The WDF_FILEOBJECT_CLASS enumeration defines values that identify whether a driver requires a framework file object to represent a file that an application or another driver is attempting to create or open.
WDF_INTERRUPT_POLARITY

The WDF_INTERRUPT_POLARITY enumeration type is used to specify an interrupt signal's polarity.
WDF_INTERRUPT_POLARITY

Learn how the WDF_INTERRUPT_POLARITY enumeration type is used to specify an interrupt signal's polarity.
WDF_INTERRUPT_POLICY

The WDF_INTERRUPT_POLICY enumeration type identifies the affinity policies that the PnP manager can use when it assigns a device's interrupts to the processors of a multiprocessor system.
WDF_INTERRUPT_POLICY

Learn how the WDF_INTERRUPT_POLICY enumeration type identifies the affinity policies that the PnP manager can use when it assigns a device's interrupts to the processors of a multiprocessor system.
WDF_INTERRUPT_POLICY

The WDF_INTERRUPT_POLICY enumeration type identifies the affinity policies that the Plug and Play (PnP) manager can use when it assigns a device's interrupts to the processors of a multiprocessor system.
WDF_INTERRUPT_PRIORITY

Learn how the WDF_INTERRUPT_PRIORITY enumeration type identifies relative priorities for device interrupts.
WDF_INTERRUPT_PRIORITY

This enumeration type identifies relative priorities for device interrupts.
WDF_INTERRUPT_PRIORITY

Learn how this enumeration type identifies relative priorities for device interrupts.
WDF_IO_FORWARD_PROGRESS_ACTION

The WDF_IO_FORWARD_PROGRESS_ACTION enumeration identifies actions that the framework can take for an I/O request packet (IRP) that your driver examines during a low-memory situation.
WDF_IO_FORWARD_PROGRESS_RESERVED_POLICY

The WDF_IO_FORWARD_PROGRESS_RESERVED_POLICY enumeration identifies actions that the framework can take when it receives an I/O request for your driver, if a low-memory situation exists.
WDF_IO_QUEUE_DISPATCH_TYPE

The WDF_IO_QUEUE_DISPATCH_TYPE enumeration type identifies the request dispatching methods that can be associated with a framework queue object.
WDF_IO_QUEUE_DISPATCH_TYPE

The WDF_IO_QUEUE_DISPATCH_TYPE enumeration contains values that identify how a driver must receive requests from an I/O queue.
WDF_IO_QUEUE_STATE

The WDF_IO_QUEUE_STATE enumeration type identifies the status of a framework queue object. The enumerators are used as bit masks.
WDF_IO_QUEUE_STATE

The WDF_IO_QUEUE_STATE enumeration contains values that identify the state of an I/O queue.
WDF_IO_TARGET_OPEN_TYPE

The WDF_IO_TARGET_OPEN_TYPE enumeration specifies how a driver identifies a remote I/O target when the driver calls WdfIoTargetOpen.
WDF_IO_TARGET_PURGE_IO_ACTION

The WDF_IO_TARGET_PURGE_IO_ACTION enumeration identifies the actions that the framework can take when a driver calls WdfIoTargetPurge to purge an I/O target.
WDF_IO_TARGET_SENT_IO_ACTION

The WDF_IO_TARGET_SENT_IO_ACTION enumeration identifies the actions that the framework can take when a driver calls WdfIoTargetStop to stop an I/O target.
WDF_IO_TARGET_SENT_IO_ACTION

The WDF_IO_TARGET_SENT_IO_ACTION enumeration identifies the actions that the framework can take when a driver calls IWDFIoTargetStateManagement::Stop or IWDFRemoteTarget::Stop to stop an I/O target.
WDF_IO_TARGET_STATE

The WDF_IO_TARGET_STATE enumeration specifies the states that an I/O target can be in.
WDF_IO_TARGET_STATE

Learn how the WDF_IO_TARGET_STATE enumeration specifies the states that an I/O target can be in.
WDF_KPROCESSOR_MODE

The WDF_KPROCESSOR_MODE enumeration type identifies the processor modes in which a thread can execute.
WDF_MEMORY_DESCRIPTOR_TYPE

The WDF_MEMORY_DESCRIPTOR_TYPE enumeration identifies the types of memory descriptions that a WDF_MEMORY_DESCRIPTOR structure can specify.
WDF_PNP_CAPABILITY

The WDF_PNP_CAPABILITY enumeration contains values that identify Plug and Play (PnP) capabilities for a device.
WDF_PNP_STATE

The WDF_PNP_STATE enumeration contains values that identify the status of Plug and Play (PnP) for a device.
WDF_POWER_DEVICE_STATE

The WDF_POWER_DEVICE_STATE enumeration identifies the device power states that a device might support.
WDF_POWER_DEVICE_STATE

The WDF_POWER_DEVICE_STATE enumeration contains values that identify the power state that a device might support.
WDF_POWER_POLICY_IDLE_TIMEOUT_CONSTANTS

The WDF_POWER_POLICY_IDLE_TIMEOUT_CONSTANTS enumeration is reserved for internal use.
WDF_POWER_POLICY_IDLE_TIMEOUT_CONSTANTS

This article describes the WDF_POWER_POLICY_IDLE_TIMEOUT_CONSTANTS enumeration.
WDF_POWER_POLICY_IDLE_TIMEOUT_TYPE

The WDF_POWER_POLICY_IDLE_TIMEOUT_TYPE enumeration identifies how the idle timeout for a device is determined.
WDF_POWER_POLICY_S0_IDLE_CAPABILITIES

The WDF_POWER_POLICY_S0_IDLE_CAPABILITIES enumeration identifies the capabilities that a device can support when it enters a low-power state while it is idling.
WDF_POWER_POLICY_S0_IDLE_CAPABILITIES

Learn how the WDF_POWER_POLICY_S0_IDLE_CAPABILITIES enumeration identifies the capabilities that a device can support when it enters a low-power state while it is idling.
WDF_POWER_POLICY_S0_IDLE_USER_CONTROL

The WDF_POWER_POLICY_S0_IDLE_USER_CONTROL enumeration identifies whether a user can control a device's behavior when the device is idle and the system is in its working (S0) state.
WDF_POWER_POLICY_S0_IDLE_USER_CONTROL

Learn how the WDF_POWER_POLICY_S0_IDLE_USER_CONTROL enumeration identifies whether a user can control a device's behavior when the device is idle and the system is in its working (S0) state.
WDF_POWER_POLICY_SX_WAKE_USER_CONTROL

The WDF_POWER_POLICY_SX_WAKE_USER_CONTROL enumeration identifies whether a user can control a device's ability to wake the system from a low system power state.
WDF_POWER_POLICY_SX_WAKE_USER_CONTROL

Learn how the WDF_POWER_POLICY_SX_WAKE_USER_CONTROL enumeration identifies whether a user can control a device's ability to wake the system from a low system power state.
WDF_PROPERTY_STORE_DISPOSITION

The WDF_PROPERTY_STORE_DISPOSITION enumeration contains values that indicate whether a registry value was created or already existed when a driver obtained a property store interface.
WDF_PROPERTY_STORE_RETRIEVE_FLAGS

The WDF_PROPERTY_STORE_RETRIEVE_FLAGS enumeration contains values that indicate whether UMDF should create a registry key if the key does not already exist.
WDF_PROPERTY_STORE_ROOT_CLASS

The WDF_PROPERTY_STORE_ROOT_CLASS enumeration identifies the registry keys that UMDF property stores represent.
WDF_RELEASE_HARDWARE_ORDER_ON_FAILURE

The WDF_RELEASE_HARDWARE_ORDER_ON_FAILURE enumeration specifies when the framework calls a driver's EvtDeviceReleaseHardware callback function.
WDF_REMOVE_LOCK_OPTIONS_FLAGS

The WDF_REMOVE_LOCK_OPTIONS_FLAGS enumeration type defines flags that are used in a driver's WDF_REMOVE_LOCK_OPTIONS structure.
WDF_REQUEST_FORWARD_OPTIONS_FLAGS

The WDF_REQUEST_FORWARD_OPTIONS_FLAGS enumeration type defines flags that are used in a driver's WDF_REQUEST_FORWARD_OPTIONS structure.
WDF_REQUEST_REUSE_FLAGS

The WDF_REQUEST_REUSE_FLAGS enumeration type defines flags that are used in a driver's WDF_REQUEST_REUSE_PARAMS structure.
WDF_REQUEST_SEND_OPTIONS_FLAGS

The WDF_REQUEST_SEND_OPTIONS_FLAGS enumeration type defines flags that are used in a driver's WDF_REQUEST_SEND_OPTIONS structure.
WDF_REQUEST_SEND_OPTIONS_FLAGS

The WDF_REQUEST_SEND_OPTIONS_FLAGS enumeration type defines flags that a driver can specify when it calls IWDFIoRequest::Send.
WDF_REQUEST_STOP_ACTION_FLAGS

The WDF_REQUEST_STOP_ACTION_FLAGS enumeration type defines flags that the framework passes to a driver's EvtIoStop callback function.
WDF_REQUEST_STOP_ACTION_FLAGS

The WDF_REQUEST_STOP_ACTION_FLAGS enumeration contains values that identify the state of a stop action request in a call to the driver's IQueueCallbackIoStop::OnIoStop method.
WDF_REQUEST_TYPE

The WDF_REQUEST_TYPE enumeration type identifies types of requests that a framework request object might contain.
WDF_REQUEST_TYPE

The WDF_REQUEST_TYPE enumeration identifies the types of I/O requests that a UMDF request object can represent.
WDF_RETRIEVE_CHILD_FLAGS

The WDF_RETRIEVE_CHILD_FLAGS enumeration defines flags that a driver can set before calling WdfChildListBeginIteration.
WDF_SPECIAL_FILE_TYPE

The WDF_SPECIAL_FILE_TYPE enumeration identifies special file types that a device can support.
WDF_STATE_NOTIFICATION_TYPE

The WDF_STATE_NOTIFICATION_TYPE enumeration identifies the type of Plug and Play, power, or power policy notification that a framework-based driver will receive.
WDF_SYNCHRONIZATION_SCOPE

The WDF_SYNCHRONIZATION_SCOPE enumeration type specifies how the framework will synchronize execution of an object's event callback functions.
WDF_TASK_QUEUE_DISPATCH_TYPE

This WDF_TASK_QUEUE_DISPATCH_TYPE article is for internal use only.
WDF_TASK_SEND_OPTIONS_FLAGS

This WDF_TASK_SEND_OPTIONS_FLAGS article is for internal use only.
WDF_TRI_STATE

The WDF_TRI_STATE enumeration type defines three values that the framework uses for some structure members and function parameters.
WDF_TRI_STATE

Learn how the WDF_TRI_STATE enumeration type defines three values that the framework uses for some structure members and function parameters.
WDF_USB_BMREQUEST_DIRECTION

The WDF_USB_BMREQUEST_DIRECTION enumeration identifies the data transfer direction for a USB control transfer.
WDF_USB_BMREQUEST_RECIPIENT

The WDF_USB_BMREQUEST_RECIPIENT enumeration identifies the data transfer recipient for a USB control transfer.
WDF_USB_BMREQUEST_TYPE

The WDF_USB_BMREQUEST_TYPE enumeration identifies the data transfer type for a USB control transfer.
WDF_USB_DEVICE_TRAITS

The WDF_USB_DEVICE_TRAITS enumeration identifies USB device traits.
WDF_USB_PIPE_TYPE

The WDF_USB_PIPE_TYPE enumeration identifies the types of USB pipes.
WDF_USB_REQUEST_TYPE

The WDF_USB_REQUEST_TYPE enumeration identifies the types of USB requests that a framework-based driver can send to a USB I/O target.
WDF_USB_REQUEST_TYPE

The WDF_USB_REQUEST_TYPE enumeration contains values that identify a type of USB request object.
WDF_WMI_PROVIDER_CONTROL

The WDF_WMI_PROVIDER_CONTROL enumeration defines the type of control functions that a WMI data provider can support.
WDF_WMI_PROVIDER_FLAGS

The WDF_WMI_PROVIDER_FLAGS enumeration defines configuration flags for a driver's WMI data provider.
WdfUsbTargetDeviceSelectConfigType

The WdfUsbTargetDeviceSelectConfigType enumeration defines types of configuration operations for USB devices.
WdfUsbTargetDeviceSelectSettingType

The WdfUsbTargetDeviceSelectSettingType enumeration defines techniques for specifying an alternate setting for a USB interface.

Functions

 
Abort

The Abort method aborts all pending transfers on a USB pipe.
AcquireInterruptLock

The AcquireInterruptLock method begins a code sequence that executes while holding an interrupt object's lock.
AcquireLock

The AcquireLock method prevents the framework from calling methods of interfaces that a driver registered.
AssignContext

The AssignContext method registers a context and a driver-supplied cleanup callback function for the object.
AssignDeviceInterfaceState

The AssignDeviceInterfaceState method enables or disables the specified device interface instance for a device.
AssignS0IdleSettings

The AssignS0IdleSettings method provides driver-supplied information that the framework uses when a device is idle and the system is in its working (S0) state.
AssignS0IdleSettingsEx

The AssignS0IdleSettingsEx method provides driver-supplied information that the framework uses when a device is idle and the system is in its working (S0) state.
AssignSxWakeSettings

The AssignSxWakeSettings method provides driver-supplied information about a device's ability to trigger a wake signal while both the device and the system are in a low-power state.
AutoForwardCreateCleanupClose

The AutoForwardCreateCleanupClose method controls when create, cleanup, and close notifications are forwarded to the next lower driver in the device stack.
CancelSentRequest

The CancelSentRequest method attempts to cancel the I/O request that the driver previously submitted to an I/O target.
CancelSentRequestsForFile

The CancelSentRequestsForFile method cancels all I/O requests that have been sent on behalf of the specified file object.
Close

The Close method closes an instance of a UMDF driver-created-file object that was created by calling the IWDFDevice::CreateWdfFile method.
Close

The Close method closes a remote I/O target.
CloseForQueryRemove

The CloseForQueryRemove method closes a remote I/O target because the operating system might allow the device to be removed.
CommitPnpState

The CommitPnpState method commits the state of the Plug and Play (PnP) property (that is, turns on, turns off, or sets to the default state) that the IWDFDevice::SetPnpState method set.
Complete

The Complete method completes an I/O request.
CompleteWithInformation

The CompleteWithInformation method completes a request with the supplied information.
ConfigureContinuousReader

The ConfigureContinuousReader method configures the framework to continuously read from a USB pipe.
ConfigureRequestDispatching

The ConfigureRequestDispatching method configures the queuing of I/O requests of the specified type to the specified I/O queue.
ConfigureRequestDispatching

The ConfigureRequestDispatching method configures the queuing of I/O requests of the given type.
CopyFromBuffer

The CopyFromBuffer method safely copies data from the specified source buffer to a memory object.
CopyFromMemory

The CopyFromMemory method safely copies data from the specified source buffer and prevents overruns that the copy operation might otherwise cause.
CopyToBuffer

The CopyToBuffer method safely copies data from a memory object to the specified target buffer.
CreateDevice

The CreateDevice method configures and creates a new framework device object.
CreateDeviceInterface

The CreateDeviceInterface method creates an instance of a device interface class.
CreateFileHandleTarget

The CreateFileHandleTarget method creates a file-handle-based I/O target object.
CreateInterrupt

The CreateInterrupt method creates a framework interrupt object.
CreateIoQueue

The CreateIoQueue method configures the default I/O queue that is associated with a device or creates a secondary I/O queue for the device.
CreatePreallocatedWdfMemory

The CreatePreallocatedWdfMemory method creates a framework memory object for the specified buffer.
CreateRemoteInterface

The CreateRemoteInterface method creates a remote interface object that represents a device interface.
CreateRemoteTarget

The CreateRemoteTarget method creates a remote target object that represents a remote I/O target.
CreateRequest

The CreateRequest method creates an unformatted request object.
CreateSymbolicLink

The CreateSymbolicLink method creates a symbolic link for the device.
CreateSymbolicLinkWithReferenceString

TheCreateSymbolicLinkWithReferenceString method creates a symbolic link name, and optionally, a reference string, for a device.
CreateUsbTargetDevice

The CreateUsbTargetDevice method creates a USB device object that is also an I/O target.
CreateWdfFile

The CreateWdfFile method creates a file object for a driver to use.
CreateWdfMemory

The CreateWdfMemory method creates a framework memory object and allocates, for the memory object, a data buffer of the specified nonzero size.
CreateWdfObject

The CreateWdfObject method creates a custom (or user) WDF object from a parent WDF object.
CreateWorkItem

The CreateWorkItem method creates a framework work-item object, which can subsequently be added to the framework’s work-item queue.
DeleteNamedValue

The DeleteNamedValue method deletes a value name from the registry.
DeleteWdfObject

The DeleteWdfObject method deletes a previously created Microsoft Windows Driver Frameworks (WDF) object.
Disable

The Disable method disables a specified device interrupt by calling the driver's OnInterruptDisable callback function.
Drain

The Drain method directs the queue to reject new incoming I/O requests and allow already-queued requests to be delivered to the driver for processing.
DrainSynchronously

The DrainSynchronously method directs the queue to reject new incoming I/O requests and allows already-queued requests to be delivered to the driver for processing. This method returns after all requests are completed or canceled.
Enable

The Enable method enables a specified device interrupt by calling the driver's OnInterruptEnable callback function.
Enqueue

The Enqueue method adds this interface's framework work-item object to the system's work-item queue.
EVT_WDF_CHILD_LIST_ADDRESS_DESCRIPTION_CLEANUP

A driver's EvtChildListAddressDescriptionCleanup event callback function frees any memory allocations for an address description that the driver's EvtChildListAddressDescriptionDuplicate callback function allocated.
EVT_WDF_CHILD_LIST_ADDRESS_DESCRIPTION_COPY

A driver's EvtChildListAddressDescriptionCopy event callback function copies a child address description from one specified location to another.
EVT_WDF_CHILD_LIST_ADDRESS_DESCRIPTION_DUPLICATE

A driver's EvtChildListAddressDescriptionDuplicate event callback function duplicates a child address description.
EVT_WDF_CHILD_LIST_CREATE_DEVICE

A bus driver'sEvtChildListCreateDevice event callback function creates a framework device object for a new device that has been dynamically enumerated.
EVT_WDF_CHILD_LIST_DEVICE_REENUMERATED

A driver's EvtChildListDeviceReenumerated event callback function enables the driver to approve or cancel a reenumeration of a specified device.
EVT_WDF_CHILD_LIST_IDENTIFICATION_DESCRIPTION_CLEANUP

A driver's EvtChildListIdentificationDescriptionCleanup event callback function frees any memory allocations for an identification description that the driver's EvtChildListIdentificationDescriptionDuplicate callback function allocated.
EVT_WDF_CHILD_LIST_IDENTIFICATION_DESCRIPTION_COMPARE

A driver's EvtChildListIdentificationDescriptionCompare event callback function compares one child identification description with another.
EVT_WDF_CHILD_LIST_IDENTIFICATION_DESCRIPTION_COPY

A driver's EvtChildListIdentificationDescriptionCopy event callback function copies a child identification description from one specified location to another.
EVT_WDF_CHILD_LIST_IDENTIFICATION_DESCRIPTION_DUPLICATE

A driver's EvtChildListIdentificationDescriptionDuplicate event callback function duplicates a child identification description.
EVT_WDF_CHILD_LIST_SCAN_FOR_CHILDREN

A driver's EvtChildListScanForChildren event callback function must report all of the child devices that are present.
EVT_WDF_COMPANION_POST_D0_EXIT

This EVT_WDF_COMPANION_POST_D0_EXIT article is for internal use only.
EVT_WDF_COMPANION_POST_RELEASE_HARDWARE

This EVT_WDF_COMPANION_POST_RELEASE_HARDWARE article is for internal use only.
EVT_WDF_COMPANION_PRE_D0_ENTRY

This EVT_WDF_COMPANION_PRE_D0_ENTRY article is for internal use only.
EVT_WDF_COMPANION_PRE_PREPARE_HARDWARE

This EVT_WDF_COMPANION_PRE_PREPARE_HARDWARE article is for internal use only.
EVT_WDF_DEVICE_ARM_WAKE_FROM_S0

A driver's EvtDeviceArmWakeFromS0 event callback function arms (that is, enables) a device so that it can trigger a wake signal while in a low-power device state, if the system remains in the system working state (S0).
EVT_WDF_DEVICE_ARM_WAKE_FROM_SX

A driver's EvtDeviceArmWakeFromSx event callback function arms (that is, enables) a device so that it can trigger a wake signal while in a low-power device state.
EVT_WDF_DEVICE_ARM_WAKE_FROM_SX_WITH_REASON

A driver's EvtDeviceArmWakeFromSxWithReason event callback function arms (that is, enables) a device so that it can trigger a wake signal while in a low-power device state.
EVT_WDF_DEVICE_D0_ENTRY

A driver's EvtDeviceD0Entry event callback function performs operations that are needed when the driver's device enters the D0 power state.
EVT_WDF_DEVICE_D0_ENTRY_POST_HARDWARE_ENABLED

Learn more about: EVT_WDF_DEVICE_D0_ENTRY_POST_HARDWARE_ENABLED
EVT_WDF_DEVICE_D0_ENTRY_POST_INTERRUPTS_ENABLED

A driver's EvtDeviceD0EntryPostInterruptsEnabled event callback function performs device-specific operations that are required after the driver has enabled the device's hardware interrupts.
EVT_WDF_DEVICE_D0_EXIT

A driver's EvtDeviceD0Exit event callback function performs operations that are needed when the driver's device leaves the D0 power state.
EVT_WDF_DEVICE_D0_EXIT_PRE_HARDWARE_DISABLED

Learn more about: EVT_WDF_DEVICE_D0_EXIT_PRE_HARDWARE_DISABLED
EVT_WDF_DEVICE_D0_EXIT_PRE_INTERRUPTS_DISABLED

A driver's EvtDeviceD0ExitPreInterruptsDisabled event callback function performs device-specific operations that are required before the driver disables the device's hardware interrupts.
EVT_WDF_DEVICE_DISABLE_WAKE_AT_BUS

A bus driver's EvtDeviceDisableWakeAtBus event callback function performs bus-level operations that disable the ability of one of the bus's devices to trigger a wake-up signal on the bus.
EVT_WDF_DEVICE_DISARM_WAKE_FROM_S0

A driver's EvtDeviceDisarmWakeFromS0 event callback function disarms (that is, disables) a device's ability to trigger a wake signal while in a low-power device state, if the system remains in the system working state (S0).
EVT_WDF_DEVICE_DISARM_WAKE_FROM_SX

A driver's EvtDeviceDisarmWakeFromSx event callback function disarms (that is, disables) a device's ability to trigger a wake signal while the device and system are in low-power states.
EVT_WDF_DEVICE_EJECT

A driver's EvtDeviceEject event callback function handles operations that are necessary to eject a device from its docking station.
EVT_WDF_DEVICE_ENABLE_WAKE_AT_BUS

A bus driver's EvtDeviceEnableWakeAtBus event callback function performs bus-level operations that enable one of the bus's devices to trigger a wake-up signal on the bus.
EVT_WDF_DEVICE_FILE_CREATE

A driver's EvtDeviceFileCreate callback function handles operations that must be performed when an application requests access to a device.
EVT_WDF_DEVICE_FILTER_RESOURCE_REQUIREMENTS

A driver's EvtDeviceFilterAddResourceRequirements event callback function can add resources to a set of hardware resource requirements before the system assigns resources to a device.
EVT_WDF_DEVICE_PNP_STATE_CHANGE_NOTIFICATION

A driver's EvtDevicePnpStateChange event callback function informs the driver that a device's Plug and Play (PnP) state machine is moving from one state to another.
EVT_WDF_DEVICE_POWER_POLICY_STATE_CHANGE_NOTIFICATION

A driver's EvtDevicePowerPolicyStateChange event callback function informs the driver that a device's power policy state machine is moving from one state to another.
EVT_WDF_DEVICE_POWER_STATE_CHANGE_NOTIFICATION

A driver's EvtDevicePowerStateChange event callback function informs the driver that a device's power state machine is moving from one state to another.
EVT_WDF_DEVICE_PREPARE_HARDWARE

A driver's EvtDevicePrepareHardware event callback function performs any operations that are needed to make a device accessible to the driver.
EVT_WDF_DEVICE_PROCESS_QUERY_INTERFACE_REQUEST

A driver's EvtDeviceProcessQueryInterfaceRequest event callback function examines another driver's request for access to a driver-defined interface, before the framework passes the interface to the requesting driver.
EVT_WDF_DEVICE_QUERY_REMOVE

A driver's EvtDeviceQueryRemove event callback function determines whether a specified device can be stopped and removed.
EVT_WDF_DEVICE_QUERY_STOP

A driver's EvtDeviceQueryStop event callback function determines whether a specified device can be stopped so that the PnP manager can redistribute system hardware resources.
EVT_WDF_DEVICE_RELATIONS_QUERY

A driver's EvtDeviceRelationsQuery event callback reports changes in the relationships among devices that are supported by the driver.
EVT_WDF_DEVICE_RELEASE_HARDWARE

A driver's EvtDeviceReleaseHardware event callback function performs operations that are needed when a device is no longer accessible.
EVT_WDF_DEVICE_REMOVE_ADDED_RESOURCES

A driver's EvtDeviceRemoveAddedResources event callback function removes hardware resources that the driver's EvtDeviceFilterAddResourceRequirements callback function added.
EVT_WDF_DEVICE_REPORTED_MISSING

A bus driver's EvtDeviceReportedMissing event callback function informs the driver that the framework has reported the physical device object (PDO) missing to the Plug and Play manager.
EVT_WDF_DEVICE_RESOURCE_REQUIREMENTS_QUERY

A bus driver's EvtDeviceResourceRequirementsQuery event callback function creates a resource requirements list that represents the device's required hardware resources.
EVT_WDF_DEVICE_RESOURCES_QUERY

A bus driver's EvtDeviceResourcesQuery event callback function creates a resource list that represents a specified device's boot configuration.
EVT_WDF_DEVICE_SELF_MANAGED_IO_CLEANUP

A driver's EvtDeviceSelfManagedIoCleanup event callback function handles deallocation activity for the device's self-managed I/O operations, after a device has been removed.
EVT_WDF_DEVICE_SELF_MANAGED_IO_FLUSH

A driver's EvtDeviceSelfManagedIoFlush event callback function handles flush activity for the device's self-managed I/O operations.
EVT_WDF_DEVICE_SELF_MANAGED_IO_INIT

A driver's EvtDeviceSelfManagedIoInit event callback function initializes and starts the device's self-managed I/O operations.
EVT_WDF_DEVICE_SELF_MANAGED_IO_RESTART

A driver's EvtDeviceSelfManagedIoRestart event callback function restarts a device's self-managed I/O operations.
EVT_WDF_DEVICE_SELF_MANAGED_IO_SUSPEND

A driver's EvtDeviceSelfManagedIoSuspend event callback function suspends a device's self-managed I/O operations.
EVT_WDF_DEVICE_SET_LOCK

A driver's EvtDeviceSetLock event callback function locks the specified device so that it cannot be ejected, or unlocks the device so that it can be ejected.
EVT_WDF_DEVICE_SHUTDOWN_NOTIFICATION

A driver's EvtDeviceShutdownNotification event callback function notifies the driver that the system is about to lose its power.
EVT_WDF_DEVICE_SURPRISE_REMOVAL

A driver's EvtDeviceSurpriseRemoval event callback function performs any operations that are needed after a device has been unexpectedly removed from the system or after a driver reports that the device has failed.
EVT_WDF_DEVICE_USAGE_NOTIFICATION

A driver's EvtDeviceUsageNotification event callback function informs the driver when a device is being used for special files.
EVT_WDF_DEVICE_USAGE_NOTIFICATION_EX

A driver's EvtDeviceUsageNotificationEx event callback function determines whether a device can support a special file type.
EVT_WDF_DEVICE_WAKE_FROM_S0_TRIGGERED

A driver's EvtDeviceWakeFromS0Triggered event callback function informs the driver that its device, which had previously entered a low-power device state while the system power state remained at S0, might have triggered a wake signal.
EVT_WDF_DEVICE_WAKE_FROM_SX_TRIGGERED

A driver's EvtDeviceWakeFromSxTriggered event callback function informs the driver that its device, which had previously entered a low-power device state because system power was reduced, might have triggered a wake signal.
EVT_WDF_DMA_ENABLER_DISABLE

A driver's EvtDmaEnablerDisable event callback function disables a device's DMA capability before the device leaves its working (D0) state.
EVT_WDF_DMA_ENABLER_ENABLE

A driver's EvtDmaEnablerEnable event callback function enables a device's DMA capability after the device enters its working (D0) state.
EVT_WDF_DMA_ENABLER_FILL

A driver's EvtDmaEnablerFill event callback function allocates a device's DMA buffers.
EVT_WDF_DMA_ENABLER_FLUSH

A driver's EvtDmaEnablerFlush event callback function deallocates a device's DMA buffers.
EVT_WDF_DMA_ENABLER_SELFMANAGED_IO_START

A driver's EvtDmaEnablerSelfManagedIoStart event callback function starts a DMA device's self-managed I/O operations.
EVT_WDF_DMA_ENABLER_SELFMANAGED_IO_STOP

A driver's EvtDmaEnablerSelfManagedIoStop event callback function stops a DMA device's self-managed I/O operations.
EVT_WDF_DMA_TRANSACTION_CONFIGURE_DMA_CHANNEL

A driver's EvtDmaTransactionConfigureDmaChannel event callback function configures the DMA adapter for a system-mode DMA enabler.
EVT_WDF_DMA_TRANSACTION_DMA_TRANSFER_COMPLETE

A driver's EvtDmaTransactionDmaTransferComplete event callback function is called when the system-mode controller has completed the current DMA transfer.
EVT_WDF_DPC

A driver's EvtDpcFunc callback function performs driver-defined operations at IRQL = DISPATCH_LEVEL.
EVT_WDF_DRIVER_DEVICE_ADD

A driver's EvtDriverDeviceAdd event callback function performs device initialization operations when the Plug and Play (PnP) manager reports the existence of a device.
EVT_WDF_DRIVER_UNLOAD

A driver's EvtDriverUnload event callback function performs operations that must take place before the driver is unloaded.
EVT_WDF_FILE_CLEANUP

A driver's EvtFileCleanup callback function handles operations that must be performed when an application is closing all accesses to a device.
EVT_WDF_FILE_CLOSE

A driver's EvtFileClose callback function handles operations that must be performed when all of an application's accesses to a device have been closed.
EVT_WDF_INTERRUPT_DISABLE

A driver's EvtInterruptDisable event callback function disables a specified hardware interrupt.
EVT_WDF_INTERRUPT_DPC

A driver's EvtInterruptDpc event callback function processes interrupt information that the driver's EvtInterruptIsr callback function has stored.
EVT_WDF_INTERRUPT_ENABLE

A driver's EvtInterruptEnable event callback function enables a specified hardware interrupt.
EVT_WDF_INTERRUPT_ISR

A driver's EvtInterruptIsr event callback function services a hardware interrupt.
EVT_WDF_INTERRUPT_SYNCHRONIZE

A driver's EvtInterruptSynchronize event callback function performs operations that must be synchronized with an EvtInterruptIsr callback function.
EVT_WDF_INTERRUPT_WORKITEM

A driver's EvtInterruptWorkItem event callback function processes interrupt information that the driver's EvtInterruptIsr callback function has stored.
EVT_WDF_IO_ALLOCATE_REQUEST_RESOURCES

A driver's EvtIoAllocateRequestResources callback function allocates request-specific resources that the driver requires to process the specified request.
EVT_WDF_IO_ALLOCATE_RESOURCES_FOR_RESERVED_REQUEST

A driver's EvtIoAllocateResourcesForReservedRequest callback function allocates request-specific resources that the driver can use to process an I/O request in the future.
EVT_WDF_IO_IN_CALLER_CONTEXT

A driver's EvtIoInCallerContext event callback function preprocesses an I/O request before the framework places it into an I/O queue.
EVT_WDF_IO_QUEUE_IO_CANCELED_ON_QUEUE

A driver's EvtIoCanceledOnQueue event callback function informs the driver that it must complete an I/O request that the framework has removed from an I/O queue.
EVT_WDF_IO_QUEUE_IO_DEFAULT

A driver's EvtIoDefault event callback function processes a specified I/O request.
EVT_WDF_IO_QUEUE_IO_DEVICE_CONTROL

A driver's EvtIoDeviceControl event callback function processes a specified device I/O control request.
EVT_WDF_IO_QUEUE_IO_INTERNAL_DEVICE_CONTROL

A driver's EvtIoInternalDeviceControl event callback function processes an I/O request that contains an internal device I/O control code (IOCTL).
EVT_WDF_IO_QUEUE_IO_READ

A driver's EvtIoRead event callback function processes a specified read request.
EVT_WDF_IO_QUEUE_IO_RESUME

A driver's EvtIoResume event callback function resumes processing a specified I/O request after the underlying device returns to its working (D0) power state.
EVT_WDF_IO_QUEUE_IO_STOP

A driver's EvtIoStop event callback function completes, requeues, or suspends processing of a specified request because the request's I/O queue is being stopped.
EVT_WDF_IO_QUEUE_IO_WRITE

A driver's EvtIoWrite event callback function processes a specified write request.
EVT_WDF_IO_QUEUE_STATE

A driver's EvtIoQueueState event callback function delivers queue state information to the driver.
EVT_WDF_IO_TARGET_QUERY_REMOVE

A driver's EvtIoTargetQueryRemove event callback function indicates whether the framework can safely remove a specified remote I/O target's device.
EVT_WDF_IO_TARGET_REMOVE_CANCELED

A driver's EvtIoTargetRemoveCanceled event callback function performs operations when the removal of a specified remote I/O target is canceled.
EVT_WDF_IO_TARGET_REMOVE_COMPLETE

A driver's EvtIoTargetRemoveComplete event callback function performs operations when the removal of a specified remote I/O target is complete.
EVT_WDF_IO_WDM_IRP_FOR_FORWARD_PROGRESS

A driver's EvtIoWdmIrpForForwardProgress callback function examines an I/O request packet (IRP) and determines whether to use a reserved request object to process the I/O request or to fail the I/O request.
EVT_WDF_OBJECT_CONTEXT_CLEANUP

A driver's EvtCleanupCallback event callback function removes the driver's references on an object so that the object can be deleted.
EVT_WDF_OBJECT_CONTEXT_DESTROY

A driver's EvtDestroyCallback event callback function performs operations that are associated with the deletion of a framework object.
EVT_WDF_PROGRAM_DMA

A framework-based driver's EvtProgramDma event callback function programs a specified device to perform a DMA transfer operation.
EVT_WDF_REQUEST_CANCEL

A driver's EvtRequestCancel event callback function handles operations that must be performed when an I/O request is canceled.
EVT_WDF_REQUEST_COMPLETION_ROUTINE

A driver's CompletionRoutine event callback function executes when another driver completes a specified I/O request.
EVT_WDF_REQUEST_IMPERSONATE

A driver's EvtRequestImpersonate event callback function performs tasks at the requested impersonation level, such as opening a protected file.
EVT_WDF_RESERVE_DMA

The EvtReserveDma event callback function is called when the framework has reserved resources to execute and release a transaction. Reserved resources include map registers and the WDM DMA adapter's lock.
EVT_WDF_TASK_QUEUE_TASK_EXECUTE_SYNC

This EVT_WDF_TASK_QUEUE_TASK_EXECUTE_SYNC article is for internal use only.
EVT_WDF_TIMER

The EvtTimerFunc event callback function is called when a specified time period has elapsed.
EVT_WDF_USB_READER_COMPLETION_ROUTINE

A driver's EvtUsbTargetPipeReadComplete event callback function informs the driver that a continuous reader has successfully completed a read request.
EVT_WDF_USB_READERS_FAILED

A driver's EvtUsbTargetPipeReadersFailed event callback function informs the driver that a continuous reader has reported an error while processing a read request.
EVT_WDF_WMI_INSTANCE_EXECUTE_METHOD

A driver's EvtWmiInstanceExecuteMethod callback function executes a specified method that the driver provides for a WMI data provider's instance.
EVT_WDF_WMI_INSTANCE_QUERY_INSTANCE

A driver's EvtWmiInstanceQueryInstance callback function copies a WMI provider's instance data into a buffer for delivery to a WMI client.
EVT_WDF_WMI_INSTANCE_SET_INSTANCE

A driver's EvtWmiInstanceSetInstance callback function sets all of a WMI data provider's instance data to values that a WMI client supplies.
EVT_WDF_WMI_INSTANCE_SET_ITEM

A driver's EvtWmiInstanceSetItem callback function sets a single item of a WMI data provider's instance data to a value that a WMI client supplies.
EVT_WDF_WMI_PROVIDER_FUNCTION_CONTROL

A driver's EvtWmiProviderFunctionControl callback function enables and disables the driver's support for collecting data and sending events for a specified WMI data provider.
EVT_WDF_WORKITEM

A driver's EvtWorkItem event callback function performs the work that is associated with a specified work item.
EVT_WDFDEVICE_WDM_IRP_DISPATCH

A driver's EvtDeviceWdmIrpDispatch event callback function receives an IRP before the framework processes the IRP.
EVT_WDFDEVICE_WDM_IRP_PREPROCESS

A driver's EvtDeviceWdmIrpPreprocess event callback function receives an IRP before the framework processes the IRP.
EVT_WDFDEVICE_WDM_POST_PO_FX_REGISTER_DEVICE

The EvtDeviceWdmPostPoFxRegisterDevice callback function performs device-specific operations after the framework has registered with the power framework.
EVT_WDFDEVICE_WDM_PRE_PO_FX_UNREGISTER_DEVICE

The EvtDeviceWdmPrePoFxUnregisterDevice callback function performs device-specific operations before the framework deletes a specified registration with the power framework.
Flush

The Flush method returns after this interface's work item has been serviced.
Flush

The Flush method discards any data that WinUsb saved when the device returned more data than the client requested.
FormatRequestForControlTransfer

The FormatRequestForControlTransfer method formats an I/O request object for a USB control transfer.
FormatRequestForFlush

The FormatRequestForFlush method builds an I/O request for a flush operation but does not send the request to an I/O target.
FormatRequestForIoctl

The FormatRequestForIoctl method formats an I/O request object for an I/O control operation.
FormatRequestForQueryInformation

The FormatRequestForQueryInformation method formats an I/O request to obtain information about a file, but it does not send the request to an I/O target.
FormatRequestForRead

The FormatRequestForRead method formats an I/O request object for a read operation.
FormatRequestForSetInformation

The FormatRequestForSetInformation method formats an I/O request to set information about a file, but it does not send the request to an I/O target.
FormatRequestForWrite

The FormatRequestForWrite method formats an I/O request object for a write operation.
FormatUsingCurrentType

The FormatUsingCurrentType method formats an I/O request so that the driver can forward it, unmodified, to the next-lower driver.
ForwardToIoQueue

The ForwardToIoQueue method forwards (that is, requeues) an I/O request to one of the calling driver's I/O queues.
GetCompletedRequestType

The GetCompletedRequestType method retrieves the type of operation that the request to be completed contains.
GetCompletedUsbRequestType

The GetCompletedUsbRequestType method retrieves the type of operation that the request to be completed contains.
GetCompletionParams

The GetCompletionParams method retrieves the parameters object for the completion of an I/O request object.
GetCompletionStatus

The GetCompletionStatus method retrieves the completion status of an I/O request.
GetConfiguredSettingIndex

The GetConfiguredSettingIndex method retrieves the current setting index for a USB interface.
GetCount

The GetCount method returns the number of resource descriptors that are contained in this interface's resource list.
GetCreateParameters

The GetCreateParameters method retrieves the request parameters for a create-type request.
GetCreateParametersEx

The GetCreateParametersEx method retrieves file creation parameters that are associated with a file that is being created or opened.
GetDataBuffer

The GetDataBuffer method retrieves the data buffer that is associated with a memory object.
GetDefaultIoQueue

The GetDefaultIoQueue method retrieves the interface of the default I/O queue for a device.
GetDefaultIoTarget

The GetDefaultIoTarget method retrieves the interface of the default I/O target for a device instance.
GetDescriptor

The GetDescriptor method returns a pointer to a resource descriptor that is contained in this interface's resource list.
GetDevice

The GetDevice method returns the interface to the device object that a file object is associated with.
GetDevice

The GetDevice method returns the framework device object interface for this interrupt object.
GetDevice

The GetDevice method retrieves the interface to the device that owns the I/O queue.
GetDeviceControlTransferParameters

The GetDeviceControlTransferParameters method retrieves parameters that are associated with the completion of a device I/O control request.
GetDeviceIoControlParameters

The GetDeviceIoControlParameters method retrieves the request parameters for a device I/O control-type request.
GetDeviceStackIoTypePreference

The GetDeviceStackIoTypePreference method retrieves the buffer access methods that the framework is using for a device.
GetDriver

The GetDriver method retrieves the interface to the parent driver object of a device instance.
GetEffectiveIoType

The GetEffectiveIoType method returns the buffer access method that UMDF is using for the data buffers of the I/O request that the IWDFIoRequest2 interface represents.
GetFileObject

The GetFileObject method retrieves a pointer to the IWDFFile interface that is associated with an I/O request.
GetHardwareRegisterMappedAddress

A driver calls GetHardwareRegisterMappedAddress to get the user-mode mapped address of the memory resource it earlier mapped using MapIoSpace.
GetInfo

The GetInfo method retrieves information about a specified interrupt.
GetInformation

The GetInformation method retrieves information that is associated with the completion of an I/O request.
GetInformation

The GetInformation method retrieves information about a USB pipe (endpoint).
GetInitiatorProcessId

The GetInitiatorProcessId method retrieves the initiator process ID associated with an IWDFFile interface.
GetInputMemory

The GetInputMemory method retrieves the memory object that represents the input buffer in an I/O request.
GetInterfaceDescriptor

The GetInterfaceDescriptor method retrieves a descriptor for a USB interface.
GetInterfaceGuid

The GetInterfaceGuid method retrieves the GUID that identifies a device interface.
GetInterfaceNumber

The GetInterfaceNumber method retrieves the index of a USB interface.
GetIoctlParameters

The GetIoctlParameters method retrieves parameters that are associated with the completion of a device I/O control request.
GetIoQueue

The GetIoQueue method retrieves the I/O queue object that is associated with an I/O request.
GetNameAt

The GetNameAt method retrieves the name of a property.
GetNameCount

The GetNameCount method retrieves the number of properties in a property store.
GetNamedValue

The GetNamedValue method retrieves the value of a property.
GetNumEndPoints

The GetNumEndPoints method retrieves the number of endpoints (pipes) on a USB interface.
GetNumInterfaces

The GetNumInterfaces method retrieves the number of USB interfaces for the USB device.
GetOutputMemory

The GetOutputMemory method retrieves the memory object that represents the output buffer for an I/O request.
GetParentObject

The GetParentObject method returns the parent framework object of this interface's work item.
GetPipeReadParameters

The GetPipeReadParameters method retrieves parameters that are associated with the completion of a read request.
GetPipeWriteParameters

The GetPipeWriteParameters method retrieves parameters that are associated with the completion of a write request.
GetPnpCapability

The GetPnpCapability method determines the state of the specified Plug and Play (PnP) capability.
GetPnpState

The GetPnpState method determines whether the given Plug and Play (PnP) property of a device is on or off (or set to the default state).
GetPropertyData

The GetPropertyData method retrieves the current setting for a device property.
GetQueryInformationParameters

The GetQueryInformationParameters method retrieves parameters that are associated with a WdfRequestQueryInformation-typed I/O request.
GetReadParameters

The GetReadParameters method retrieves the request parameters for a read-type request.
GetReadParameters

The GetReadParameters method retrieves parameters that are associated with the completion of a read request.
GetRelatedFileObject

The GetRelatedFileObject method retrieves the IWDFFile interface of a related file object, which is a file object that has a technology-specific relationship with another file object.
GetRequestorMode

The GetRequestorMode method indicates whether an I/O request came from a kernel-mode driver or a user-mode component (either an application or a user-mode driver).
GetRequestorProcessId

The GetRequestorProcessId method retrieves the identifier of the process that sent an I/O request.
GetSetInformationParameters

The GetSetInformationParameters method retrieves parameters that are associated with a WdfRequestSetInformation-typed I/O request.
GetSize

The GetSize method retrieves the size of the data buffer that is associated with a memory object.
GetState

The GetState method retrieves the state of an I/O queue.
GetState

The GetState method returns the current state of a local I/O target.
GetState

The GetState method returns the current state of a remote I/O target.
GetStatus

The GetStatus method returns the status of an I/O request.
GetSystemPowerAction

The GetSystemPowerAction method returns the system power action, if any, that is currently occurring for the computer.
GetTargetFile

The GetTargetFile method retrieves the framework file object that is associated with the I/O target object.
GetType

The GetType method retrieves the type of operation that a request contains.
GetType

The GetType method retrieves the type of a USB pipe.
GetUserModeDriverInitiatedIo

The GetUserModeDriverInitiatedIo method determines whether an I/O request is marked as initiated by a UMDF driver.
GetWinUsbHandle

The GetWinUsbHandle method retrieves the WinUsb interface handle that is associated with a USB interface.
GetWinUsbHandle

The GetWinUsbHandle method retrieves the WinUsb interface handle that is associated with a I/O target device object.
GetWriteParameters

The GetWriteParameters method retrieves the request parameters for a write-type request.
GetWriteParameters

The GetWriteParameters method retrieves parameters that are associated with the completion of a write request.
Impersonate

The Impersonate method registers the interface for the method that the framework should call for impersonation.
IsCanceled

The IsCanceled method determines whether the I/O manager has attempted to cancel an I/O request.
IsFrom32BitProcess

The IsFrom32BitProcess method determines whether a request originated from a 32-bit process.
IsFromUserModeDriver

The IsFromUserModeDriver method indicates whether an I/O request came from a user-mode driver or an application.
IsInEndPoint

The IsInEndPoint method determines whether a USB pipe (endpoint) is an IN pipe.
IsOutEndPoint

The IsOutEndPoint method determines whether a USB pipe (endpoint) is an OUT pipe.
IsVersionAvailable

The IsVersionAvailable method determines whether the specified version of the framework is available.
MapIoSpace

The MapIoSpace method maps the given physical address range to system address space and returns a pseudo base address.
MarkCancelable

The MarkCancelable method enables the canceling of the I/O request.
OnArmWakeFromS0

A driver's OnArmWakeFromS0 callback function arms (that is, enables) a device so that it can trigger a wake signal while in a low-power device state, if the system remains in the system working state (S0).
OnArmWakeFromSx

A driver's OnArmWakeFromSx event callback function arms (that is, enables) a device so that it can trigger a wake signal while in a low-power device state.
OnCancel

The OnCancel method is called when an application cancels an I/O operation through the Microsoft Win32 CancelIo, CancelIoEx, or CancelSynchronousIo function.
OnCleanup

The OnCleanup method releases any references to a WDF object to prevent interface leakage.
OnCleanupFile

The OnCleanupFile method cancels all I/O requests that a driver has pending in the framework queue.
OnCloseFile

The OnCloseFile method is called when the last reference count on a file object goes down to zero and before the file object is released.
OnCompletion

The OnCompletion method completes the specified request.
OnCreateFile

The OnCreateFile method is called to handle an open file request when an application opens a device through the Microsoft Win32 CreateFile function.
OnD0Entry

The OnD0Entry method notifies a driver when a device enters the D0 power state so that the driver can perform necessary operations, such as enabling the device.
OnD0EntryPostInterruptsEnabled

A driver's OnD0EntryPostInterruptsEnabled event callback function performs device-specific operations that are required when the driver enables the device's hardware interrupts.
OnD0Exit

The OnD0Exit method notifies a driver when a device exits the D0 power state so that the driver can perform necessary operations, such as disabling the device.
OnD0ExitPreInterruptsDisabled

A driver's OnD0ExitPreInterruptsDisabled event callback function performs device-specific operations that are required before the driver disables the device's hardware interrupts.
OnDefaultIoHandler

The OnDefaultIoHandler method handles I/O requests that no other method is registered to handle.
OnDeinitialize

The OnDeinitialize method performs any operations that are necessary before a system unloads a driver.
OnDeviceAdd

The OnDeviceAdd method adds a new device to a system.
OnDeviceIoControl

The OnDeviceIoControl method is called to handle a device I/O control request when an application performs a specific operation on a device through the Microsoft Win32 OnDeviceIoControl function.
OnDisarmWakeFromS0

A driver's OnDisarmWakeFromS0 event callback function disarms (that is, disables) a device's ability to trigger a wake signal while in a low-power device state, if the system remains in the system working state (S0).
OnDisarmWakeFromSx

A driver's OnDisarmWakeFromSx event callback function disarms (that is, disables) a device's ability to trigger a wake signal while the device and system are in low-power states.
OnImpersonate

The OnImpersonate method handles impersonation.
OnInitialize

The OnInitialize method performs any operations that are necessary to initialize a driver.
OnIoCanceledOnQueue

A driver's OnIoCanceledOnQueue event callback function informs the driver that an I/O request was canceled while it was in an I/O queue.
OnIoResume

The OnIoResume method resumes the processing of the specified I/O request from the specified queue.
OnIoStop

The OnIoStop callback function stops the processing of the specified I/O request from the specified queue.
OnPrepareHardware

The OnPrepareHardware method notifies a driver to make the specified hardware accessible.
OnPrepareHardware

The OnPrepareHardware method performs any operations that are needed to make a device accessible to the driver.
OnQueryRemove

The OnQueryRemove method notifies a driver before a device is removed from a computer.
OnQueryStop

The OnQueryStop method notifies a driver before a device is stopped.
OnRead

The OnRead method is called to handle a read request when an application reads information from a device through the Microsoft Win32 ReadFile or ReadFileEx function.
OnReaderCompletion

A driver's OnReaderCompletion event callback function informs the driver that a continuous reader has successfully completed a read request.
OnReaderFailure

A driver's OnReaderFailure event callback function informs the driver that a continuous reader has reported an error while processing a read request.
OnReleaseHardware

The OnReleaseHardware method notifies a driver to perform operations that are necessary when the specified hardware is no longer accessible.
OnReleaseHardware

The OnReleaseHardware method performs operations that are needed when a device is no longer accessible.
OnRemoteInterfaceArrival

A driver's OnRemoteInterfaceArrival event callback function informs the driver when a device interface is available.
OnRemoteInterfaceEvent

A UMDF-based driver's OnRemoteInterfaceEvent event callback function handles device events that are associated with a device interface.
OnRemoteInterfaceRemoval

A UMDF-based driver's OnRemoteInterfaceRemoval event callback function notifies the driver that it cannot use a device interface because the interface has been removed.
OnRemoteTargetQueryRemove

A UMDF-based driver's OnRemoteTargetQueryRemove event callback function determines whether a remote I/O target's device can be stopped and removed.
OnRemoteTargetRemoveCanceled

A UMDF-based driver's OnRemoteTargetRemoveCanceled event callback function performs operations that are necessary when the operating system cancels the removal of a remote I/O target's device.
OnRemoteTargetRemoveComplete

A UMDF-based driver's OnRemoteTargetRemoveComplete event callback function performs operations that are necessary after the operating system completes the removal of a remote I/O target's device.
OnSelfManagedIoCleanup

The OnSelfManagedIoCleanup method releases memory for a device's self-managed I/O operations, after the device is removed.
OnSelfManagedIoFlush

The OnSelfManagedIoFlush method flushes the device for a device's self-managed I/O operations.
OnSelfManagedIoInit

The OnSelfManagedIoInit method initializes a device's self-managed I/O operations.
OnSelfManagedIoRestart

The OnSelfManagedIoRestart method restarts a device's self-managed I/O operations.
OnSelfManagedIoStop

The OnSelfManagedIoStop method is not used in the current version of the UMDF.
OnSelfManagedIoSuspend

The OnSelfManagedIoSuspend method suspends a device's self-managed I/O operations.
OnStateChange

The OnStateChange method is called when the state of the I/O queue object changes.
OnSurpriseRemoval

The OnSurpriseRemoval method notifies a driver after a device is removed from a computer unexpectedly so that the driver can perform necessary operations.
OnWakeFromS0Triggered

A driver's OnWakeFromS0Triggered event callback function informs the driver that its device, which had previously entered a low-power device state while the system power state remained at S0, might have triggered a wake signal.
OnWakeFromSxTriggered

A driver's OnWakeFromSxTriggered event callback function informs the driver that its device, which had previously entered a low-power device state because system power was reduced, might have triggered a wake signal.
OnWrite

The OnWrite method is called to handle a write request when an application writes information to a device through the Microsoft Win32 WriteFile or WriteFileEx function.
OpenFileByName

The OpenFileByName method opens a remote I/O target that is a file.
OpenRemoteInterface

The OpenRemoteInterface method opens a device interface so that the driver can send I/O requests to it.
PostEvent

The PostEvent method asynchronously notifies applications that are waiting for the specified event from a driver.
Purge

The Purge method directs the framework to reject new incoming I/O requests and to cancel all outstanding requests.
PurgeSynchronously

The PurgeSynchronously method directs the framework to reject new incoming I/O requests and to cancel all outstanding requests. The method returns after all outstanding requests are canceled.
QueueWorkItemForIsr

The QueueWorkItemForIsr method queues a work item to process interrupt-related work outside of the interrupt service routine.
READ_PORT_BUFFER_UCHAR

The READ_PORT_BUFFER_UCHAR function reads a number of bytes from the specified port address into a buffer.
READ_PORT_BUFFER_ULONG

The READ_PORT_BUFFER_ULONG function reads a number of ULONG values from the specified port address into a buffer.
READ_PORT_BUFFER_USHORT

The READ_PORT_BUFFER_USHORT function reads a number of USHORT values from the specified port address into a buffer.
READ_PORT_UCHAR

The READ_PORT_UCHAR function reads a byte from the specified port address.
READ_PORT_ULONG

The READ_PORT_ULONG function reads a ULONG value from the specified port address.
READ_PORT_USHORT

The READ_PORT_USHORT function reads a USHORT value from the specified port address.
READ_REGISTER_BUFFER_UCHAR

The READ_REGISTER_BUFFER_UCHAR function reads a number of bytes from the specified register address into a buffer.
READ_REGISTER_BUFFER_ULONG

The READ_REGISTER_BUFFER_ULONG function reads a number of ULONG values from the specified register address into a buffer.
READ_REGISTER_BUFFER_ULONG64

The READ_REGISTER_BUFFER_ULONG64 function (wudfddi_hwaccess.h) reads a number of ULONG64 values from the specified register address into a buffer.
READ_REGISTER_BUFFER_USHORT

The READ_REGISTER_BUFFER_USHORT function reads a number of USHORT values from the specified register address into a buffer.
READ_REGISTER_UCHAR

The READ_REGISTER_UCHAR function reads a byte from the specified register address.
READ_REGISTER_ULONG

The READ_REGISTER_ULONG function reads a ULONG value from the specified register address.
READ_REGISTER_ULONG64

The READ_REGISTER_ULONG64 function (wudfddi_hwaccess.h) reads a ULONG64 value from the specified register address.
READ_REGISTER_USHORT

The READ_REGISTER_USHORT function reads a USHORT value from the specified register address.
ReadFromHardware

The ReadFromHardware method is used internally by the framework. Do not use.
RegisterRemoteInterfaceNotification

The RegisterRemoteInterfaceNotification method registers a driver to receive a notification when a specified device interface becomes available.
ReleaseInterruptLock

The ReleaseInterruptLock method ends a code sequence that executes while holding an interrupt object's lock.
ReleaseLock

The ReleaseLock method allows the framework to call methods of interfaces that are registered by the driver that the framework previously prevented from calling because the driver called the IWDFObject::AcquireLock method.
Remove

The Remove method removes a local I/O target.
Reopen

The Reopen method reopens a remote I/O target after it has been temporarily closed.
Requeue

The Requeue method returns an I/O request to the head of the I/O queue from which it was delivered to the driver.
Reset

The Reset method resets the data toggle and clears the stall condition on a USB pipe.
ResumeIdle

The ResumeIdle method informs the framework that the device is not in use and can be placed in a device low-power state if it remains idle.
RetrieveActivityId

The RetrieveActivityId method retrieves the current activity identifier associated with an I/O request.
RetrieveContext

The RetrieveContext method retrieves a context that was previously registered through the IWDFObject::AssignContext method.
RetrieveCountedFileName

The RetrieveCountedFileName method retrieves the full counted file name for a file that is associated with a device.
RetrieveDescriptor

The RetrieveDescriptor method retrieves a USB descriptor, which can describe a device, configuration, or string.
RetrieveDeviceInformation

The RetrieveDeviceInformation method retrieves device information of the specified type.
RetrieveDeviceInstanceId

The RetrieveDeviceInstanceId method retrieves the identifier of an instance of a device.
RetrieveDeviceInstanceId

This article describes how the RetrieveDeviceInstanceId method retrieves the identifier of an instance of a device.
RetrieveDeviceName

The RetrieveDeviceName method retrieves the name of an underlying kernel-mode device.
RetrieveDevicePropertyStore

The RetrieveDevicePropertyStore method retrieves a property store interface. Drivers can use the method to access the registry.
RetrieveDevicePropertyStore

The RetrieveDevicePropertyStore method retrieves a device property store that clients can read and write device properties through.
RetrieveDevicePropertyStore

The RetrieveDevicePropertyStore method retrieves a property store interface that drivers can use to access the registry.
RetrieveFileName

The RetrieveFileName method retrieves the full name of the file that is associated with the underlying kernel-mode device.
RetrieveInputBuffer

The RequestRetrieveInputBuffer method retrieves an I/O request's input buffer.
RetrieveInputMemory

The RetrieveInputMemory method retrieves the IWDFMemory interface of a framework memory object that represents an I/O request's input buffer.
RetrieveNextRequest

The RetrieveNextRequest method retrieves the next I/O request from an I/O queue.
RetrieveNextRequestByFileObject

The RetrieveNextRequestByFileObject method retrieves from an I/O queue the next I/O request whose file object matches the specified file object.
RetrieveOutputBuffer

The RequestRetrieveOutputBuffer method retrieves an I/O request's output buffer.
RetrieveOutputMemory

The RetrieveOutputMemory method retrieves the IWDFMemory interface of a framework memory object that represents an I/O request's output buffer.
RetrievePipePolicy

The RetrievePipePolicy method retrieves a WinUsb pipe policy.
RetrievePowerPolicy

The RetrievePowerPolicy method retrieves a WinUsb power policy.
RetrieveSymbolicLink

The RetrieveSymbolicLink method retrieves the symbolic link name that the operating system assigned to a device interface.
RetrieveUnifiedDevicePropertyStore

The RetrieveUnifiedDevicePropertyStore method retrieves a unified property store interface.
RetrieveUsbInterface

The RetrieveUsbInterface method retrieves the specified USB interface for a USB device.
RetrieveUsbPipeObject

The RetrieveUsbPipeObject method retrieves a USB pipe object for the specified pipe index.
RetrieveVersionString

The RetrieveVersionString method retrieves the version of the framework.
Reuse

The Reuse method reinitializes a framework request object so that it can be reused.
SelectSetting

The SelectSetting method selects the specified alternate setting on a USB interface.
Send

The Send method sends a request to the specified I/O target.
SetActivityId

The SetActivityId method associates an activity identifier with an I/O request.
SetBuffer

The SetBuffer method assigns a specified buffer to a memory object that a driver created by calling IWDFDriver::CreatePreallocatedWdfMemory.
SetCompletionCallback

The SetCompletionCallback method registers the interface for the OnCompletion method that the framework should call when an I/O request completes.
SetExtendedPolicy

The SetExtendedPolicy method specifies the interrupt priority, processor affinity, affinity policy, and processor group for a specified interrupt.
SetFilter

The SetFilter method sets the property that enables a device as a filter device.
SetInformation

The SetInformation method sets the size of information for a request.
SetIoTypePreference

The SetIoTypePreference method specifies your preferences for how UMDF and the driver access the data buffers of a device's I/O requests.
SetLockingConstraint

The SetLockingConstraint method sets the synchronization (or locking) model for callback functions into the driver.
SetNamedValue

The SetNamedValue method sets the value of a property.
SetPipePolicy

The SetPipePolicy method sets the WinUsb pipe policy.
SetPnpCapability

The SetPnpCapability method sets the specified Plug and Play (PnP) capability of a device to the specified state.
SetPnpState

The SetPnpState method turns on or off (or sets to the default state) the specified Plug and Play (PnP) property of a device.
SetPolicy

The SetPolicy method specifies the interrupt priority, processor affinity, and affinity policy for a specified interrupt.
SetPowerPolicy

The SetPowerPolicy method sets the WinUsb power policy.
SetPowerPolicyOwnership

The SetPowerPolicyOwnership method sets the ownership of the power policy to a driver or removes ownership from the driver.
SetPropertyData

The SetPropertyData method modifies the current setting of a device property.
SetUserModeDriverInitiatedIo

The SetUserModeDriverInitiatedIo method indicates to kernel-mode drivers that sit below the UMDF driver in the same device stack that a particular request should be treated as though it came from a UMDF driver.
Start

The Start method enables an I/O queue to start receiving new I/O requests and delivering them to a driver.
Start

The Start method starts sending queued requests to a local I/O target.
Start

The IWDFRemoteTarget::Start method restarts a remote I/O target that is stopped.
Stop

The Stop method prevents an I/O queue from delivering I/O requests, but the queue receives and stores new requests.
Stop

The Stop method stops sending queued requests to a local I/O target.
Stop

The Stop method temporarily stops a remote I/O target.
StopAcknowledge

The StopAcknowledge method informs the framework that the driver has stopped processing a specified I/O request.
StopIdle

The StopIdle method informs the framework that the device must be placed in its working (D0) power state.
StopSynchronously

The StopSynchronously method prevents an I/O queue from delivering I/O requests, but the queue receives and stores new requests. The method returns after all delivered requests have been canceled or completed.
TryToAcquireInterruptLock

The TryToAcquireInterruptLock method acquires the interrupt lock if no other thread has already acquired it.
UnmapIoSpace

The UnmapIoSpace method unmaps a specified range of physical addresses previously mapped by MapIoSpace method.
UnmarkCancelable

The UnmarkCancelable method disables the canceling of an I/O request.
WDF_ABS_TIMEOUT_IN_MS

The WDF_ABS_TIMEOUT_IN_MS function converts a specified number of milliseconds to an absolute time value.
WDF_ABS_TIMEOUT_IN_SEC

The WDF_ABS_TIMEOUT_IN_SEC function converts a specified number of seconds to an absolute time value.
WDF_ABS_TIMEOUT_IN_US

The WDF_ABS_TIMEOUT_IN_US function converts a specified number of microseconds to an absolute time value.
WDF_ALIGN_SIZE_DOWN

The WDF_ALIGN_SIZE_DOWN function returns the next-lower buffer size that is aligned to a specified alignment offset.
WDF_ALIGN_SIZE_UP

The WDF_ALIGN_SIZE_UP function returns the next-higher buffer size that is aligned to a specified alignment offset.
WDF_CHILD_ADDRESS_DESCRIPTION_HEADER_INIT

The WDF_CHILD_ADDRESS_DESCRIPTION_HEADER_INIT function initializes a WDF_CHILD_ADDRESS_DESCRIPTION_HEADER structure.
WDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER_INIT

The WDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER_INIT function initializes a WDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER structure.
WDF_CHILD_LIST_CONFIG_INIT

The WDF_CHILD_LIST_CONFIG_INIT function initializes a WDF_CHILD_LIST_CONFIG structure.
WDF_CHILD_LIST_ITERATOR_INIT

The WDF_CHILD_LIST_ITERATOR_INIT function initializes a WDF_CHILD_LIST_ITERATOR structure.
WDF_CHILD_RETRIEVE_INFO_INIT

The WDF_CHILD_RETRIEVE_INFO_INIT function initializes a WDF_CHILD_RETRIEVE_INFO structure.
WDF_COINSTALLER_INSTALL_OPTIONS_INIT

The WDF_COINSTALLER_INSTALL_OPTIONS_INIT function initializes a WDF_COINSTALLER_INSTALL_OPTIONS structure.
WDF_COMMON_BUFFER_CONFIG_INIT

The WDF_COMMON_BUFFER_CONFIG_INIT function initializes a WDF_COMMON_BUFFER_CONFIG structure.
WDF_COMPANION_EVENT_CALLBACKS_INIT

This WDF_COMPANION_EVENT_CALLBACKS_INIT function article is for internal use only.
WDF_DEVICE_INTERFACE_PROPERTY_DATA_INIT

The WDF_DEVICE_INTERFACE_PROPERTY_DATA_INIT function initializes a driver's WDF_DEVICE_INTERFACE_PROPERTY_DATA structure.
WDF_DEVICE_PNP_CAPABILITIES_INIT

The WDF_DEVICE_PNP_CAPABILITIES_INIT function initializes a WDF_DEVICE_PNP_CAPABILITIES structure.
WDF_DEVICE_POWER_CAPABILITIES_INIT

The WDF_DEVICE_POWER_CAPABILITIES_INIT function initializes a WDF_DEVICE_POWER_CAPABILITIES structure.
WDF_DEVICE_POWER_POLICY_IDLE_SETTINGS_INIT

The WDF_DEVICE_POWER_POLICY_IDLE_SETTINGS_INIT function initializes a driver's WDF_DEVICE_POWER_POLICY_IDLE_SETTINGS structure.
WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS_INIT

The WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS_INIT function initializes a driver's WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS structure.
WDF_DEVICE_PROPERTY_DATA_INIT

The WDF_DEVICE_PROPERTY_DATA_INIT function initializes a driver's WDF_DEVICE_PROPERTY_DATA structure.
WDF_DEVICE_STATE_INIT

The WDF_DEVICE_STATE_INIT function initializes a driver's WDF_DEVICE_STATE structure.
WDF_DMA_ENABLER_CONFIG_INIT

The WDF_DMA_ENABLER_CONFIG_INIT function initializes a driver's WDF_DMA_ENABLER_CONFIG structure.
WDF_DMA_SYSTEM_PROFILE_CONFIG_INIT

The WDF_DMA_SYSTEM_PROFILE_CONFIG_INIT function initializes a driver's WDF_DMA_SYSTEM_PROFILE_CONFIG structure.
WDF_DPC_CONFIG_INIT

The WDF_DPC_CONFIG_INIT function initializes a driver's WDF_DPC_CONFIG structure.
WDF_DRIVER_CONFIG_INIT

The WDF_DRIVER_CONFIG_INIT function initializes a driver's WDF_DRIVER_CONFIG structure.
WDF_DRIVER_VERSION_AVAILABLE_PARAMS_INIT

The WDF_DRIVER_VERSION_AVAILABLE_PARAMS_INIT function initializes a WDF_DRIVER_VERSION_AVAILABLE_PARAMS structure.
WDF_FDO_EVENT_CALLBACKS_INIT

The WDF_FDO_EVENT_CALLBACKS_INIT function initializes a WDF_FDO_EVENT_CALLBACKS structure.
WDF_FILEOBJECT_CONFIG_INIT

The WDF_FILEOBJECT_CONFIG_INIT function initializes a driver's WDF_FILEOBJECT_CONFIG structure.
WDF_GET_CONTEXT_TYPE_INFO

This macro is reserved for internal use only.
WDF_INTERRUPT_CONFIG_INIT

The WDF_INTERRUPT_CONFIG_INIT function initializes a WDF_INTERRUPT_CONFIG structure.
WDF_INTERRUPT_EXTENDED_POLICY_INIT

The WDF_INTERRUPT_EXTENDED_POLICY_INIT function initializes a WDF_INTERRUPT_EXTENDED_POLICY structure.
WDF_INTERRUPT_EXTENDED_POLICY_INIT

Learn how the WDF_INTERRUPT_EXTENDED_POLICY_INIT function initializes a WDF_INTERRUPT_EXTENDED_POLICY structure.
WDF_INTERRUPT_INFO_INIT

The WDF_INTERRUPT_INFO_INIT function initializes a WDF_INTERRUPT_INFO structure.
WDF_INTERRUPT_INFO_INIT

Learn how the WDF_INTERRUPT_INFO_INIT function initializes a WDF_INTERRUPT_INFO structure.
WDF_IO_QUEUE_CONFIG_INIT

The WDF_IO_QUEUE_CONFIG_INIT function initializes a driver's WDF_IO_QUEUE_CONFIG structure.
WDF_IO_QUEUE_CONFIG_INIT_DEFAULT_QUEUE

The WDF_IO_QUEUE_CONFIG_INIT_DEFAULT_QUEUE function initializes a driver's WDF_IO_QUEUE_CONFIG structure.
WDF_IO_QUEUE_DRAINED

The WDF_IO_QUEUE_DRAINED function returns TRUE if the I/O queue's state indicates that the queue is drained.
WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY_DEFAULT_INIT

The WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY_DEFAULT_INIT function initializes a driver's WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY structure.
WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY_EXAMINE_INIT

The WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY_EXAMINE_INIT function initializes a driver's WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY structure.
WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY_PAGINGIO_INIT

The WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY_PAGINGIO_INIT function initializes a driver's WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY structure.
WDF_IO_QUEUE_IDLE

The WDF_IO_QUEUE_IDLE function returns TRUE if an I/O queue's state indicates that the queue is drained.
WDF_IO_QUEUE_PURGED

The WDF_IO_QUEUE_PURGED function returns TRUE if an I/O queue's state indicates that the queue is drained.
WDF_IO_QUEUE_READY

The WDF_IO_QUEUE_READY function returns TRUE if an I/O queue's state indicates that the queue is drained.
WDF_IO_QUEUE_STOPPED

The WDF_IO_QUEUE_STOPPED function returns TRUE if an I/O queue's state indicates that the queue is stopped.
WDF_IO_TARGET_OPEN_PARAMS_INIT_CREATE_BY_NAME

The WDF_IO_TARGET_OPEN_PARAMS_INIT_CREATE_BY_NAME function initializes a driver's WDF_IO_TARGET_OPEN_PARAMS structure so the driver can open an I/O target by specifying the name of the device, file, or device interface.
WDF_IO_TARGET_OPEN_PARAMS_INIT_EXISTING_DEVICE

The WDF_IO_TARGET_OPEN_PARAMS_INIT_EXISTING_DEVICE function initializes a driver's WDF_IO_TARGET_OPEN_PARAMS structure so that the driver can open a remote I/O target by specifying a Windows Driver Model (WDM) device object.
WDF_IO_TARGET_OPEN_PARAMS_INIT_OPEN_BY_FILE

The WDF_IO_TARGET_OPEN_PARAMS_INIT_OPEN_BY_FILE function initializes a driver's WDF_IO_TARGET_OPEN_PARAMS structure so the driver can open an I/O target by specifying a filename.
WDF_IO_TARGET_OPEN_PARAMS_INIT_OPEN_BY_NAME

The WDF_IO_TARGET_OPEN_PARAMS_INIT_OPEN_BY_NAME function initializes a driver's WDF_IO_TARGET_OPEN_PARAMS structure so the driver can open an I/O target by specifying the name of the device, file, or device interface.
WDF_IO_TARGET_OPEN_PARAMS_INIT_REOPEN

The WDF_IO_TARGET_OPEN_PARAMS_INIT_REOPEN function initializes a driver's WDF_IO_TARGET_OPEN_PARAMS structure so the driver can reopen a remote I/O target.
WDF_IO_TYPE_CONFIG_INIT

The WDF_IO_TYPE_CONFIG_INIT function initializes a driver's WDF_IO_TYPE_CONFIG structure.
WDF_MEMORY_DESCRIPTOR_INIT_BUFFER

The WDF_MEMORY_DESCRIPTOR_INIT_BUFFER function initializes a WDF_MEMORY_DESCRIPTOR structure so that it describes a specified buffer.
WDF_MEMORY_DESCRIPTOR_INIT_HANDLE

The WDF_MEMORY_DESCRIPTOR_INIT_HANDLE function initializes a WDF_MEMORY_DESCRIPTOR structure so that it describes a specified framework memory object.
WDF_MEMORY_DESCRIPTOR_INIT_MDL

The WDF_MEMORY_DESCRIPTOR_INIT_MDL function initializes a WDF_MEMORY_DESCRIPTOR structure so that it describes a specified memory descriptor list (MDL).
WDF_OBJECT_ATTRIBUTES_INIT

The WDF_OBJECT_ATTRIBUTES_INIT function initializes a driver's WDF_OBJECT_ATTRIBUTES structure.
WDF_PDO_EVENT_CALLBACKS_INIT

The WDF_PDO_EVENT_CALLBACKS_INIT function initializes a WDF_PDO_EVENT_CALLBACKS structure.
WDF_PNPPOWER_EVENT_CALLBACKS_INIT

The WDF_PNPPOWER_EVENT_CALLBACKS_INIT function initializes a driver's WDF_PNPPOWER_EVENT_CALLBACKS structure.
WDF_POWER_FRAMEWORK_SETTINGS_INIT

The WDF_POWER_FRAMEWORK_SETTINGS_INIT function initializes a WDF_POWER_FRAMEWORK_SETTINGS structure.
WDF_POWER_POLICY_EVENT_CALLBACKS_INIT

The WDF_POWER_POLICY_EVENT_CALLBACKS_INIT function initializes a driver's WDF_POWER_POLICY_EVENT_CALLBACKS structure.
WDF_QUERY_INTERFACE_CONFIG_INIT

The WDF_QUERY_INTERFACE_CONFIG_INIT function initializes a driver's WDF_QUERY_INTERFACE_CONFIG structure.
WDF_READ_PORT_BUFFER_UCHAR

The WDF_READ_PORT_BUFFER_UCHAR function reads a number of bytes from the specified port address into a buffer.
WDF_READ_PORT_BUFFER_ULONG

The WDF_READ_PORT_BUFFER_ULONG function reads a number of ULONG values from the specified port address into a buffer.
WDF_READ_PORT_BUFFER_USHORT

The WDF_READ_PORT_BUFFER_USHORT function reads a number of USHORT values from the specified port address into a buffer.
WDF_READ_PORT_UCHAR

The WDF_READ_PORT_UCHAR function reads a byte from the specified port address.
WDF_READ_PORT_ULONG

The WDF_READ_PORT_ULONG function reads a ULONG value from the specified port address.
WDF_READ_PORT_USHORT

The WDF_READ_PORT_USHORT function reads a USHORT value from the specified port address.
WDF_READ_REGISTER_BUFFER_UCHAR

The WDF_READ_REGISTER_BUFFER_UCHAR function reads a number of bytes from the specified register address into a buffer.
WDF_READ_REGISTER_BUFFER_ULONG

The WDF_READ_REGISTER_BUFFER_ULONG function reads a number of ULONG values from the specified register address into a buffer.
WDF_READ_REGISTER_BUFFER_ULONG64

The WDF_READ_REGISTER_BUFFER_ULONG64 function reads a number of ULONG64 values from the specified register address into a buffer.
WDF_READ_REGISTER_BUFFER_USHORT

The WDF_READ_REGISTER_BUFFER_USHORT function reads a number of USHORT values from the specified register address into a buffer.
WDF_READ_REGISTER_UCHAR

The WDF_READ_REGISTER_UCHAR function reads a byte from the specified register address.
WDF_READ_REGISTER_ULONG

The WDF_READ_REGISTER_ULONG function reads a ULONG value from the specified register address.
WDF_READ_REGISTER_ULONG64

The WDF_READ_REGISTER_ULONG64 function reads a ULONG64 value from the specified register address.
WDF_READ_REGISTER_USHORT

The WDF_READ_REGISTER_USHORT function reads a USHORT value from the specified register address.
WDF_REL_TIMEOUT_IN_MS

The WDF_REL_TIMEOUT_IN_MS function converts a specified number of milliseconds to a relative time value.
WDF_REL_TIMEOUT_IN_SEC

The WDF_REL_TIMEOUT_IN_SEC function converts a specified number of seconds to a relative time value.
WDF_REL_TIMEOUT_IN_US

The WDF_REL_TIMEOUT_IN_US function converts a specified number of microseconds to a relative time value.
WDF_REMOVE_LOCK_OPTIONS_INIT

The WDF_REMOVE_LOCK_OPTIONS_INIT function initializes a WDF_REMOVE_LOCK_OPTIONS structure.
WDF_REQUEST_COMPLETION_PARAMS_INIT

The WDF_REQUEST_COMPLETION_PARAMS_INIT function initializes a WDF_REQUEST_COMPLETION_PARAMS structure.
WDF_REQUEST_FORWARD_OPTIONS_INIT

The WDF_REQUEST_FORWARD_OPTIONS_INIT function initializes a WDF_REQUEST_FORWARD_OPTIONS structure.
WDF_REQUEST_PARAMETERS_INIT

The WDF_REQUEST_PARAMETERS_INIT function initializes a WDF_REQUEST_PARAMETERS structure.
WDF_REQUEST_REUSE_PARAMS_INIT

The WDF_REQUEST_REUSE_PARAMS_INIT function initializes a driver's WDF_REQUEST_REUSE_PARAMS structure.
WDF_REQUEST_REUSE_PARAMS_SET_NEW_IRP

The WDF_REQUEST_REUSE_PARAMS_SET_NEW_IRP function sets a new IRP in a driver's WDF_REQUEST_REUSE_PARAMS structure.
WDF_REQUEST_SEND_OPTIONS_INIT

The WDF_REQUEST_SEND_OPTIONS_INIT function initializes a driver's WDF_REQUEST_SEND_OPTIONS structure.
WDF_REQUEST_SEND_OPTIONS_SET_TIMEOUT

The WDF_REQUEST_SEND_OPTIONS_SET_TIMEOUT function sets a time-out value in a driver's WDF_REQUEST_SEND_OPTIONS structure.
WDF_TASK_QUEUE_CONFIG_INIT

This WDF_TASK_QUEUE_CONFIG_INIT function article is for internal use only.
WDF_TASK_SEND_OPTIONS_INIT

This WDF_TASK_SEND_OPTIONS_INIT function article is for internal use only.
WDF_TIMER_CONFIG_INIT

The WDF_TIMER_CONFIG_INIT function initializes a WDF_TIMER_CONFIG structure for a timer that will use a single due time.
WDF_TIMER_CONFIG_INIT_PERIODIC

The WDF_TIMER_CONFIG_INIT_PERIODIC function initializes a WDF_TIMER_CONFIG structure for a periodic timer.
WDF_TYPE_NAME_POINTER_TYPE

The WDF_TYPE_NAME_POINTER_TYPE macro is reserved for internal use only.
WDF_TYPE_NAME_TO_TYPE_INFO

The WDF_TYPE_NAME_TO_TYPE_INFO macro is reserved for internal use only.
WDF_USB_CONTINUOUS_READER_CONFIG_INIT

The WDF_USB_CONTINUOUS_READER_CONFIG_INIT function initializes a WDF_USB_CONTINUOUS_READER_CONFIG structure.
WDF_USB_CONTROL_SETUP_PACKET_INIT

The WDF_USB_CONTROL_SETUP_PACKET_INIT function initializes a WDF_USB_CONTROL_SETUP_PACKET structure for a standard USB control transfer.
WDF_USB_CONTROL_SETUP_PACKET_INIT_CLASS

The WDF_USB_CONTROL_SETUP_PACKET_INIT_CLASS function initializes a WDF_USB_CONTROL_SETUP_PACKET structure for a device class-specific USB control transfer.
WDF_USB_CONTROL_SETUP_PACKET_INIT_FEATURE

The WDF_USB_CONTROL_SETUP_PACKET_INIT_FEATURE function initializes a WDF_USB_CONTROL_SETUP_PACKET structure for a USB control transfer that sets or clears a device feature.
WDF_USB_CONTROL_SETUP_PACKET_INIT_GET_STATUS

The WDF_USB_CONTROL_SETUP_PACKET_INIT_GET_STATUS function initializes a WDF_USB_CONTROL_SETUP_PACKET structure for a USB control transfer that obtains device status.
WDF_USB_CONTROL_SETUP_PACKET_INIT_VENDOR

The WDF_USB_CONTROL_SETUP_PACKET_INIT_VENDOR function initializes a WDF_USB_CONTROL_SETUP_PACKET structure for a vendor-specific USB control transfer.
WDF_USB_DEVICE_CREATE_CONFIG_INIT

The WDF_USB_DEVICE_CREATE_CONFIG_INIT function initializes a WDF_USB_DEVICE_CREATE_CONFIG structure.
WDF_USB_DEVICE_INFORMATION_INIT

The WDF_USB_DEVICE_INFORMATION_INIT function initializes a driver's WDF_USB_DEVICE_INFORMATION structure.
WDF_USB_DEVICE_SELECT_CONFIG_PARAMS_INIT_DECONFIG

The WDF_USB_DEVICE_SELECT_CONFIG_PARAMS_INIT_DECONFIG function initializes a WDF_USB_DEVICE_SELECT_CONFIG_PARAMS structure so that a driver can deconfigure a USB device.
WDF_USB_DEVICE_SELECT_CONFIG_PARAMS_INIT_INTERFACES_DESCRIPTORS

The WDF_USB_DEVICE_SELECT_CONFIG_PARAMS_INIT_INTERFACES_DESCRIPTORS function initializes a WDF_USB_DEVICE_SELECT_CONFIG_PARAMS structure so that a driver can specify a configuration by using USB descriptors.
WDF_USB_DEVICE_SELECT_CONFIG_PARAMS_INIT_MULTIPLE_INTERFACES

The WDF_USB_DEVICE_SELECT_CONFIG_PARAMS_INIT_MULTIPLE_INTERFACES function initializes a WDF_USB_DEVICE_SELECT_CONFIG_PARAMS structure so that a driver can configure a device to use multiple interfaces.
WDF_USB_DEVICE_SELECT_CONFIG_PARAMS_INIT_SINGLE_INTERFACE

The WDF_USB_DEVICE_SELECT_CONFIG_PARAMS_INIT_SINGLE_INTERFACE function initializes a WDF_USB_DEVICE_SELECT_CONFIG_PARAMS structure so that a driver can configure a device to use a single, specified interface.
WDF_USB_DEVICE_SELECT_CONFIG_PARAMS_INIT_URB

The WDF_USB_DEVICE_SELECT_CONFIG_PARAMS_INIT_URB function initializes a WDF_USB_DEVICE_SELECT_CONFIG_PARAMS structure so that a driver can specify a configuration by using a URB.
WDF_USB_INTERFACE_SELECT_SETTING_PARAMS_INIT_DESCRIPTOR

The WDF_USB_INTERFACE_SELECT_SETTING_PARAMS_INIT_DESCRIPTOR function initializes a WDF_USB_INTERFACE_SELECT_SETTING_PARAMS structure so that a driver can select a USB interface by specifying an interface descriptor.
WDF_USB_INTERFACE_SELECT_SETTING_PARAMS_INIT_SETTING

The WDF_USB_INTERFACE_SELECT_SETTING_PARAMS_INIT_SETTING function initializes a WDF_USB_INTERFACE_SELECT_SETTING_PARAMS structure so that a driver can select a USB interface by specifying a handle to an interface object and an alternate setting for the interface.
WDF_USB_INTERFACE_SELECT_SETTING_PARAMS_INIT_URB

The WDF_USB_INTERFACE_SELECT_SETTING_PARAMS_INIT_URB function initializes a WDF_USB_INTERFACE_SELECT_SETTING_PARAMS structure so that a driver can select a USB interface by specifying a URB.
WDF_USB_PIPE_DIRECTION_IN

The WDF_USB_PIPE_DIRECTION_IN function determines whether a specified USB endpoint is an input endpoint.
WDF_USB_PIPE_DIRECTION_OUT

The WDF_USB_PIPE_DIRECTION_OUT function determines whether a specified USB endpoint is an output endpoint.
WDF_USB_PIPE_INFORMATION_INIT

The WDF_USB_PIPE_INFORMATION_INIT function initializes a WDF_USB_PIPE_INFORMATION structure.
WDF_WMI_BUFFER_APPEND_STRING

The WDF_WMI_BUFFER_APPEND_STRING function copies a specified Unicode string into a specified buffer in the format that WMI requires.
WDF_WMI_INSTANCE_CONFIG_INIT_PROVIDER

The WDF_WMI_INSTANCE_CONFIG_INIT_PROVIDER function initializes a WDF_WMI_INSTANCE_CONFIG structure and stores a specified handle to a WMI provider object.
WDF_WMI_INSTANCE_CONFIG_INIT_PROVIDER_CONFIG

The WDF_WMI_INSTANCE_CONFIG_INIT_PROVIDER_CONFIG function initializes a WDF_WMI_INSTANCE_CONFIG structure and stores a pointer to a specified WDF_WMI_PROVIDER_CONFIG structure.
WDF_WMI_PROVIDER_CONFIG_INIT

The WDF_WMI_PROVIDER_CONFIG_INIT function initializes a WDF_WMI_PROVIDER_CONFIG structure.
WDF_WORKITEM_CONFIG_INIT

The WDF_WORKITEM_CONFIG_INIT function initializes a driver's WDF_WORKITEM_CONFIG structure.
WDF_WRITE_PORT_BUFFER_UCHAR

The WDF_WRITE_PORT_BUFFER_UCHAR function writes a number of bytes from a buffer to the specified port.
WDF_WRITE_PORT_BUFFER_ULONG

The WDF_WRITE_PORT_BUFFER_ULONG function writes a number of ULONG values from a buffer to the specified port address.
WDF_WRITE_PORT_BUFFER_USHORT

The WDF_WRITE_PORT_BUFFER_USHORT function writes a number of USHORT values from a buffer to the specified port address.
WDF_WRITE_PORT_UCHAR

The WDF_WRITE_PORT_UCHAR function writes a byte to the specified port address.
WDF_WRITE_PORT_ULONG

The WDF_WRITE_PORT_ULONG function writes a ULONG value to the specified port address.
WDF_WRITE_PORT_USHORT

The WDF_WRITE_PORT_USHORT function writes a USHORT value to the specified port address.
WDF_WRITE_REGISTER_BUFFER_UCHAR

The WDF_WRITE_REGISTER_BUFFER_UCHAR function writes a number of bytes from a buffer to the specified register.
WDF_WRITE_REGISTER_BUFFER_ULONG

The WDF_WRITE_REGISTER_BUFFER_ULONG function writes a number of ULONG values from a buffer to the specified register.
WDF_WRITE_REGISTER_BUFFER_ULONG64

The WDF_WRITE_REGISTER_BUFFER_ULONG64 function writes a number of ULONG64 values from a buffer to the specified register.
WDF_WRITE_REGISTER_BUFFER_USHORT

The WDF_WRITE_REGISTER_BUFFER_USHORT routine writes a number of USHORT values from a buffer to the specified register.
WDF_WRITE_REGISTER_UCHAR

The WDF_WRITE_REGISTER_UCHAR routine writes a byte to the specified address.
WDF_WRITE_REGISTER_ULONG

The WDF_WRITE_REGISTER_ULONG routine writes a ULONG value to the specified address.
WDF_WRITE_REGISTER_ULONG64

The WDF_WRITE_REGISTER_ULONG64 function writes a ULONG64 value to the specified address.
WDF_WRITE_REGISTER_USHORT

The WDF_WRITE_REGISTER_USHORT routine writes a USHORT value to the specified address.
WdfChildListAddOrUpdateChildDescriptionAsPresent

The WdfChildListAddOrUpdateChildDescriptionAsPresent method adds a new child description to a list of children or updates an existing child description.
WdfChildListBeginIteration

The WdfChildListBeginIteration method prepares the framework for retrieving items from a specified child list.
WdfChildListBeginScan

The WdfChildListBeginScan method prepares a specified list of child devices so the driver can update the information in the list.
WdfChildListCreate

The WdfChildListCreate method creates a child list for a specified parent device.
WdfChildListEndIteration

The WdfChildListEndIteration method processes modifications to a specified child list.
WdfChildListEndScan

The WdfChildListEndScan method processes modifications to a specified child list.
WdfChildListGetDevice

The WdfChildListGetDevice method returns a handle to the framework device object that represents the parent device of a specified child list.
WdfChildListRequestChildEject

The WdfChildListRequestChildEject method informs the framework that a specified device is about to be ejected from its docking station.
WdfChildListRetrieveAddressDescription

The WdfChildListRetrieveAddressDescription method locates a child device that has a specified identification description and retrieves the device's address description.
WdfChildListRetrieveNextDevice

The WdfChildListRetrieveNextDevice method traverses a specified child list and retrieves the next child device that matches specified criteria.
WdfChildListRetrievePdo

The WdfChildListRetrievePdo method returns a handle to the framework device object that is associated with a specified child description in a child list.
WdfChildListUpdateAllChildDescriptionsAsPresent

The WdfChildListUpdateAllChildDescriptionsAsPresent method informs the framework that all of the child devices in a specified child list are plugged in and available.
WdfChildListUpdateChildDescriptionAsMissing

The WdfChildListUpdateChildDescriptionAsMissing method informs the framework that a specified child device is currently unplugged or otherwise unavailable.
WdfCmResourceListAppendDescriptor

The WdfCmResourceListAppendDescriptor method adds a resource descriptor to the end of a specified resource list.
WdfCmResourceListGetCount

The WdfCmResourceListGetCount method returns the number of resource descriptors that are contained in a specified resource list.
WdfCmResourceListGetDescriptor

The WdfCmResourceListGetDescriptor method returns a pointer to a resource descriptor that is contained in a specified resource list.
WdfCmResourceListInsertDescriptor

The WdfCmResourceListInsertDescriptor method inserts a resource descriptor into a specified resource list.
WdfCmResourceListRemove

The WdfCmResourceListRemove method removes a resource descriptor from a specified resource list.
WdfCmResourceListRemoveByDescriptor

The WdfCmResourceListRemoveByDescriptor method removes a specified resource descriptor from a specified resource list.
WdfCollectionAdd

The WdfCollectionAdd method adds a specified framework object to an object collection.
WdfCollectionCreate

The WdfCollectionCreate method creates a framework collection object.
WdfCollectionGetCount

The WdfCollectionGetCount method returns the number of objects that are currently in an object collection.
WdfCollectionGetFirstItem

The WdfCollectionGetFirstItem method returns a handle to the first object that is in an object collection.
WdfCollectionGetItem

The WdfCollectionGetItem method returns a handle to the object that is contained in a specified object collection and associated with a specified index value.
WdfCollectionGetLastItem

The WdfCollectionGetLastItem method returns a handle to the last object that is in an object collection.
WdfCollectionRemove

The WdfCollectionRemove method removes an object from a specified object collection.
WdfCollectionRemoveItem

The WdfCollectionRemoveItem method removes a specified object from an object collection, based on a specified index value.
WdfCommonBufferCreate

The WdfCommonBufferCreate method creates a memory buffer that both the driver and a direct memory access (DMA) device can access simultaneously.
WdfCommonBufferCreateWithConfig

The WdfCommonBufferCreateWithConfig method creates a memory buffer that both the driver and a direct memory access (DMA) device can access simultaneously, and the method also specifies buffer configuration information.
WdfCommonBufferGetAlignedLogicalAddress

The WdfCommonBufferGetAlignedLogicalAddress method returns the logical address that is associated with a specified common buffer.
WdfCommonBufferGetAlignedVirtualAddress

The WdfCommonBufferGetAlignedVirtualAddress method returns the virtual address that is associated with a specified common buffer.
WdfCommonBufferGetLength

The WdfCommonBufferGetLength method returns the length of a specified common buffer.
WdfCompanionCreate

This WdfCompanionCreate function article is for internal use only.
WdfCompanionCreateTaskQueue

This WdfCompanionCreateTaskQueue function article is for internal use only.
WdfCompanionTargetSendTaskSynchronously

This WdfCompanionTargetSendTaskSynchronously function article is for internal use only.
WdfCompanionTargetWdmGetCompanionProcess

This WdfCompanionTargetWdmGetCompanionProcess function article is for internal use only.
WdfCompanionWdmGetSecureDeviceHandle

This WdfCompanionWdmGetSecureDeviceHandle function article is for internal use only.
WdfControlDeviceInitAllocate

The WdfControlDeviceInitAllocate method allocates a WDFDEVICE_INIT structure that a driver uses when creating a new control device object.
WdfControlDeviceInitSetShutdownNotification

The WdfControlDeviceInitSetShutdownNotification method sets shutdown notification information for a control device object.
WdfControlFinishInitializing

The WdfControlFinishInitializing method informs the framework that a driver has finished initializing a specified control device object.
WdfDeviceAddDependentUsageDeviceObject

The WdfDeviceAddDependentUsageDeviceObject method indicates that a specified device depends on another device when the specified device is used to store special files.
WdfDeviceAddQueryInterface

The WdfDeviceAddQueryInterface method creates a driver-defined interface that other drivers can query and use.
WdfDeviceAddRemovalRelationsPhysicalDevice

The WdfDeviceAddRemovalRelationsPhysicalDevice method indicates that a specified device must be removed when another specified device is removed.
WdfDeviceAllocAndQueryInterfaceProperty

The WdfDeviceAllocAndQueryInterfaceProperty method allocates a buffer and retrieves a specified device interface property.
WdfDeviceAllocAndQueryProperty

The WdfDeviceAllocAndQueryProperty method allocates a buffer and retrieves a specified device property.
WdfDeviceAllocAndQueryPropertyEx

The WdfDeviceAllocAndQueryPropertyEx method allocates a buffer and retrieves a specified device property.
WdfDeviceAssignInterfaceProperty

The WdfDeviceAssignInterfaceProperty method modifies the current value of a device interface property.
WdfDeviceAssignMofResourceName

The WdfDeviceAssignMofResourceName method registers a MOF resource name for a specified device.
WdfDeviceAssignProperty

The WdfDeviceAssignProperty method modifies the current setting of a device property.
WdfDeviceAssignS0IdleSettings

The WdfDeviceAssignS0IdleSettings method provides driver-supplied information that the framework uses when a device is idle and the system is in its working (S0) state.
WdfDeviceAssignSxWakeSettings

The WdfDeviceAssignSxWakeSettings method provides driver-supplied information about a device's ability to trigger a wake signal while both the device and the system are in a low-power state.
WdfDeviceClearRemovalRelationsDevices

The WdfDeviceClearRemovalRelationsDevices method removes all devices from the list of devices that must be removed when a specified device is removed.
WdfDeviceConfigureRequestDispatching

The WdfDeviceConfigureRequestDispatching method causes the framework to queue a specified type of I/O requests to a specified I/O queue.
WdfDeviceConfigureWdmIrpDispatchCallback

The WdfDeviceConfigureWdmIrpDispatchCallback method registers a driver's EvtDeviceWdmIrpDispatch callback function.
WdfDeviceCreate

The WdfDeviceCreate method creates a framework device object.
WdfDeviceCreateDeviceInterface

The WdfDeviceCreateDeviceInterface method creates a device interface for a specified device.
WdfDeviceCreateSymbolicLink

The WdfDeviceCreateSymbolicLink method creates a symbolic link to a specified device.
WdfDeviceEnqueueRequest

The WdfDeviceEnqueueRequest method delivers a specified I/O request to the framework, so that the framework can subsequently add the request to one of the I/O queues that the driver has created for the specified device.
WdfDeviceGetAlignmentRequirement

The WdfDeviceGetAlignmentRequirement method retrieves a device's address alignment requirement for memory transfer operations.
WdfDeviceGetCharacteristics

The WdfDeviceGetCharacteristics method returns device characteristics for a specified device.
WdfDeviceGetDefaultQueue

The WdfDeviceGetDefaultQueue method returns a handle to a device's default I/O queue.
WdfDeviceGetDevicePnpState

The WdfDeviceGetDevicePnpState method returns the current state of the framework's Plug and Play state machine for a specified device.
WdfDeviceGetDevicePowerPolicyState

The WdfDeviceGetDevicePowerPolicyState method returns the current state of the framework's power policy state machine, for a specified device.
WdfDeviceGetDevicePowerState

The WdfDeviceGetDevicePowerState method returns the current state of the framework's power state machine, for a specified device.
WdfDeviceGetDeviceStackIoType

The WdfDeviceGetDeviceStackIoType method retrieves the buffer access methods that the framework is using for a device.
WdfDeviceGetDeviceState

The WdfDeviceGetDeviceState method retrieves the device state for a specified device.
WdfDeviceGetDriver

The WdfDeviceGetDriver method returns a handle to the framework driver object that is associated with a specified framework device object.
WdfDeviceGetFileObject

The WdfDeviceGetFileObject method returns a handle to the framework file object that is associated with a specified WDM file object.
WdfDeviceGetHardwareRegisterMappedAddress

A driver calls WdfDeviceGetHardwareRegisterMappedAddress to get the user-mode mapped address of the memory resource it mapped previously using WdfDeviceMapIoSpace.
WdfDeviceGetIoTarget

The WdfDeviceGetIoTarget method returns a handle to a function or filter driver's local I/O target, for a specified device.
WdfDeviceGetSystemPowerAction

The WdfDeviceGetSystemPowerAction method returns the system power action, if any, that is currently occurring for the computer.
WdfDeviceIndicateWakeStatus

The WdfDeviceIndicateWakeStatus method informs the framework that the calling bus driver has stopped waiting for a specified device to trigger a wake signal on the bus.
WdfDeviceInitAssignName

The WdfDeviceInitAssignName method assigns a device name to a device's device object.
WdfDeviceInitAssignSDDLString

The WdfDeviceInitAssignSDDLString method assigns a security setting for a device.
WdfDeviceInitAssignWdmIrpPreprocessCallback

The WdfDeviceInitAssignWdmIrpPreprocessCallback method registers a callback function to handle an IRP major function code and, optionally, one or more minor function codes that are associated with the major function code.
WdfDeviceInitFree

The WdfDeviceInitFree method deallocates a WDFDEVICE_INIT structure.
WdfDeviceInitRegisterPnpStateChangeCallback

The WdfDeviceInitRegisterPnpStateChangeCallback method registers a driver-supplied event callback function that the framework calls when a device's Plug and Play state machine changes state.
WdfDeviceInitRegisterPowerPolicyStateChangeCallback

The WdfDeviceInitRegisterPowerPolicyStateChangeCallback method registers a driver-supplied event callback function that the framework calls when a device's power policy state machine changes state.
WdfDeviceInitRegisterPowerStateChangeCallback

The WdfDeviceInitRegisterPowerStateChangeCallback method registers a driver-supplied event callback function that the framework calls when a device's power state machine changes state.
WdfDeviceInitSetCharacteristics

The WdfDeviceInitSetCharacteristics method sets device characteristics for a specified device.
WdfDeviceInitSetCompanionEventCallbacks

This WdfDeviceInitSetCompanionEventCallbacks function article is for internal use only.
WdfDeviceInitSetDeviceClass

The WdfDeviceInitSetDeviceClass method specifies a GUID that identifies the device's device setup class.
WdfDeviceInitSetDeviceType

The WdfDeviceInitSetDeviceType method sets the device type for a specified device.
WdfDeviceInitSetExclusive

The WdfDeviceInitSetExclusive method indicates whether a specified device is an exclusive device.
WdfDeviceInitSetFileObjectConfig

The WdfDeviceInitSetFileObjectConfig method registers event callback functions and sets configuration information for the driver's framework file objects.
WdfDeviceInitSetIoInCallerContextCallback

The WdfDeviceInitSetIoInCallerContextCallback method registers a driver's EvtIoInCallerContext event callback function.
WdfDeviceInitSetIoType

The WdfDeviceInitSetIoType method sets the method or preference for how a driver will access the data buffers that are included in read and write requests for a specified device.
WdfDeviceInitSetIoTypeEx

The WdfDeviceInitSetIoTypeEx method sets the method or preference for how a driver will access the data buffers that are included in read and write requests, as well as device I/O control requests, for a specified device.
WdfDeviceInitSetPnpPowerEventCallbacks

The WdfDeviceInitSetPnpPowerEventCallbacks method registers a driver's Plug and Play and power management event callback functions.
WdfDeviceInitSetPowerInrush

The WdfDeviceInitSetPowerInrush method informs the power manager that the specified device requires an inrush of current when it starts.
WdfDeviceInitSetPowerNotPageable

The WdfDeviceInitSetPowerNotPageable method informs the power manager that the driver will not access pageable data while the system is transitioning between a sleeping state and the working (S0) state.
WdfDeviceInitSetPowerPageable

The WdfDeviceInitSetPowerPageable method informs the power manager that the driver must be able to access pageable data while the system is transitioning between a sleeping state and the working (S0) state.
WdfDeviceInitSetPowerPolicyEventCallbacks

The WdfDeviceInitSetPowerPolicyEventCallbacks method registers a driver's power policy event callback functions.
WdfDeviceInitSetPowerPolicyOwnership

The WdfDeviceInitSetPowerPolicyOwnership method establishes whether the calling driver is, or is not, the power policy owner for a specified device.
WdfDeviceInitSetReleaseHardwareOrderOnFailure

The WdfDeviceInitSetReleaseHardwareOrderOnFailure method specifies whether the framework calls the driver's EvtDeviceReleaseHardware callback function immediately after device failure, or waits until all child devices have been removed.
WdfDeviceInitSetRemoveLockOptions

The WdfDeviceInitSetRemoveLockOptions method causes the framework to acquire a remove lock before delivering an IRP of any type to the driver.
WdfDeviceInitSetRequestAttributes

The WdfDeviceInitSetRequestAttributes method sets object attributes that will be used for all of the framework request objects that the framework delivers to the driver from the device's I/O queues.
WdfDeviceInterfaceDereferenceNoOp

The WdfDeviceInterfaceDereferenceNoOp method can be used for driver-defined interfaces that do not require reference counts.
WdfDeviceInterfaceReferenceNoOp

The WdfDeviceInterfaceReferenceNoOp method can be used for driver-defined interfaces that do not require reference counts.
WdfDeviceMapIoSpace

The WdfDeviceMapIoSpace function maps the given physical address range to system address space and returns a pseudo base address.
WdfDeviceMiniportCreate

The WdfDeviceMiniportCreate method creates a framework device object that a miniport driver can use.
WdfDeviceOpenDevicemapKey

The WdfDeviceOpenDevicemapKey method opens the DEVICEMAP key and creates a framework registry-key object that represents the registry key.
WdfDeviceOpenRegistryKey

The WdfDeviceOpenRegistryKey method opens a device's hardware key or a driver's software key in the registry and creates a framework registry-key object that represents the registry key.
WdfDevicePostEvent

The WdfDevicePostEvent method asynchronously notifies applications that are waiting for the specified event from a driver.
WdfDeviceQueryInterfaceProperty

The WdfDeviceQueryInterfaceProperty method retrieves a specified device interface property.
WdfDeviceQueryProperty

The WdfDeviceQueryProperty method retrieves a specified device property.
WdfDeviceQueryPropertyEx

The WdfDeviceQueryPropertyEx method retrieves a specified device property.
WdfDeviceReadFromHardware

The WdfDeviceReadFromHardware method is used internally by the framework. Do not use.
WdfDeviceRemoveDependentUsageDeviceObject

The WdfDeviceRemoveDependentUsageDeviceObject method indicates that a specified device no longer depends on another device when the specified device is used to store special files.
WdfDeviceRemoveRemovalRelationsPhysicalDevice

The WdfDeviceRemoveRemovalRelationsPhysicalDevice method removes a specified device from the list of devices that must be removed when another specified device is removed.
WdfDeviceResumeIdle

The WdfDeviceResumeIdle method informs the framework that the specified device is not in use and can be placed in a device low-power state if it remains idle.
WdfDeviceResumeIdleWithTag

The WdfDeviceResumeIdleWithTag macro decrements the power reference count for a specified framework device object and assigns the driver's current file name and line number to the reference. The macro also assigns a tag value to the reference.
WdfDeviceRetrieveCompanionTarget

This WdfDeviceRetrieveCompanionTarget function article is for internal use only.
WdfDeviceRetrieveDeviceDirectoryString

Learn more about: WdfDeviceRetrieveDeviceDirectoryString function
WdfDeviceRetrieveDeviceInterfaceString

The WdfDeviceRetrieveDeviceInterfaceString method retrieves the symbolic link name that the operating system assigned to a device interface that the driver registered for a specified device.
WdfDeviceRetrieveDeviceName

The WdfDeviceRetrieveDeviceName method returns the device name for a specified device.
WdfDeviceSetAlignmentRequirement

The WdfDeviceSetAlignmentRequirement method registers the driver's preferred address alignment for the data buffers that the device uses during memory transfer operations.
WdfDeviceSetBusInformationForChildren

The WdfDeviceSetBusInformationForChildren method sets information about a bus that a bus driver supports. This information is available to the bus's child devices.
WdfDeviceSetCharacteristics

The WdfDeviceSetCharacteristics method sets device characteristics for a specified device.
WdfDeviceSetDeviceInterfaceState

The WdfDeviceSetDeviceInterfaceState method enables or disables a device interface for a specified device.
WdfDeviceSetDeviceInterfaceStateEx

Learn more about: WdfDeviceSetDeviceInterfaceStateEx
WdfDeviceSetDeviceState

The WdfDeviceSetDeviceState method sets the device state for a specified device.
WdfDeviceSetFailed

The WdfDeviceSetFailed method informs the framework that the driver encountered a hardware or software error that is associated with a specified device.
WdfDeviceSetPnpCapabilities

The WdfDeviceSetPnpCapabilities method reports a device's Plug and Play capabilities.
WdfDeviceSetPowerCapabilities

The WdfDeviceSetPowerCapabilities method reports a device's power capabilities.
WdfDeviceSetSpecialFileSupport

The WdfDeviceSetSpecialFileSupport method enables or disables a function driver's support for special files, for the specified device.
WdfDeviceSetStaticStopRemove

The WdfDeviceSetStaticStopRemove method informs the framework whether a device can be stopped and removed.
WdfDeviceStopIdle

The WdfDeviceStopIdle method informs the framework that the specified device must be placed in its working (D0) power state.
WdfDeviceStopIdleWithTag

The WdfDeviceStopIdleWithTag macro increments the power reference count for a specified framework device object and assigns the driver's current file name and line number to the reference. The macro also assigns a tag value to the reference.
WdfDeviceUnmapIoSpace

The WdfDeviceUnmapIoSpace function unmaps a specified range of physical addresses previously mapped by the WdfDeviceMapIoSpace function.
WdfDeviceWdmAssignPowerFrameworkSettings

The WdfDeviceWdmAssignPowerFrameworkSettings method registers power management framework (PoFx) settings for single-component devices.
WdfDeviceWdmDispatchIrp

The WdfDeviceWdmDispatchIrp method returns a dispatched IRP to the framework from EvtDeviceWdmIrpDispatch.
WdfDeviceWdmDispatchIrpToIoQueue

The WdfDeviceWdmDispatchIrpToIoQueue method forwards the IRP to a specified I/O queue.
WdfDeviceWdmDispatchPreprocessedIrp

The WdfDeviceWdmDispatchPreprocessedIrp method returns a preprocessed IRP to the framework.
WdfDeviceWdmGetAttachedDevice

The WdfDeviceWdmGetAttachedDevice method returns the next-lower WDM device object in the device stack.
WdfDeviceWdmGetDeviceObject

The WdfDeviceWdmGetDeviceObject method returns the Windows Driver Model (WDM) device object that is associated with a specified framework device object.
WdfDeviceWdmGetPhysicalDevice

The WdfDeviceWdmGetPhysicalDevice method retrieves the physical device's WDM PDO from the device stack.
WdfDeviceWriteToHardware

The WdfDeviceWriteToHardware method is used internally by the framework. Do not use.
WdfDevStateIsNP

The WdfDevStateIsNP method returns a Boolean value that indicates whether a specified power state or power policy state is a nonpageable state.
WdfDevStateNormalize

The WdfDevStateNormalize method removes extra bits from a specified framework state machine value so that the driver can use the value as an index into an array of machine states.
WdfDmaEnablerConfigureSystemProfile

The WdfDmaEnablerConfigureSystemProfile method configures the hardware-specific settings for a system-mode DMA enabler and completes the resource initialization.
WdfDmaEnablerCreate

The WdfDmaEnablerCreate method creates a DMA enabler object.
WdfDmaEnablerGetFragmentLength

The WdfDmaEnablerGetFragmentLength method returns the maximum transfer length that the operating system supports for a single DMA transfer.
WdfDmaEnablerGetMaximumLength

The WdfDmaEnablerGetMaximumLength method returns the maximum transfer length, for a single DMA transfer, that a device supports.
WdfDmaEnablerGetMaximumScatterGatherElements

The WdfDmaEnablerGetMaximumScatterGatherElements method returns the maximum number of scatter/gather elements that the device and driver support, for a specified DMA enabler object.
WdfDmaEnablerSetMaximumScatterGatherElements

The WdfDmaEnablerSetMaximumScatterGatherElements method sets the maximum number of scatter/gather elements that a device supports, for a specified DMA enabler object.
WdfDmaEnablerWdmGetDmaAdapter

The WdfDmaEnablerWdmGetDmaAdapter method returns a pointer to a WDM DMA_ADAPTER structure that is associated with a DMA enabler object.
WdfDmaTransactionAllocateResources

The WdfDmaTransactionAllocateResources method reserves a single-packet or system-mode DMA enabler for exclusive (and repeated) use with the specified transaction object.
WdfDmaTransactionCancel

The WdfDmaTransactionCancel method attempts to cancel a DMA transaction that is waiting for the allocation of map registers.
WdfDmaTransactionCreate

The WdfDmaTransactionCreate method creates a DMA transaction.
WdfDmaTransactionDmaCompleted

The WdfDmaTransactionDmaCompleted method notifies the framework that a device's DMA transfer operation is completed.
WdfDmaTransactionDmaCompletedFinal

The WdfDmaTransactionDmaCompletedFinal method notifies the framework that a device's DMA transfer operation has completed with an underrun condition and supplies the length of the completed transfer.
WdfDmaTransactionDmaCompletedWithLength

The WdfDmaTransactionDmaCompletedWithLength method notifies the framework that a device's DMA transfer operation is complete and supplies the length of the completed transfer.
WdfDmaTransactionExecute

The WdfDmaTransactionExecute method begins the execution of a specified DMA transaction.
WdfDmaTransactionFreeResources

The WdfDmaTransactionFreeResources method releases DMA resources that the driver previously allocated by calling WdfDmaTransactionAllocateResources.
WdfDmaTransactionGetBytesTransferred

The WdfDmaTransactionGetBytesTransferred method returns the total number of bytes that have been transferred for a specified DMA transaction.
WdfDmaTransactionGetCurrentDmaTransferLength

The WdfDmaTransactionGetCurrentDmaTransferLength method returns the size of the current DMA transfer.
WdfDmaTransactionGetDevice

The WdfDmaTransactionGetDevice method returns a handle to the framework device object that is associated with a specified DMA transaction.
WdfDmaTransactionGetRequest

The WdfDmaTransactionGetRequest method retrieves a handle to the framework request object that is associated with a specified DMA transaction.
WdfDmaTransactionGetTransferInfo

The WdfDmaTransactionGetTransferInfo method returns the number of map registers and scatter/gather list entries required for an initialized DMA transaction.
WdfDmaTransactionInitialize

The WdfDmaTransactionInitialize method initializes a specified DMA transaction.
WdfDmaTransactionInitializeUsingOffset

The WdfDmaTransactionInitializeUsingOffset method initializes a specified DMA transaction by using a byte offset into an MDL chain.
WdfDmaTransactionInitializeUsingRequest

The WdfDmaTransactionInitializeUsingRequest method initializes a specified DMA transaction by using the parameters of a specified I/O request.
WdfDmaTransactionRelease

The WdfDmaTransactionRelease method terminates a specified DMA transaction without deleting the associated DMA transaction object.
WdfDmaTransactionSetChannelConfigurationCallback

The WdfDmaTransactionSetChannelConfigurationCallback method registers a channel configuration event callback function for a system-mode DMA transaction.
WdfDmaTransactionSetDeviceAddressOffset

The WdfDmaTransactionSetDeviceAddressOffset method specifies the offset of the register that the system DMA controller will access when performing the DMA operation.
WdfDmaTransactionSetImmediateExecution

The WdfDmaTransactionSetImmediateExecution method marks the specified DMA transaction so that calls to WdfDmaTransactionExecute and WdfDmaTransactionAllocateResources initiate the transaction immediately or fail.
WdfDmaTransactionSetMaximumLength

The WdfDmaTransactionSetMaximumLength method sets the maximum length for the DMA transfers that are associated with a specified DMA transaction.
WdfDmaTransactionSetSingleTransferRequirement

The WdfDmaTransactionSetSingleTransferRequirement method specifies that a DMA transaction must complete in a single transfer.
WdfDmaTransactionSetTransferCompleteCallback

The WdfDmaTransactionSetTransferCompleteCallback method registers a transfer completion event callback function for a system-mode DMA transaction.
WdfDmaTransactionStopSystemTransfer

The WdfDmaTransactionStopSystemTransfer method attempts to stop a system-mode DMA transfer after the framework has called EvtProgramDma.
WdfDmaTransactionWdmGetTransferContext

The WdfDmaTransactionWdmGetTransferContext method retrieves the WDM transfer context that is associated with a DMA transaction.
WdfDpcCancel

The WdfDpcCancel method attempts to cancel the execution of a DPC object's scheduled EvtDpcFunc callback function.
WdfDpcCreate

The WdfDpcCreate method creates a framework DPC object and registers an EvtDpcFunc callback function.
WdfDpcEnqueue

The WdfDpcEnqueue method schedules the execution of a DPC object's EvtDpcFunc callback function.
WdfDpcGetParentObject

The WdfDpcGetParentObject method returns the parent object of a specified DPC object.
WdfDpcWdmGetDpc

The WdfDpcWdmGetDpc method returns a pointer to the KDPC structure that is associated with a specified framework DPC object.
WdfDriverCreate

The WdfDriverCreate method creates a framework driver object for the calling driver.
WdfDriverErrorReportApiMissing

Learn more about: WdfDriverErrorReportApiMissing function
WdfDriverGetRegistryPath

The WdfDriverGetRegistryPath method retrieves the path to the driver's registry key in the registry's Services tree.
WdfDriverIsVersionAvailable

The WdfDriverIsVersionAvailable method returns a Boolean value that indicates whether the driver is running with a specified version of the Kernel-Mode Driver Framework library.
WdfDriverMiniportUnload

The WdfDriverMiniportUnload method deletes a specified miniport driver's framework driver object.
WdfDriverOpenParametersRegistryKey

The WdfDriverOpenParametersRegistryKey method opens the driver's Parameters registry key and retrieves a handle to a framework registry-key object that represents the key.
WdfDriverOpenPersistentStateRegistryKey

Learn more about: WdfDriverOpenPersistentStateRegistryKey
WdfDriverRegisterTraceInfo

The WdfDriverRegisterTraceInfo method is reserved for internal use only.
WdfDriverRetrieveDriverDataDirectoryString

Learn more about: WdfDriverRetrieveDriverDataDirectoryString function
WdfDriverRetrieveVersionString

The WdfDriverRetrieveVersionString method retrieves a Unicode string that identifies the version of the Kernel-Mode Driver Framework that the driver is running with.
WdfDriverWdmGetDriverObject

The WdfDriverWdmGetDriverObject method retrieves a pointer to the Windows Driver Model (WDM) driver object that is associated with a specified framework driver object.
WdfFdoAddStaticChild

The WdfFdoAddStaticChild method adds a specified device to a function driver's list of child devices that have been identified by static enumeration.
WdfFdoGetDefaultChildList

The WdfFdoGetDefaultChildList method returns a handle to a specified device's default child list.
WdfFdoInitAllocAndQueryProperty

The WdfFdoInitAllocAndQueryProperty method allocates a buffer and retrieves a specified device property.
WdfFdoInitAllocAndQueryPropertyEx

The WdfFdoInitAllocAndQueryPropertyEx method allocates a buffer and retrieves a specified device property.
WdfFdoInitOpenRegistryKey

The WdfFdoInitOpenRegistryKey method opens a device's hardware key or a driver's software key in the registry and creates a framework registry-key object that represents the registry key.
WdfFdoInitQueryProperty

The WdfFdoInitQueryProperty method retrieves a specified device property.
WdfFdoInitQueryPropertyEx

The WdfFdoInitQueryPropertyEx method retrieves a specified device property.
WdfFdoInitSetDefaultChildListConfig

The WdfFdoInitSetDefaultChildListConfig method configures a bus driver's default child list.
WdfFdoInitSetEventCallbacks

The WdfFdoInitSetEventCallbacks method registers a framework-based function driver's event callback functions, for a specified device.
WdfFdoInitSetFilter

The WdfFdoInitSetFilter method identifies the calling driver as an upper-level or lower-level filter driver, for a specified device.
WdfFdoInitWdmGetPhysicalDevice

The WdfFdoInitWdmGetPhysicalDevice method retrieves a device's WDM physical device object (PDO).
WdfFdoLockStaticChildListForIteration

The WdfFdoLockStaticChildListForIteration method prepares the framework for retrieving items from the static child list that belongs to a specified parent device.
WdfFdoQueryForInterface

The WdfFdoQueryForInterface method obtains access to another driver's GUID-identified interface.
WdfFdoRetrieveNextStaticChild

The WdfFdoRetrieveNextStaticChild method retrieves a handle to the next framework device object in a list of child devices.
WdfFdoUnlockStaticChildListFromIteration

The WdfFdoUnlockStaticChildListFromIteration method unlocks the list of child devices for a specified device and processes any changes to the list that the driver made while the list was locked.
WdfFileObjectGetDevice

The WdfFileObjectGetDevice method returns the framework device object that is associated with a specified framework file object.
WdfFileObjectGetFileName

The WdfFileObjectGetFileName method returns the file name that a specified framework file object contains.
WdfFileObjectGetFlags

The WdfFileObjectGetFlags method returns the flags that a specified framework file object contains.
WdfFileObjectGetInitiatorProcessId

The WdfFileObjectGetInitiatorProcessId function retrieves the initiator process ID that is associated with a specified framework file object.
WdfFileObjectGetRelatedFileObject

The WdfFileObjectGetRelatedFileObject method retrieves the related file object to a framework file object.
WdfFileObjectWdmGetFileObject

The WdfFileObjectWdmGetFileObject method returns the Windows Driver Model (WDM) file object that is associated with a specified framework file object.
WdfGetDriver

The WdfGetDriver method returns a handle to the framework driver object that represents the calling driver.
WdfGetTriageInfo

The WdfGetTriageInfo method is reserved for internal use only.
WdfInterruptAcquireLock

The WdfInterruptAcquireLock method begins a code sequence that executes at the device's device interrupt request level (DIRQL) while holding an interrupt object's spin lock.
WdfInterruptCreate

The WdfInterruptCreate method creates a framework interrupt object.
WdfInterruptDisable

The WdfInterruptDisable method disables a specified device interrupt by calling the driver's EvtInterruptDisable callback function.
WdfInterruptEnable

The WdfInterruptEnable method enables a specified device interrupt by calling the driver's EvtInterruptEnable callback function.
WdfInterruptGetDevice

The WdfInterruptGetDevice method returns a handle to the framework device object that is associated with a specified framework interrupt object.
WdfInterruptGetInfo

The WdfInterruptGetInfo method retrieves information about a specified interrupt.
WdfInterruptQueueDpcForIsr

The WdfInterruptQueueDpcForIsr method queues a framework interrupt object's EvtInterruptDpc callback function for execution.
WdfInterruptQueueWorkItemForIsr

The WdfInterruptQueueWorkItemForIsr method queues a framework interrupt object's EvtInterruptWorkItem callback function for execution.
WdfInterruptReleaseLock

The WdfInterruptReleaseLock method ends a code sequence that executes at the device's DIRQL while holding an interrupt object's spin lock.
WdfInterruptReportActive

The WdfInterruptReportActive informs the system that the interrupt is active and the driver is ready to process interrupt requests on the associated lines.
WdfInterruptReportInactive

The WdfInterruptReportInactive method informs the system that the interrupt is no longer active and the driver is not expecting interrupt requests on the associated lines.
WdfInterruptSetExtendedPolicy

The WdfInterruptSetExtendedPolicy method specifies the interrupt priority, processor affinity, affinity policy, and processor group for a specified interrupt.
WdfInterruptSetPolicy

The WdfInterruptSetPolicy method specifies the interrupt priority, processor affinity, and affinity policy for a specified interrupt.
WdfInterruptSynchronize

The WdfInterruptSynchronize method executes a specified callback function at the device's DIRQL while holding an interrupt object's spin lock.
WdfInterruptTryToAcquireLock

The WdfInterruptTryToAcquireLock method attempts to acquire an interrupt object's passive lock.
WdfInterruptWdmGetInterrupt

The WdfInterruptWdmGetInterrupt method returns a pointer to the WDM interrupt object that is associated with a specified framework interrupt object.
WdfIoQueueAssignForwardProgressPolicy

The WdfIoQueueAssignForwardProgressPolicy method enables the framework's ability to guarantee forward progress for a specified I/O queue.
WdfIoQueueCreate

The WdfIoQueueCreate method creates and configures an I/O queue for a specified device.
WdfIoQueueDrain

The WdfIoQueueDrain method causes the framework to stop queuing I/O requests to an I/O queue, while allowing already-queued requests to be delivered and processed.
WdfIoQueueDrainSynchronously

The WdfIoQueueDrainSynchronously method causes the framework to stop queuing I/O requests to an I/O queue, while allowing already-queued requests to be delivered and processed. The method returns after all requests are completed or canceled.
WdfIoQueueFindRequest

The WdfIoQueueFindRequest method locates the next request in an I/O queue, or the next request that matches specified criteria, but does not grant ownership of the request to the driver.
WdfIoQueueGetDevice

The WdfIoQueueGetDevice method returns a handle to the framework device object that a specified I/O queue belongs to.
WdfIoQueueGetState

The WdfIoQueueGetState method returns the status of a specified I/O queue.
WdfIoQueuePurge

The WdfIoQueuePurge method causes the framework to stop queuing I/O requests to an I/O queue and to cancel unprocessed requests.
WdfIoQueuePurgeSynchronously

The WdfIoQueuePurgeSynchronously method causes the framework to stop queuing I/O requests to an I/O queue and to cancel unprocessed requests and driver-owned cancellable requests.
WdfIoQueueReadyNotify

The WdfIoQueueReadyNotify method registers (or deregisters) an event callback function that the framework calls each time a specified I/O queue that was previously empty receives one or more I/O requests.
WdfIoQueueRetrieveFoundRequest

The WdfIoQueueRetrieveFoundRequest method delivers a specified request to the driver, so that the driver can process the request.
WdfIoQueueRetrieveNextRequest

The WdfIoQueueRetrieveNextRequest method retrieves the next available I/O request from a specified I/O queue.
WdfIoQueueRetrieveRequestByFileObject

The WdfIoQueueRetrieveRequestByFileObject method retrieves the next available I/O request, from a specified I/O queue, that is associated with a specified file object.
WdfIoQueueStart

The WdfIoQueueStart method enables an I/O queue to start receiving and delivering new I/O requests.
WdfIoQueueStop

The WdfIoQueueStop method prevents an I/O queue from delivering I/O requests, but the queue receives and stores new requests.
WdfIoQueueStopAndPurge

The WdfIoQueueStopAndPurge method prevents an I/O queue from delivering new requests and cancels existing unprocessed requests and driver-owned cancellable requests, but the queue receives and stores new requests.
WdfIoQueueStopAndPurgeSynchronously

The WdfIoQueueStopAndPurgeSynchronously method prevents an I/O queue from delivering new I/O requests and causes the framework to cancel existing unprocessed requests and driver-owned cancellable requests, but the queue receives and stores new requests.
WdfIoQueueStopSynchronously

The WdfIoQueueStopSynchronously method prevents an I/O queue from delivering I/O requests, but the queue receives and stores new requests. The method returns after all delivered requests have been canceled or completed.
WdfIoResourceListAppendDescriptor

The WdfIoResourceListAppendDescriptor method adds a resource descriptor to the end of a resource requirements list's logical configuration.
WdfIoResourceListCreate

The WdfIoResourceListCreate method creates an empty logical configuration, which can be populated and added to a resource requirements list.
WdfIoResourceListGetCount

The WdfIoResourceListGetCount method returns the number of resource descriptors that are contained in a resource requirements list's logical configuration.
WdfIoResourceListGetDescriptor

The WdfIoResourceListGetDescriptor method returns a pointer to a resource descriptor that is contained in a resource requirements list's logical configuration.
WdfIoResourceListInsertDescriptor

The WdfIoResourceListInsertDescriptor method inserts a resource descriptor into a resource requirements list's logical configuration.
WdfIoResourceListRemove

The WdfIoResourceListRemove method removes a resource descriptor from a resource requirements list's logical configuration.
WdfIoResourceListRemoveByDescriptor

The WdfIoResourceListRemoveByDescriptor method removes a resource descriptor from a resource requirement list's logical configuration.
WdfIoResourceListUpdateDescriptor

The WdfIoResourceListUpdateDescriptor method updates a resource descriptor in a resource requirements list's logical configuration.
WdfIoResourceRequirementsListAppendIoResList

The WdfIoResourceRequirementsListAppendIoResList method adds a logical configuration to the end of a resource requirements list.
WdfIoResourceRequirementsListGetCount

The WdfIoResourceRequirementsListGetCount method returns the number of logical configurations that are contained in a resource requirements list.
WdfIoResourceRequirementsListGetIoResList

The WdfIoResourceRequirementsListGetIoResList method returns a handle to the framework resource-range-list object that represents a specified logical configuration in a specified resource requirements list.
WdfIoResourceRequirementsListInsertIoResList

The WdfIoResourceRequirementsListInsertIoResList method inserts a logical configuration into a resource requirements list.
WdfIoResourceRequirementsListRemove

The WdfIoResourceRequirementsListRemove method removes a logical configuration from a resource requirements list.
WdfIoResourceRequirementsListRemoveByIoResList

The WdfIoResourceRequirementsListRemoveByIoResList method removes a logical configuration from a resource requirements list.
WdfIoResourceRequirementsListSetInterfaceType

The WdfIoResourceRequirementsListSetInterfaceType method assigns a bus type to a resource requirements list.
WdfIoResourceRequirementsListSetSlotNumber

The WdfIoResourceRequirementsListSetSlotNumber method assigns a slot number to a resource requirements list.
WdfIoTargetAllocAndQueryTargetProperty

The WdfIoTargetAllocAndQueryTargetProperty method allocates a buffer and retrieves a specified device property for a specified I/O target.
WdfIoTargetClose

The WdfIoTargetClose method closes a specified remote I/O target.
WdfIoTargetCloseForQueryRemove

The WdfIoTargetCloseForQueryRemove method temporarily closes a specified remote I/O target because the target device might soon be removed.
WdfIoTargetCreate

The WdfIoTargetCreate method creates a remote I/O target for a specified device.
WdfIoTargetFormatRequestForInternalIoctl

The WdfIoTargetFormatRequestForInternalIoctl method builds an internal device control request for an I/O target but does not send the request.
WdfIoTargetFormatRequestForInternalIoctlOthers

The WdfIoTargetFormatRequestForInternalIoctlOthers method builds a non-standard internal device control request for an I/O target but does not send the request.
WdfIoTargetFormatRequestForIoctl

The WdfIoTargetFormatRequestForIoctl method builds a device control request for an I/O target but does not send the request.
WdfIoTargetFormatRequestForRead

The WdfIoTargetFormatRequestForRead method builds a read request for an I/O target but does not send the request.
WdfIoTargetFormatRequestForWrite

The WdfIoTargetFormatRequestForWrite method builds a write request for an I/O target but does not send the request.
WdfIoTargetGetDevice

The WdfIoTargetGetDevice method returns a handle to the framework device object that is the parent of the specified local or remote I/O target.
WdfIoTargetGetState

The WdfIoTargetGetState method returns state information for a local or remote I/O target.
WdfIoTargetOpen

The WdfIoTargetOpen method opens a remote I/O target so the driver can send I/O requests to it.
WdfIoTargetPurge

The WdfIoTargetPurge method cancels all I/O requests queued to a local, remote, or specialized I/O target and prevents any new I/O requests from being queued.
WdfIoTargetQueryForInterface

The WdfIoTargetQueryForInterface method obtains access to the GUID-identified, driver-defined interface of a remote I/O target.
WdfIoTargetQueryTargetProperty

The WdfIoTargetQueryTargetProperty method retrieves a specified device property for a specified I/O target.
WdfIoTargetSendInternalIoctlOthersSynchronously

The WdfIoTargetSendInternalIoctlOthersSynchronously method builds a non-standard internal device control request and sends it synchronously to an I/O target.
WdfIoTargetSendInternalIoctlSynchronously

The WdfIoTargetSendInternalIoctlSynchronously method builds an internal device control request and sends it synchronously to an I/O target.
WdfIoTargetSendIoctlSynchronously

The WdfIoTargetSendIoctlSynchronously method builds a device control request and sends it synchronously to an I/O target.
WdfIoTargetSendReadSynchronously

The WdfIoTargetSendReadSynchronously method builds a read request and sends it synchronously to an I/O target.
WdfIoTargetSendWriteSynchronously

The WdfIoTargetSendWriteSynchronously method builds a write request and sends it synchronously to an I/O target.
WdfIoTargetStart

The WdfIoTargetStart method starts sending queued requests to a local or remote I/O target.
WdfIoTargetStop

The WdfIoTargetStop method stops sending queued requests to a local or remote I/O target.
WdfIoTargetWdmGetTargetDeviceObject

The WdfIoTargetWdmGetTargetDeviceObject method returns a pointer to the Windows Driver Model (WDM) device object that is associated with a specified local or remote I/O target.
WdfIoTargetWdmGetTargetFileHandle

The WdfIoTargetWdmGetTargetFileHandle method returns a handle to the file that is associated with a specified remote I/O target.
WdfIoTargetWdmGetTargetFileObject

The WdfIoTargetWdmGetTargetFileObject method returns a pointer to the Windows Driver Model (WDM) file object that is associated with a specified remote I/O target.
WdfIoTargetWdmGetTargetPhysicalDevice

The WdfIoTargetWdmGetTargetPhysicalDevice method returns a pointer to the Windows Driver Model (WDM) physical device object (PDO) that represents a remote I/O target's device.
WdfLookasideListCreate

The WdfLookasideListCreate method creates a lookaside-list object, from which the driver can obtain memory objects.
WdfMemoryAssignBuffer

The WdfMemoryAssignBuffer method assigns a specified buffer to a memory object that a driver created by calling WdfMemoryCreatePreallocated.
WdfMemoryCopyFromBuffer

The WdfMemoryCopyFromBuffer method copies the contents of a specified source buffer into a specified memory object's buffer.
WdfMemoryCopyToBuffer

The WdfMemoryCopyToBuffer method copies the contents of a specified memory object's buffer into a specified destination buffer.
WdfMemoryCreate

The WdfMemoryCreate method creates a framework memory object and allocates a memory buffer of a specified size.
WdfMemoryCreateFromLookaside

The WdfMemoryCreateFromLookaside method creates a framework memory object and obtains a memory buffer from a specified lookaside list.
WdfMemoryCreatePreallocated

The WdfMemoryCreatePreallocated method creates a framework memory object for a driver-supplied memory buffer.
WdfMemoryGetBuffer

The WdfMemoryGetBuffer method returns a pointer to the buffer that is associated with a specified memory object.
WdfObjectAcquireLock

The WdfObjectAcquireLock method acquires an object's synchronization lock.
WdfObjectAllocateContext

The WdfObjectAllocateContext method allocates context space for a specified framework object.
WdfObjectContextGetObject

The WdfObjectContextGetObject method returns a handle to the framework object that a specified context space belongs to.
WdfObjectCreate

The WdfObjectCreate method creates a general framework object.
WdfObjectDelete

The WdfObjectDelete method deletes a framework object and its child objects.
WdfObjectDereferenceActual

The WdfObjectDereferenceActual method decrements the reference count for a specified framework object and assigns a tag value, line number, and file name to the reference.
WdfObjectGetTypedContextWorker

The WdfObjectGetTypedContextWorker method is reserved for internal use only. Use the WdfObjectGetTypedContext macro instead.
WdfObjectQuery

The WdfObjectQuery method is not implemented.
WdfObjectReferenceActual

The WdfObjectReferenceActual method increments the reference count for a specified framework object and assigns a tag value, line number, and file name to the reference.
WdfObjectReleaseLock

The WdfObjectReleaseLock method releases an object's synchronization lock.
WdfPdoAddEjectionRelationsPhysicalDevice

The WdfPdoAddEjectionRelationsPhysicalDevice method indicates that a specified device is ejected when another specified device is ejected.
WdfPdoClearEjectionRelationsDevices

The WdfPdoClearEjectionRelationsDevices method removes all devices from the list of devices that must be ejected when a specified device is ejected.
WdfPdoGetParent

The WdfPdoGetParent method returns a handle to the framework device object that represents the parent device of a specified device.
WdfPdoInitAddCompatibleID

The WdfPdoInitAddCompatibleID method adds a compatible ID to the list of compatible IDs for a child device.
WdfPdoInitAddDeviceText

The WdfPdoInitAddDeviceText method adds a device description and device location to a device, for a specified locale.
WdfPdoInitAddHardwareID

The WdfPdoInitAddHardwareID method adds a hardware ID to the list of hardware IDs for a child device.
WdfPdoInitAllocate

The WdfPdoInitAllocate method allocates a WDFDEVICE_INIT structure for a framework-based bus driver, which the bus driver uses when reporting a new device.
WdfPdoInitAllowForwardingRequestToParent

The WdfPdoInitAllowForwardingRequestToParent method enables a driver's ability to call WdfRequestForwardToParentDeviceIoQueue.
WdfPdoInitAssignContainerID

The WdfPdoInitAssignContainerID method updates the container ID for a child device.
WdfPdoInitAssignDeviceID

The WdfPdoInitAssignDeviceID method updates the device ID for a child device.
WdfPdoInitAssignInstanceID

The WdfPdoInitAssignInstanceID method updates the instance ID for a child device.
WdfPdoInitAssignRawDevice

The WdfPdoInitAssignRawDevice method indicates that the calling driver can support a specified device in raw mode.
WdfPdoInitRemovePowerDependencyOnParent

Learn more about: WdfPdoInitRemovePowerDependencyOnParent
WdfPdoInitSetDefaultLocale

The WdfPdoInitSetDefaultLocale method sets a device's default locale.
WdfPdoInitSetEventCallbacks

The WdfPdoInitSetEventCallbacks method registers a bus driver's event callback functions.
WdfPdoMarkMissing

The WdfPdoMarkMissing method informs the framework that a device is no longer accessible.
WdfPdoRemoveEjectionRelationsPhysicalDevice

The WdfPdoRemoveEjectionRelationsPhysicalDevice method removes a specified device from the list of devices that must be ejected when another specified device is ejected.
WdfPdoRequestEject

The WdfPdoRequestEject method informs the framework that a specified device is about to be ejected from its docking station.
WdfPdoRetrieveAddressDescription

The WdfPdoRetrieveAddressDescription method retrieves the address description that is associated with a specified framework device object.
WdfPdoRetrieveIdentificationDescription

The WdfPdoRetrieveIdentificationDescription method retrieves the identification description that is associated with a specified framework device object.
WdfPdoUpdateAddressDescription

The WdfPdoUpdateAddressDescription method updates the address description that is associated with a specified framework device object.
WdfPostDeviceInstall

The co-installer's WdfPostDeviceInstall function performs any operations that the co-installer might require after a non-Plug and Play (PnP) driver's installer has created the driver's kernel-mode service.
WdfPostDeviceRemove

The co-installer's WdfPostDeviceRemove function performs any operations that the co-installer might require after a non-Plug and Play (PnP) driver's installer has deleted the driver's kernel-mode service.
WdfPreDeviceInstall

The co-installer's WdfPreDeviceInstall function performs any operations that the co-installer might require before a non-Plug and Play (PnP) driver's installer creates the driver's kernel-mode service.
WdfPreDeviceInstallEx

The co-installer's WdfPreDeviceInstallEx function performs any operations that the co-installer might require before a non-Plug and Play (PnP) driver's installer creates the driver's kernel-mode service.
WdfPreDeviceRemove

The co-installer's WdfPreDeviceRemove function performs any operations that the co-installer might require before a non-Plug and Play (PnP) driver's installer deletes the driver's kernel-mode service.
WdfRegistryAssignMemory

The WdfRegistryAssignMemory method assigns data that is contained in a specified memory buffer to a specified value name in the registry.
WdfRegistryAssignMultiString

The WdfRegistryAssignMultiString method assigns a set of strings to a specified value name in the registry. The strings are contained in a specified collection of framework string objects.
WdfRegistryAssignString

The WdfRegistryAssignString method assigns a string to a specified value name in the registry. The string is contained in a specified framework string object.
WdfRegistryAssignULong

The WdfRegistryAssignULong method assigns a specified unsigned long word value to a specified value name in the registry.
WdfRegistryAssignUnicodeString

The WdfRegistryAssignUnicodeString method assigns a specified Unicode string to a specified value name in the registry.
WdfRegistryAssignValue

The WdfRegistryAssignValue method assigns specified data to a specified value name in the registry.
WdfRegistryClose

The WdfRegistryClose method closes the registry key that is associated with a specified framework registry-key object and then deletes the registry-key object.
WdfRegistryCreateKey

The WdfRegistryCreateKey method creates and opens a specified registry key, or just opens the key if it already exists, and creates a framework registry-key object that represents the registry key.
WdfRegistryOpenKey

The WdfRegistryOpenKey method opens a specified registry key and creates a framework registry-key object that represents the registry key.
WdfRegistryQueryMemory

The WdfRegistryQueryMemory method retrieves the data that is currently assigned to a specified registry value, stores the data in a framework-allocated buffer, and creates a framework memory object to represent the buffer.
WdfRegistryQueryMultiString

The WdfRegistryQueryMultiString method retrieves the strings that are currently assigned to a specified multi-string registry value, creates a framework string object for each string, and adds each string object to a specified object collection.
WdfRegistryQueryString

The WdfRegistryQueryString method retrieves the string data that is currently assigned to a specified registry string value and assigns the string to a specified framework string object.
WdfRegistryQueryULong

The WdfRegistryQueryULong method retrieves the unsigned long word (REG_DWORD) data that is currently assigned to a specified registry value and copies the data to a specified location.
WdfRegistryQueryUnicodeString

The WdfRegistryQueryUnicodeString method retrieves the string data that is currently assigned to a specified registry string value and copies the string to a specified UNICODE_STRING structure.
WdfRegistryQueryValue

The WdfRegistryQueryValue method retrieves the data that is currently assigned to a specified registry value.
WdfRegistryRemoveKey

The WdfRegistryRemoveKey method removes the registry key that is associated with a specified framework registry-key object and then deletes the registry-key object.
WdfRegistryRemoveValue

The WdfRegistryRemoveValue method removes a specified value and its data from a specified registry key.
WdfRegistryWdmGetHandle

The WdfRegistryWdmGetHandle method returns a Windows Driver Model (WDM) handle to the registry key that a specified framework registry-key object represents.
WdfRequestAllocateTimer

The WdfRequestAllocateTimer method allocates a timer for a specified I/O request.
WdfRequestCancelSentRequest

The WdfRequestCancelSentRequest method attempts to cancel an I/O request that the caller previously submitted to an I/O target.
WdfRequestChangeTarget

The WdfRequestChangeTarget method verifies that a specified I/O request can be sent to a specified I/O target.
WdfRequestComplete

The WdfRequestComplete method completes a specified I/O request and supplies a completion status.
WdfRequestCompleteWithInformation

The WdfRequestCompleteWithInformation method stores completion information and then completes a specified I/O request with a supplied completion status.
WdfRequestCompleteWithPriorityBoost

The WdfRequestCompleteWithPriorityBoost method completes a specified I/O request and supplies a completion status. It also specifies a value that the system can use to boost the run-time priority of the thread that requested the I/O operation.
WdfRequestCreate

The WdfRequestCreate method creates an empty framework request object.
WdfRequestCreateFromIrp

The WdfRequestCreateFromIrp method creates a framework request object from a specified WDM IRP.
WdfRequestFormatRequestUsingCurrentType

The WdfRequestFormatRequestUsingCurrentType method formats a specified I/O request so that the driver can forward it, unmodified, to the driver's local I/O target.
WdfRequestForwardToIoQueue

The WdfRequestForwardToIoQueue method requeues an I/O request to one of the calling driver's I/O queues.
WdfRequestForwardToParentDeviceIoQueue

The WdfRequestForwardToParentDeviceIoQueue method requeues an I/O request from a child device's I/O queue to a specified I/O queue of the child's parent device.
WdfRequestGetCompletionParams

The WdfRequestGetCompletionParams method retrieves the I/O completion parameters that are associated with a specified framework request object.
WdfRequestGetEffectiveIoType

The WdfRequestGetEffectiveIoType method returns the buffer access method that UMDF is using for the data buffers of the specified I/O request.
WdfRequestGetFileObject

The WdfRequestGetFileObject method retrieves the framework file object that is associated with a specified I/O request.
WdfRequestGetInformation

The WdfRequestGetInformation method returns completion status information for a specified I/O request.
WdfRequestGetIoQueue

The WdfRequestGetIoQueue method returns a handle to the framework queue object from which a specified I/O request was delivered.
WdfRequestGetParameters

The WdfRequestGetParameters method retrieves the parameters that are associated with a specified framework request object.
WdfRequestGetRequestorMode

The WdfRequestGetRequestorMode method returns the processor access mode of the originator of a specified I/O request.
WdfRequestGetRequestorProcessId

The WdfRequestGetRequestorProcessId method retrieves the identifier of the process that sent an I/O request.
WdfRequestGetStatus

The WdfRequestGetStatus method returns the status of an I/O request.
WdfRequestGetUserModeDriverInitiatedIo

The WdfRequestGetUserModeDriverInitiatedIo method determines whether an I/O request is marked as initiated by a UMDF driver.
WdfRequestImpersonate

The WdfRequestImpersonate method registers a driver-supplied event callback function that the framework should call for impersonation.
WdfRequestIsCanceled

The WdfRequestIsCanceled method determines whether the I/O manager has attempted to cancel a specified I/O request.
WdfRequestIsFrom32BitProcess

The WdfRequestIsFrom32BitProcess method checks whether the originator of a specified I/O request is a 32-bit user-mode application.
WdfRequestIsFromUserModeDriver

The WdfRequestIsFromUserModeDriver method indicates whether an I/O request came from a user-mode driver or an application.
WdfRequestIsReserved

The WdfRequestIsReserved method determines whether a specified request object is one that the framework reserved to support guaranteed forward progress during low-memory situations.
WdfRequestMarkCancelable

The WdfRequestMarkCancelable method enables cancellation of a specified I/O request.
WdfRequestMarkCancelableEx

The WdfRequestMarkCancelableEx method enables cancellation of a specified I/O request.
WdfRequestProbeAndLockUserBufferForRead

The WdfRequestProbeAndLockUserBufferForRead method verifies that an I/O request's user-mode buffer is readable, and then it locks the buffer's physical memory pages so drivers in the driver stack can read the buffer.
WdfRequestProbeAndLockUserBufferForWrite

The WdfRequestProbeAndLockUserBufferForWrite method verifies that an I/O request's user-mode buffer is writeable, and then it locks the buffer's physical memory pages so drivers in the driver stack can write into the buffer.
WdfRequestRequeue

The WdfRequestRequeue method returns an I/O request to the head of the I/O queue from which it was delivered to the driver.
WdfRequestRetrieveActivityId

The WdfRequestRetrieveActivityId method retrieves the current activity identifier associated with an I/O request.
WdfRequestRetrieveInputBuffer

The WdfRequestRetrieveInputBuffer method retrieves an I/O request's input buffer.
WdfRequestRetrieveInputMemory

The WdfRequestRetrieveInputMemory method retrieves a handle to a framework memory object that represents an I/O request's input buffer.
WdfRequestRetrieveInputWdmMdl

The WdfRequestRetrieveInputWdmMdl method retrieves a memory descriptor list (MDL) that represents an I/O request's input buffer.
WdfRequestRetrieveOutputBuffer

The WdfRequestRetrieveOutputBuffer method retrieves an I/O request's output buffer.
WdfRequestRetrieveOutputMemory

The WdfRequestRetrieveOutputMemory method retrieves a handle to a framework memory object that represents an I/O request's output buffer.
WdfRequestRetrieveOutputWdmMdl

The WdfRequestRetrieveOutputWdmMdl method retrieves a memory descriptor list (MDL) that represents an I/O request's output buffer.
WdfRequestRetrieveUnsafeUserInputBuffer

The WdfRequestRetrieveUnsafeUserInputBuffer method retrieves an I/O request's input buffer, if the request's technique for accessing data buffers is neither buffered nor direct I/O.
WdfRequestRetrieveUnsafeUserOutputBuffer

The WdfRequestRetrieveUnsafeUserOutputBuffer method retrieves an I/O request's output buffer, if the request's technique for accessing data buffers is neither buffered nor direct I/O.
WdfRequestReuse

The WdfRequestReuse method reinitializes a framework request object so that it can be reused.
WdfRequestSend

The WdfRequestSend method sends a specified I/O request to a specified I/O target.
WdfRequestSetActivityId

The WdfRequestSetActivityId method associates an activity identifier with an I/O request.
WdfRequestSetCompletionRoutine

The WdfRequestSetCompletionRoutine method registers or deregisters a completion routine for the specified framework request object.
WdfRequestSetInformation

The WdfRequestSetInformation method sets completion status information for a specified I/O request.
WdfRequestSetUserModeDriverInitiatedIo

The WdfRequestSetUserModeDriverInitiatedIo method indicates to kernel-mode drivers that sit below the UMDF driver in the same device stack that a particular request should be treated as though it came from a UMDF driver.
WdfRequestStopAcknowledge

The WdfRequestStopAcknowledge method informs the framework that the driver has stopped processing a specified I/O request.
WdfRequestUnmarkCancelable

The WdfRequestUnmarkCancelable method disables cancellation of a specified I/O request.
WdfRequestWdmFormatUsingStackLocation

The WdfRequestWdmFormatUsingStackLocation method formats an I/O request by copying the contents of a specified WDM I/O stack location structure to the next stack location in the request.
WdfRequestWdmGetIrp

The WdfRequestWdmGetIrp method returns the WDM IRP structure that is associated with a specified framework request object.
WdfSpinLockAcquire

The WdfSpinLockAcquire method acquires a specified spin lock.
WdfSpinLockCreate

The WdfSpinLockCreate method creates a framework spin-lock object.
WdfSpinLockRelease

The WdfSpinLockAcquire method releases a specified spin lock.
WdfStringCreate

The WdfStringCreate method creates a framework string object and optionally assigns a specified Unicode string to the object.
WdfStringGetUnicodeString

The WdfStringGetUnicodeString method retrieves the Unicode string that is assigned to a specified framework string object.
WdfTimerCreate

The WdfTimerCreate method creates a framework timer object.
WdfTimerGetParentObject

The WdfTimerGetParentObject method returns a handle to the parent object of a specified framework timer object.
WdfTimerStart

The WdfTimerStart method starts a timer's clock.
WdfTimerStop

The WdfTimerStop method stops a timer's clock.
WdfUsbInterfaceGetConfiguredPipe

The WdfUsbInterfaceGetConfiguredPipe method returns a handle to the framework pipe object that is associated with a specified USB device interface and pipe index. Optionally, the method also returns information about the pipe.
WdfUsbInterfaceGetConfiguredSettingIndex

The WdfUsbInterfaceGetConfiguredSettingIndex method returns the alternate setting index that is currently selected for a specified USB device interface.
WdfUsbInterfaceGetDescriptor

The WdfUsbInterfaceGetDescriptor method retrieves the USB interface descriptor that is associated with a specified alternate setting of a specified USB interface.
WdfUsbInterfaceGetEndpointInformation

The WdfUsbInterfaceGetEndpointInformation method retrieves information about a specified USB device endpoint and its associated pipe.
WdfUsbInterfaceGetInterfaceNumber

The WdfUsbInterfaceGetInterfaceNumber method returns the interface number of a specified USB interface object.
WdfUsbInterfaceGetNumConfiguredPipes

The WdfUsbInterfaceGetNumConfiguredPipes method returns the number of pipes that are configured for a specified USB device interface.
WdfUsbInterfaceGetNumEndpoints

The WdfUsbInterfaceGetNumEndpoints method returns the number of endpoints that are associated with a specified alternate setting of a specified USB interface.
WdfUsbInterfaceGetNumSettings

The WdfUsbInterfaceGetNumSettings method returns the number of alternate settings that a specified USB interface supports.
WdfUsbInterfaceSelectSetting

The WdfUsbInterfaceSelectSetting method selects a specified alternate setting for a specified USB interface.
WdfUsbTargetDeviceAllocAndQueryString

The WdfUsbTargetDeviceAllocAndQueryString method allocates a buffer, then it retrieves the Unicode string that is associated with a specified USB device and descriptor index value.
WdfUsbTargetDeviceCreate

The WdfUsbTargetDeviceCreate method creates a framework USB device object for a specified framework device object and opens the USB device for I/O operations.
WdfUsbTargetDeviceCreateIsochUrb

The WdfUsbTargetDeviceCreateIsochUrb method allocates an isochronous USB request block (URB).
WdfUsbTargetDeviceCreateUrb

The WdfUsbTargetDeviceCreateUrb method allocates a USB request block (URB).
WdfUsbTargetDeviceCreateWithParameters

The WdfUsbTargetDeviceCreateWithParameters method creates a framework USB device object for a specified framework device object and opens the USB device for I/O operations.
WdfUsbTargetDeviceCyclePortSynchronously

The WdfUsbTargetDeviceCyclePortSynchronously method power-cycles the USB port to which a specified device is attached.
WdfUsbTargetDeviceFormatRequestForControlTransfer

The WdfUsbTargetDeviceFormatRequestForControlTransfer method builds a USB control transfer request, but it does not send the request.
WdfUsbTargetDeviceFormatRequestForCyclePort

The WdfUsbTargetDeviceFormatRequestForCyclePort method builds a power-cycle request for the port to which a specified device is attached, but it does not send the request.
WdfUsbTargetDeviceFormatRequestForString

The WdfUsbTargetDeviceFormatRequestForString method builds a request for the USB string descriptor that is associated with a USB device's string index value.
WdfUsbTargetDeviceFormatRequestForUrb

The WdfUsbTargetDeviceFormatRequestForUrb method builds an USB request for a specified USB device, using request parameters that are described by a URB, but it does not send the request.
WdfUsbTargetDeviceGetDeviceDescriptor

The WdfUsbTargetDeviceGetDeviceDescriptor method retrieves the USB device descriptor for the USB device that is associated with a specified framework USB device object.
WdfUsbTargetDeviceGetInterface

The WdfUsbTargetDeviceGetInterface method returns a handle to the framework USB interface object that is associated with a specified interface index.
WdfUsbTargetDeviceGetIoTarget

The WdfUsbTargetDeviceGetIoTarget method returns a handle to the I/O target object that is associated with a specified USB device.
WdfUsbTargetDeviceGetNumInterfaces

The WdfUsbTargetDeviceGetNumInterfaces method returns the number of USB device interfaces that are supported by a specified USB device.
WdfUsbTargetDeviceIsConnectedSynchronous

The WdfUsbTargetDeviceIsConnectedSynchronous method determines if the specified USB device is connected.
WdfUsbTargetDeviceQueryString

The WdfUsbTargetDeviceQueryString method retrieves the Unicode string that is associated with a specified USB device and descriptor index value.
WdfUsbTargetDeviceQueryUsbCapability

The WdfUsbTargetDeviceQueryUsbCapability method determines whether the host controller and USB driver stack support a specific capability.
WdfUsbTargetDeviceResetPortSynchronously

The WdfUsbTargetDeviceResetPortSynchronously method resets the USB port that is associated with the specified USB device.
WdfUsbTargetDeviceRetrieveConfigDescriptor

The WdfUsbTargetDeviceRetrieveConfigDescriptor method retrieves the USB configuration descriptor for the USB device that is associated with a specified framework USB device object.
WdfUsbTargetDeviceRetrieveCurrentFrameNumber

The WdfUsbTargetDeviceRetrieveCurrentFrameNumber method retrieves the current USB frame number.
WdfUsbTargetDeviceRetrieveInformation

The WdfUsbTargetDeviceRetrieveInformation method retrieves information about the USB device that is associated with a specified framework USB device object.
WdfUsbTargetDeviceSelectConfig

The WdfUsbTargetDeviceSelectConfig method selects a USB configuration for a device, or it deconfigures the device.
WdfUsbTargetDeviceSendControlTransferSynchronously

The WdfUsbTargetDeviceSendControlTransferSynchronously method builds a USB control transfer request and sends it synchronously to an I/O target.
WdfUsbTargetDeviceSendUrbSynchronously

The WdfUsbTargetDeviceSendUrbSynchronously method sends a USB request synchronously to a specified USB device, using request parameters that are described by a URB.
WdfUsbTargetDeviceWdmGetConfigurationHandle

The WdfUsbTargetDeviceWdmGetConfigurationHandle method returns the USBD_CONFIGURATION_HANDLE-typed handle that is associated with the current configuration of a specified USB device.
WdfUsbTargetPipeAbortSynchronously

The WdfUsbTargetPipeAbortSynchronously method builds an abort request and sends it synchronously to a specified USB pipe.
WdfUsbTargetPipeConfigContinuousReader

The WdfUsbTargetPipeConfigContinuousReader method configures the framework to continuously read from a specified USB pipe.
WdfUsbTargetPipeFormatRequestForAbort

The WdfUsbTargetPipeFormatRequestForAbort method builds an abort request for a specified USB pipe, but it does not send the request.
WdfUsbTargetPipeFormatRequestForRead

The WdfUsbTargetPipeFormatRequestForRead method builds a read request for a USB input pipe, but it does not send the request.
WdfUsbTargetPipeFormatRequestForReset

The WdfUsbTargetPipeFormatRequestForReset method builds a reset request for a specified USB pipe, but it does not send the request.
WdfUsbTargetPipeFormatRequestForUrb

The WdfUsbTargetPipeFormatRequestForUrb method builds an USB request for a specified USB pipe, using request parameters that a specified URB describes, but it does not send the request.
WdfUsbTargetPipeFormatRequestForWrite

The WdfUsbTargetPipeFormatRequestForWrite method builds a write request for a USB output pipe, but it does not send the request.
WdfUsbTargetPipeGetInformation

The WdfUsbTargetPipeGetInformation method retrieves information about a USB pipe and its endpoint.
WdfUsbTargetPipeGetIoTarget

The WdfUsbTargetPipeGetIoTarget method returns a handle to the I/O target object that is associated with a specified USB pipe.
WdfUsbTargetPipeGetType

The WdfUsbTargetPipeGetType method returns the type of a specified USB pipe.
WdfUsbTargetPipeIsInEndpoint

The WdfUsbTargetPipeIsInEndpoint method determines whether a specified USB pipe is connected to an input endpoint.
WdfUsbTargetPipeIsOutEndpoint

The WdfUsbTargetPipeIsOutEndpoint method determines whether a specified USB pipe is connected to an output endpoint.
WdfUsbTargetPipeReadSynchronously

The WdfUsbTargetPipeReadSynchronously method builds a read request and sends it synchronously to a specified USB input pipe.
WdfUsbTargetPipeResetSynchronously

The WdfUsbTargetPipeResetSynchronously method builds a reset request and sends it synchronously to a specified USB pipe.
WdfUsbTargetPipeSendUrbSynchronously

The WdfUsbTargetPipeSendUrbSynchronously method builds an USB request for a specified USB pipe, using request parameters that a specified URB describes.
WdfUsbTargetPipeSetNoMaximumPacketSizeCheck

The WdfUsbTargetPipeSetNoMaximumPacketSizeCheck method disables the framework's test of whether the size of a driver's read buffer is a multiple of a USB pipe's maximum packet size.
WdfUsbTargetPipeWdmGetPipeHandle

The WdfUsbTargetPipeWdmGetPipeHandle method returns the USBD_PIPE_HANDLE-typed handle that is associated with a specified framework pipe object.
WdfUsbTargetPipeWriteSynchronously

The WdfUsbTargetPipeWriteSynchronously method builds a write request and sends it synchronously to a specified USB output pipe.
WdfVerifierDbgBreakPoint

The WdfVerifierDbgBreakPoint function breaks into a kernel debugger, if a debugger is running.
WdfVerifierKeBugCheck

The WdfVerifierKeBugCheck function creates a bug check.
WdfWaitLockAcquire

The WdfWaitLockAcquire method acquires a specified wait lock.
WdfWaitLockCreate

The WdfWaitLockCreate method creates a framework wait-lock object.
WdfWaitLockRelease

The WdfWaitLockRelease method releases a specified wait lock.
WdfWdmDeviceGetWdfDeviceHandle

The WdfWdmDeviceGetWdfDeviceHandle method returns a handle to the framework device object that is associated with a specified WDM device object.
WdfWdmDriverGetWdfDriverHandle

The WdfWdmDriverGetWdfDriverHandle method returns a handle to the framework driver object that is associated with a specified Windows Driver Model (WDM) driver object.
WdfWmiInstanceCreate

The WdfWmiInstanceCreate method creates a WMI instance object that represents an instance of a WMI data provider.
WdfWmiInstanceDeregister

The WdfWmiInstanceDeregister method deregisters a specified instance of a WMI data provider from the system's WMI service.
WdfWmiInstanceFireEvent

The WdfWmiInstanceFireEvent method sends a WMI event to WMI clients that have registered to receive event notification.
WdfWmiInstanceGetDevice

The WdfWmiInstanceGetDevice method returns a handle to the framework device object that is associated with a specified WMI instance object.
WdfWmiInstanceGetProvider

The WdfWmiInstanceGetProvider method returns a handle to the WMI provider object that is the parent object of a specified WMI instance object.
WdfWmiInstanceRegister

The WdfWmiInstanceRegister method registers a specified instance of a WMI data provider with the system's WMI service.
WdfWmiProviderCreate

The WdfWmiProviderCreate method creates a WMI provider object that represents a WMI data block.
WdfWmiProviderGetDevice

The WdfWmiProviderGetDevice method returns a handle to the framework device object that is the parent of a specified WMI provider object.
WdfWmiProviderGetTracingHandle

The WdfWmiProviderGetTracingHandle method returns a handle to the event logger of a WPP software tracing session.
WdfWmiProviderIsEnabled

The WdfWmiProviderIsEnabled method determines if either data collection or event notification is enabled for a specified WMI data provider.
WdfWorkItemCreate

The WdfWorkItemCreate method creates a framework work-item object, which can subsequently be added to the system's work-item queue.
WdfWorkItemEnqueue

The WdfWorkItemEnqueue method adds a specified framework work-item object to the system's work-item queue.
WdfWorkItemFlush

The WdfWorkItemFlush method returns after a specified work item has been serviced.
WdfWorkItemGetParentObject

The WdfWorkItemGetParentObject method returns the framework object that a specified work item is associated with.
WRITE_PORT_BUFFER_UCHAR

The WRITE_PORT_BUFFER_UCHAR function writes a number of bytes from a buffer to the specified port.
WRITE_PORT_BUFFER_ULONG

The WRITE_PORT_BUFFER_ULONG function writes a number of ULONG values from a buffer to the specified port address.
WRITE_PORT_BUFFER_USHORT

The WRITE_PORT_BUFFER_USHORT function writes a number of USHORT values from a buffer to the specified port address.
WRITE_PORT_UCHAR

The WRITE_PORT_UCHAR function writes a byte to the specified port address.
WRITE_PORT_ULONG

The WRITE_PORT_ULONG function writes a ULONG value to the specified port address.
WRITE_PORT_USHORT

The WRITE_PORT_USHORT function writes a USHORT value to the specified port address.
WRITE_REGISTER_BUFFER_UCHAR

The WRITE_REGISTER_BUFFER_UCHAR function writes a number of bytes from a buffer to the specified register.
WRITE_REGISTER_BUFFER_ULONG

The WRITE_REGISTER_BUFFER_ULONG function writes a number of ULONG values from a buffer to the specified register.
WRITE_REGISTER_BUFFER_ULONG64

The WRITE_REGISTER_BUFFER_ULONG64 function (wudfddi_hwaccess.h) writes a number of ULONG64 values from a buffer to the specified register.
WRITE_REGISTER_BUFFER_USHORT

The WRITE_REGISTER_BUFFER_USHORT function (wudfddi_hwaccess.h) writes a number of USHORT values from a buffer to the specified register.
WRITE_REGISTER_UCHAR

The WRITE_REGISTER_UCHAR function (wudfddi_hwaccess.h) writes a byte to the specified register address.
WRITE_REGISTER_ULONG

The WRITE_REGISTER_ULONG function (wudfddi_hwaccess.h) writes a ULONG value to the specified register address.
WRITE_REGISTER_ULONG64

The WRITE_REGISTER_ULONG64 function (wudfddi_hwaccess.h) writes a ULONG64 value to the specified register address.
WRITE_REGISTER_USHORT

The WRITE_REGISTER_USHORT function (wudfddi_hwaccess.h) writes a USHORT value to the specified register address.
WriteToHardware

The WriteToHardware method is used internally by the framework. Do not use.
WUDF_DEVICE_POWER_POLICY_IDLE_SETTINGS_INIT

The WUDF_DEVICE_POWER_POLICY_IDLE_SETTINGS_INIT function initializes a driver's WUDF_DEVICE_POWER_POLICY_IDLE_SETTINGS structure.
WUDF_INTERRUPT_CONFIG_INIT

The WUDF_INTERRUPT_CONFIG_INIT function initializes a WUDF_INTERRUPT_CONFIG structure.
WUDF_INTERRUPT_DISABLE

A driver's OnInterruptDisable event callback function disables a specified hardware interrupt.
WUDF_INTERRUPT_ENABLE

A driver's OnInterruptEnable event callback function enables a specified hardware interrupt.
WUDF_INTERRUPT_ISR

A driver's OnInterruptIsr event callback function services a hardware interrupt.
WUDF_INTERRUPT_WORKITEM

A driver's OnInterruptWorkItem event callback function processes interrupt information that the driver's OnInterruptIsr callback function has stored.
WUDF_WORKITEM_CONFIG_INIT

The WUDF_WORKITEM_CONFIG_INIT macro initializes a driver's WUDF_WORKITEM_CONFIG structure.
WUDF_WORKITEM_FUNCTION

A driver's OnWorkItem event callback function performs the work that is associated with a specified work item.

Interfaces

 
IDriverEntry

The IDriverEntry interface exposes the user-mode driver's main entry and exit points.
IFileCallbackCleanup

The framework can notify a driver when the driver should perform a cleanup operation.
IFileCallbackClose

The framework can notify a driver when the driver should perform a close operation. The driver can handle the notification by registering the IFileCallbackClose interface.
IImpersonateCallback

The IImpersonateCallback interface contains a method that handles impersonation.
IObjectCleanup

Any driver that stores a reference-counted COM interface to a WDF object must support the IObjectCleanup interface to prevent interface leakage. Note that drivers, in general, are not required to hold references to WDF objects.
IPnpCallback

The IPnpCallback interface is a Plug and Play (PnP) and power management (PM) interface.
IPnpCallbackHardware

The IPnpCallbackHardware interface is a Plug and Play (PnP) and power management (PM) interface.
IPnpCallbackHardware2

The IPnpCallbackHardware2 interface exposes callback methods related to hardware.
IPnpCallbackHardwareInterrupt

The IPnpCallbackHardwareInterrupt interface supports interrupt-related Plug and Play and power management callback methods.
IPnpCallbackRemoteInterfaceNotification

A driver's IPnpCallbackRemoteInterfaceNotification interface provides a callback function that the framework calls to notify the driver when a device interface becomes available.
IPnpCallbackSelfManagedIo

The IPnpCallbackSelfManagedIo interface is a Plug and Play (PnP) and power management (PM) interface.
IPowerPolicyCallbackWakeFromS0

A driver's IPowerPolicyCallbackWakeFromS0 interface provides callback functions that the framework calls to notify the driver about wake events.
IPowerPolicyCallbackWakeFromSx

A driver's IPowerPolicyCallbackWakeFromSx interface provides callback functions that the framework calls to notify the driver about wake events. These events are related to a device's ability to wake both itself and the system from a low-power state.
IQueueCallbackCreate

An I/O queue notifies a driver when an open file request is available for the driver.
IQueueCallbackDefaultIoHandler

The IQueueCallbackDefaultIoHandler interface contains a method that handles I/O requests that no other method is registered to handle.
IQueueCallbackDeviceIoControl

An I/O queue object notifies a driver when a device I/O control request is available for the driver.
IQueueCallbackIoCanceledOnQueue

The IQueueCallbackIoCanceledOnQueue interface is optional. Your driver can provide this interface if you want UMDF to notify the driver when an I/O request is canceled while it is in the driver's I/O queue.
IQueueCallbackIoResume

The IQueueCallbackIoResume interface contains a method that resumes the processing of an I/O request from a queue.
IQueueCallbackIoStop

The IQueueCallbackIoStop interface contains a method that stops the processing of an I/O request from a queue.
IQueueCallbackRead

An I/O queue notifies a driver when a read request is available for the driver.
IQueueCallbackStateChange

An I/O queue object raises an event when it changes state. A driver can consume the event by registering the IQueueCallbackStateChange interface.
IQueueCallbackWrite

An I/O queue object notifies a driver when a write request is available for the driver.
IRemoteInterfaceCallbackEvent

The IRemoteInterfaceCallbackEvent interface provides a callback function that the framework calls to notify the driver about device events that are associated with a device interface.
IRemoteInterfaceCallbackRemoval

The IRemoteInterfaceCallbackRemoval provides a callback function that the framework calls to notify the driver about the removal of a device interface.
IRemoteTargetCallbackRemoval

The IRemoteTargetCallbackRemoval interface provides callback functions that the framework calls to notify the driver about events that are associated with the removal of a remote I/O target.
IRequestCallbackCancel

A driver is notified when an I/O request that the driver is currently processing is to be canceled.
IRequestCallbackRequestCompletion

A driver implements the IRequestCallbackRequestCompletion interface to complete a request object.
IUsbTargetPipeContinuousReaderCallbackReadComplete

IUsbTargetPipeContinuousReaderCallbackReadComplete is a driver-supplied interface.
IUsbTargetPipeContinuousReaderCallbackReadersFailed

IUsbTargetPipeContinuousReaderCallbackReadersFailed is a driver-supplied interface.
IWDFCmResourceList

This interface represents a list of hardware resources for a device.
IWDFDevice

The IWDFDevice interface exposes a device object, which is a representation of a device on the system.
IWDFDevice2

Drivers obtain the IWDFDevice2 interface by calling IWDFDevice::QueryInterface.
IWDFDevice3

To obtain the IWDFDevice3 interface, drivers call IWDFDevice::QueryInterface.
IWDFDeviceInitialize

The IWDFDeviceInitialize interface is a helper interface that the framework supplies as an input parameter to the driver's IDriverEntry::OnDeviceAdd method.
IWDFDeviceInitialize2

The IWDFDeviceInitialize2 interface is a helper interface that allows a driver to specify a preferred buffer retrieval mode and buffer access method.
IWDFDriver

The IWDFDriver interface exposes the framework driver object that represents the driver image that is loaded in the host process.
IWDFDriverCreatedFile

The IWDFDriverCreatedFile interface exposes a UMDF driver-created-file object for the driver to use.
IWDFFile

The IWDFFile interface exposes the file object that represents the HANDLE that is returned by the Microsoft Win32 CreateFile function.
IWDFFile2

Drivers obtain the IWDFFile2 interface by calling IWDFFile::QueryInterface.
IWDFFile3

Drivers obtain the IWDFFile3 interface by calling IWDFFile::QueryInterface.
IWDFFileHandleTargetFactory

The IWDFFileHandleTargetFactory interface is a factory interface that is used to create a file-handle-based target device object.
IWDFInterrupt

This interface exposes an interrupt object.
IWDFIoQueue

The IWDFIoQueue interface exposes an I/O queue object.
IWDFIoRequest

The IWDFIoRequest interface exposes an I/O request object.
IWDFIoRequest2

To obtain the IWDFIoRequest2 interface, drivers call IWDFIoRequest::QueryInterface.
IWDFIoRequest3

To obtain the IWDFIoRequest3 interface, drivers call IWDFIoRequest::QueryInterface.
IWDFIoRequestCompletionParams

The IWDFIoRequestCompletionParams interface exposes methods that drivers can use to obtain completion information about an I/O request. Drivers can call these methods after a synchronous or asynchronous I/O operation completes.
IWDFIoTarget

The IWDFIoTarget interface exposes the I/O target object that typically represents a lower driver in the stack.
IWDFIoTarget2

To obtain the IWDFIoTarget2 interface, drivers call IWDFIoTarget::QueryInterface.
IWDFIoTargetStateManagement

The IWDFIoTargetStateManagement interface exposes methods that manage and monitor the state of an I/O target object.
IWDFMemory

The IWDFMemory interface exposes the framework memory object that provides access to a memory block.
IWDFNamedPropertyStore

The IWDFNamedPropertyStore interface exposes a property-store object.
IWDFNamedPropertyStore2

Drivers obtain the IWDFNamedPropertyStore2 interface by calling IWDFPropertyStoreFactory::RetrieveDevicePropertyStore.
IWDFObject

The IWDFObject interface exposes the framework base object that provides the basic functionality common across all framework object types. All framework objects are derived from this root object.
IWDFPropertyStoreFactory

The IWDFPropertyStoreFactory interface is a factory interface that is used to create a property store interface.
IWDFRemoteInterface

UMDF drivers receive a pointer to this interface by calling the IWDFDevice2::CreateRemoteInterface method.
IWDFRemoteInterfaceInitialize

UMDF-based drivers receive the IWDFRemoteInterfaceInitialize interface as input to an IPnpCallbackRemoteInterfaceNotification::OnRemoteInterfaceArrival callback function.
IWDFRemoteTarget

To obtain the IWDFRemoteTarget interface, drivers call IWDFDevice2::CreateRemoteTarget.
IWDFRequestCompletionParams

The IWDFRequestCompletionParams interface exposes methods that drivers can use to obtain completion information about an I/O request. Drivers can call these methods after a synchronous or an asynchronous I/O operation completes.
IWDFUnifiedPropertyStore

The IWDFUnifiedPropertyStore interface exposes a unified property store.
IWDFUnifiedPropertyStoreFactory

The IWDFUnifiedPropertyStoreFactory interface is a factory interface that is used to create a unified property store interface.
IWDFUsbInterface

The IWDFUsbInterface interface exposes a USB interface that a USB device exposes.
IWDFUsbRequestCompletionParams

The IWDFUsbRequestCompletionParams interface exposes the parameters object for the completion of a USB request object. The parameters object is primarily required for asynchronous I/O and layered drivers.
IWDFUsbTargetDevice

The IWDFUsbTargetDevice interface exposes a USB device I/O target object.
IWDFUsbTargetFactory

The IWDFUsbTargetFactory interface is a factory interface that is used to create a USB target device object.
IWDFUsbTargetPipe

The IWDFUsbTargetPipe interface exposes a USB pipe (endpoint), which is also an I/O target.
IWDFUsbTargetPipe2

The IWDFUsbTargetPipe2 interface exposes a USB pipe (endpoint), which is also an I/O target.
IWDFWorkItem

This interface exposes a work item object.

Structures

 
UMDF_IO_TARGET_OPEN_PARAMS

The UMDF_IO_TARGET_OPEN_PARAMS structure contains file-open parameters.
UMDF_VERSION_DATA

The UMDF_VERSION_DATA structure describes a version of the framework.
WDF_CHILD_ADDRESS_DESCRIPTION_HEADER

The WDF_CHILD_ADDRESS_DESCRIPTION_HEADER structure is a header structure that must be the first member of every address description structure.
WDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER

The WDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER structure is a header structure that must be the first member of every identification description structure.
WDF_CHILD_LIST_CONFIG

The WDF_CHILD_LIST_CONFIG structure contains configuration information for a list of child devices.
WDF_CHILD_LIST_ITERATOR

The WDF_CHILD_LIST_ITERATOR structure identifies the type of child devices that the framework will retrieve when a driver calls WdfChildListRetrieveNextDevice.
WDF_CHILD_RETRIEVE_INFO

The WDF_CHILD_RETRIEVE_INFO structure contains information about a child device that is obtained by calling WdfChildListRetrieveNextDevice or WdfChildListRetrievePdo.
WDF_COINSTALLER_INSTALL_OPTIONS

The WDF_COINSTALLER_INSTALL_OPTIONS structure contains installation options that a framework-based driver's installer can specify to the framework's co-installer.
WDF_COMMON_BUFFER_CONFIG

The WDF_COMMON_BUFFER_CONFIG structure contains configuration information for a common buffer.
WDF_COMPANION_EVENT_CALLBACKS

This WDF_COMPANION_EVENT_CALLBACKS article is for internal use only.
WDF_DEVICE_INTERFACE_PROPERTY_DATA

The WDF_DEVICE_INTERFACE_PROPERTY_DATA structure describes a device interface property.
WDF_DEVICE_PNP_CAPABILITIES

The WDF_DEVICE_PNP_CAPABILITIES structure describes a device's Plug and Play capabilities.
WDF_DEVICE_PNP_NOTIFICATION_DATA

The WDF_DEVICE_PNP_NOTIFICATION_DATA structure describes a state change within a device's Plug and Play state machine.
WDF_DEVICE_POWER_CAPABILITIES

The WDF_DEVICE_POWER_CAPABILITIES structure describes a device's power capabilities.
WDF_DEVICE_POWER_NOTIFICATION_DATA

The WDF_DEVICE_POWER_NOTIFICATION_DATA structure describes a state change within a device's power state machine.
WDF_DEVICE_POWER_POLICY_IDLE_SETTINGS

The WDF_DEVICE_POWER_POLICY_IDLE_SETTINGS structure contains driver-supplied information that the framework uses when a device is idle and the system is in the system working state (S0).
WDF_DEVICE_POWER_POLICY_NOTIFICATION_DATA

The WDF_DEVICE_POWER_POLICY_NOTIFICATION_DATA structure describes a state change within a device's power policy state machine.
WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS

The WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS structure contains driver-supplied information about a device's ability to wake itself and the system, when both are in a low-power state.
WDF_DEVICE_PROPERTY_DATA

The WDF_DEVICE_PROPERTY_DATA structure describes a device property.
WDF_DEVICE_STATE

The WDF_DEVICE_STATE structure specifies a device's Plug and Play state.
WDF_DMA_ENABLER_CONFIG

The WDF_DMA_ENABLER_CONFIG structure supplies characteristics for a DMA enabler object.
WDF_DMA_SYSTEM_PROFILE_CONFIG

The WDF_DMA_SYSTEM_PROFILE_CONFIG structure describes the hardware-specific settings related to a system-mode DMA enabler.
WDF_DPC_CONFIG

The WDF_DPC_CONFIG structure contains configuration information for a DPC object.
WDF_DRIVER_CONFIG

The WDF_DRIVER_CONFIG structure is an input parameter to WdfDriverCreate.
WDF_DRIVER_VERSION_AVAILABLE_PARAMS

The WDF_DRIVER_VERSION_AVAILABLE_PARAMS structure specifies major and minor version numbers for the Kernel-Mode Driver Framework's library.
WDF_FDO_EVENT_CALLBACKS

The WDF_FDO_EVENT_CALLBACKS structure contains pointers to a function driver's PnP event callback functions.
WDF_FILEOBJECT_CONFIG

The WDF_FILEOBJECT_CONFIG structure contains configuration information of a driver's framework file objects.
WDF_INTERRUPT_CONFIG

The WDF_INTERRUPT_CONFIG structure contains configuration information for a device interrupt.
WDF_INTERRUPT_EXTENDED_POLICY

The WDF_INTERRUPT_EXTENDED_POLICY structure contains information about an interrupt's policy, priority, affinity, and group.
WDF_INTERRUPT_EXTENDED_POLICY

Learn how the WDF_INTERRUPT_EXTENDED_POLICY structure contains information about an interrupt's policy, priority, affinity, and group.
WDF_INTERRUPT_INFO

The WDF_INTERRUPT_INFO structure contains information about a device's interrupt resource.
WDF_INTERRUPT_INFO

Learn how the WDF_INTERRUPT_INFO structure contains information about a device's interrupt resource.
WDF_IO_FORWARD_PROGRESS_RESERVED_POLICY_SETTINGS

The WDF_IO_FORWARD_PROGRESS_RESERVED_POLICY_SETTINGS structure contains information about specific actions that the framework can take when it receives an I/O request for your driver, if a low-memory situation exists.
WDF_IO_QUEUE_CONFIG

The WDF_IO_QUEUE_CONFIG structure contains configuration information for a framework queue object.
WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY

The WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY structure contains driver-supplied information that the framework uses to enable guaranteed forward progress for an I/O queue.
WDF_IO_TARGET_OPEN_PARAMS

The WDF_IO_TARGET_OPEN_PARAMS structure contains parameters that the WdfIoTargetOpen method uses.
WDF_IO_TYPE_CONFIG

The WDF_IO_TYPE_CONFIG structure specifies the driver's preferred buffer access method for read and write requests, and for device I/O control requests.
WDF_MEMORY_DESCRIPTOR

The WDF_MEMORY_DESCRIPTOR structure describes a memory buffer.
WDF_OBJECT_ATTRIBUTES

The WDF_OBJECT_ATTRIBUTES structure describes attributes that can be associated with any framework object.
WDF_OBJECT_CONTEXT_TYPE_INFO

The WDF_OBJECT_CONTEXT_TYPE_INFO structure describes a framework object's driver-defined context memory.
WDF_PDO_EVENT_CALLBACKS

The WDF_PDO_EVENT_CALLBACKS structure is the dispatch table for a bus driver's event callback functions.
WDF_PNPPOWER_EVENT_CALLBACKS

The WDF_PNPPOWER_EVENT_CALLBACKS structure contains pointers to a driver's Plug and Play and power event callback functions.
WDF_POWER_FRAMEWORK_SETTINGS

The WDF_POWER_FRAMEWORK_SETTINGS structure describes power management framework (PoFx) settings for single-component devices.
WDF_POWER_POLICY_EVENT_CALLBACKS

The WDF_POWER_POLICY_EVENT_CALLBACKS structure contains pointers to a driver's power policy event callback functions.
WDF_PROPERTY_STORE_ROOT

The WDF_PROPERTY_STORE_ROOT structure contains information that identifies a UMDF property store.
WDF_QUERY_INTERFACE_CONFIG

The WDF_QUERY_INTERFACE_CONFIG structure describes a driver-defined interface.
WDF_REMOVE_LOCK_OPTIONS

The WDF_REMOVE_LOCK_OPTIONS structure specifies options for acquiring a remove lock before delivering an IRP to the driver.
WDF_REQUEST_COMPLETION_PARAMS

The WDF_REQUEST_COMPLETION_PARAMS structure contains parameters that are associated with the completion of an I/O request.
WDF_REQUEST_FORWARD_OPTIONS

The WDF_REQUEST_FORWARD_OPTIONS structure contains options for requeuing an I/O request from a child device's I/O queue to the parent device's I/O queue.
WDF_REQUEST_PARAMETERS

The WDF_REQUEST_PARAMETERS structure receives parameters that are associated with an I/O request.
WDF_REQUEST_REUSE_PARAMS

The WDF_REQUEST_REUSE_PARAMS structure specifies information that is associated with a reused I/O request.
WDF_REQUEST_SEND_OPTIONS

The WDF_REQUEST_SEND_OPTIONS structure specifies options that are associated with sending an I/O request to an I/O target.
WDF_TASK_QUEUE_CONFIG

This WDF_TASK_QUEUE_CONFIG article is for internal use only.
WDF_TASK_SEND_OPTIONS

This WDF_TASK_SEND_OPTIONS article is for internal use only.
WDF_TIMER_CONFIG

The WDF_TIMER_CONFIG structure contains configuration information for a framework timer object.
WDF_USB_CONTINUOUS_READER_CONFIG

The WDF_USB_CONTINUOUS_READER_CONFIG structure contains information that the framework uses to configure a continuous reader for a USB pipe.
WDF_USB_CONTROL_SETUP_PACKET

The WDF_USB_CONTROL_SETUP_PACKET structure describes a setup packet for a USB control transfer.
WDF_USB_DEVICE_CREATE_CONFIG

The WDF_USB_DEVICE_CREATE_CONFIG structure contains information that the framework uses to configure a framework USB device object.
WDF_USB_DEVICE_INFORMATION

The WDF_USB_DEVICE_INFORMATION structure contains version and capability information for a USB device.
WDF_USB_DEVICE_SELECT_CONFIG_PARAMS

The WDF_USB_DEVICE_SELECT_CONFIG_PARAMS structure specifies USB device configuration parameters.
WDF_USB_INTERFACE_SELECT_SETTING_PARAMS

The WDF_USB_INTERFACE_SELECT_SETTING_PARAMS structure contains selection information for a USB interface.
WDF_USB_INTERFACE_SETTING_PAIR

The WDF_USB_INTERFACE_SETTING_PAIR structure specifies an alternate setting for a specified USB interface.
WDF_USB_PIPE_INFORMATION

The WDF_USB_PIPE_INFORMATION structure contains information about a USB pipe and its endpoint.
WDF_USB_REQUEST_COMPLETION_PARAMS

The WDF_USB_REQUEST_COMPLETION_PARAMS structure contains parameters that are associated with the completion of an I/O request for a USB device.
WDF_WMI_INSTANCE_CONFIG

The WDF_WMI_INSTANCE_CONFIG structure contains configuration information for an instance of a WMI data provider.
WDF_WMI_PROVIDER_CONFIG

The WDF_WMI_PROVIDER_CONFIG structure contains configuration information for a driver's WMI data block.
WDF_WORKITEM_CONFIG

The WDF_WORKITEM_CONFIG structure contains information that is associated with a work item.
WDFMEMORY_OFFSET

The WDFMEMORY_OFFSET structure identifies a subsection of a memory object's buffer.
WDFMEMORY_OFFSET

The WDFMEMORY_OFFSET structure describes the location and size of information that is accessed within a memory block.
WUDF_DEVICE_POWER_POLICY_IDLE_SETTINGS

The WUDF_DEVICE_POWER_POLICY_IDLE_SETTINGS structure contains driver-supplied information that the framework uses when a device is idle and the system is in the system working state (S0).
WUDF_INTERRUPT_CONFIG

The WUDF_INTERRUPT_CONFIG structure contains configuration information for a device interrupt.
WUDF_WORKITEM_CONFIG

The WUDF_WORKITEM_CONFIG structure contains information that is associated with a work item.