Windows driver samples

Starting with Windows 10, the Windows driver samples repository is available on GitHub.

Windows 8 driver samples and Windows 8.1 driver samples can be downloaded from the Windows Hardware Dev Center. For Windows 7 and earlier, samples and documentation were included in the Windows Driver Kit (WDK) or Driver Development Kit (DDK).

Driver sample categories

Audio

Sample NameSolutionDescription
Slate Virtual Audio Device Driver SamplesysvadThe Slate Virtual Audio Device Driver (SYSVAD) shows how to develop a WDM audio driver that exposes support for multiple audio devices.

 

AVStream

Sample NameSolutionDescription
AVStreamavshwsA simulated hardware sample driver providing a pin-centric capture driver to simulate AV capture hardware.
AVSSampavssampThe AVStream filter-centric simulated capture sample driver with functional audio.
Driver Device Transform SamplesampledevicemftIllustrative example for a Driver Device Transform which loads in a process streaming an Avstream based camera device using Media Foundation.
Driver MFTSampleMft0A driver MFT for use with a camera's Windows Store device app. A driver MFT is a Media Foundation Transform that is used with a specific camera when capturing video.

 

Battery

Sample NameSolutionDescription
Simulated Battery Driver SampleSimBattDemonstrates a KMDF-based implementation of Windows battery driver interfaces. Use this sample as a starting point to implement a battery miniport driver specific to your needs.

 

Biometrics

Sample NameSolutionDescription
Windows Biometric Driver Samples (UMDF Version 1)WBDIsampleContains the Windows Biometric Driver Interface sample and the Windows Biometric Service Adapter samples.

 

Bluetooth

Sample NameSolutionDescription
Bluetooth Echo L2CAP Profile Driver bthechoDemonstrates development of Bluetooth L2CAP profile drivers using the Bluetooth L2CAP DDIs.
Bluetooth Serial HCI Bus DriverserialhcibusDemonstrates how to implement a basic bus driver to support the new Bluetooth Extensibility transport DDIs over the UART transport.

 

Camera

Sample NameSolutionDescription
AvsCamera: AVStream Camera Sample Driver avscameraProvides a pin-centric AVStream capture driver for a simulated front and back camera that performs simulated captures at 320x240 or 640x480 in RGB24, RGB32, YUY2 and NV12 formats at various frame rates.

 

File systems

Sample NameSolutionDescription
CDFScdfsThe CD-ROM file system driver (cdfs) sample is a file system driver for removable media.
FastFATfastfat A file system driver based on the Windows inbox FastFAT file system used as a model for new file systems.
AVScanavscanThis filter is a transaction-aware file scanner that examines data in files. Anti-virus might operate in this fashion.
CancelSafecancelSafeA minifilter demonstrating the use of cancel-safe queues.
CDOcdoAn example of using a control device object (CDO) with a minifilter.
ChangechangeA transaction-aware filter that monitors file changes in real time.
CtxctxDemonstrates how to attach contexts to instances, files, streams, and stream handles in your minifilter.
DeletedeleteDemonstrates how to detect deletions of files or streams.
Metadata ManagerMetadataManagerServes as an example of how to use files for storing metadata that corresponds to your minifilters. The implementation of this sample depicts scenarios in which modifications to the file might have to be blocked or the minifilter might be required to close the file temporarily.
MinispyminispyA tool to monitor and log any I/O and transaction activity that occurs in the system.
NameChangerNameChangerGrafts a directory from one part of a volume's namespace to another part using a mapping. The minifilter maintains this illusion by acting as a name provider, injecting entries into directory enumerations and forwarding directory change notifications
NullFilternullFilterA minifilter that simply demonstrates registration with the filter manager.
PassThroughpassThroughDemonstrates how to specify callback functions for different types of I/O requests.
ScannerscannerA file data scanner example. Typically, anti-virus filters are of this type.
SimRepsimrepDemonstrates how a file system filter can simulate file-system like reparse-point behavior to redirect a file open to an alternate path.
SwapBufferswapBuffersDemonstrates how to switch buffers between reads and writes of data. This technique is particularly useful for encryption filters.

 

General samples

Sample NameSolutionDescription
Cancel Safe IRP QueuecancelDemonstrates the use of the cancel-safe queue routines IoCsqInitialize, IoCsqInsertIrp, IoCsqRemoveIrp, IoCsqRemoveNextIrp. By using these routines, driver developers do not have to worry about IRP cancellation race conditions.
KMDF EchokmdfechoDemonstrates how to use a sequential queue to serialize read and write requests presented to the driver.
UMDF EchoechoDemonstrates how to use UMDF 1 to write a driver and to employ best practices.
UMDF2 Echoumdf2echoDemonstrates how to use UMDF 2 to write a driver and to employ best practices.
UMDF SocketEchoumdfsocketechoDemonstrates how to use the UMDF to write a driver and demonstrates best practices.
Hardware EventeventsampleDemonstrates two different ways a kernel-mode driver can notify an application about a hardware event. One way uses an event-based method, and the other uses an IRP-based method. The sample driver uses a timer DPC to simulate hardware events.
File HistoryfilehistoryA console application that starts the file history service, if it is stopped, and schedules regular backups.
WDF Installation PackageinstallwdfDemonstrates how to install WDF packages on a system. This code can be used as-is to install the needed WDF components onto a user system. The sample code can also be reworked into an existing setup application to provide a better experience.
Non-PnP Driver SampleioctlDemonstrates how to write a non-PnP driver using the Kernel Mode Driver Framework.
IOCTLioctl Demonstrates the usage of four different types of IOCTLs (METHOD_IN_DIRECT, METHOD_OUT_DIRECT, METHOD_NEITHER, and METHOD_BUFFERED).
ObCallbackobcallbackDemonstrates the use of registered callbacks for process protection. The driver registers control callbacks which are called at process creation.
PCIDRVpcidrvThis sample demonstrates how to write a KMDF driver for a PCI device. The sample works with the Intel 82557/82558 based PCI Ethernet Adapter (10/100) and Intel compatibles.
Kernel CounterkcsDemonstrates the use of the kernel-mode performance library. The driver does not control any hardware; it simply provides counters. The code contains comments to explain what each function does.
PLX9x5x PCI DriverPLX9x5xDemonstrates how to write driver for a generic PCI device using Windows Driver Frameworks (WDF). The target hardware for this driver is PLX9656/9653RDK-LITE board.
RegFltr regflltrShows how to write a registry filter driver.
System DMASystemDmaDemonstrates the usage of V3 System DMA. It shows how a driver could use a system DMA controller supported by Windows to write data to a hardware location using DMA.
Toaster Sample DrivertoasterAn iterative series of samples that demonstrate fundamental aspects of Windows driver development for both Kernel-Mode Driver Framework (KMDF) and User-Mode Driver Framework (UMDF) version 1.
Toaster Package SampletoastpkgSimulates hardware-first and software-first installation of the toaster sample driver.
Toaster Sample (UMDF Version 2)umdf2toaster An iterative series of samples that demonstrate fundamental aspects of Windows driver development using User-Mode Driver Framework (UMDF) version 2.
EventDrvevntdrvA kernel-mode trace provider and driver. The driver does not control any hardware; it simply generates trace events. It is designed to demonstrate the use of the Event Tracing for Windows (ETW) API in a driver.
System Trace ControlSystemTraceControlDemonstrates how to use event tracing control APIs to collect events from the system trace provider.
TracedrvtracedrvA sample driver instrumented for software tracing.
UMDF Driver SkeletonumdfSkeleton Demonstrates how to use the User-Mode Driver Framework to write a minimal driver and shows best practices.

 

General-purpose input/output (GPIO)

Sample NameSolutionDescription
GPIO DriverssimThe GPIO driver samples contain annotated code to illustrate how to write a GPIO controller driver that works in conjunction with the GPIO framework extension (GpioClx) to handle GPIO I/O control requests, and a peripheral driver that runs in kernel mode and uses GPIO resources.

 

Human interface devices (HID)

Sample NameSolutionDescription
KMDF HID FilterfireflyA filter driver for a HID device. Along with illustrating how to write a filter driver, this sample shows how to use remote I/O target interfaces to open a HID collection in kernel-mode and send IOCTL requests to set and get feature reports, as well as how an application can use WMI interfaces to send commands to a filter driver.
HClient ApplicationhclientDemonstrates how to write a user-mode client application that communicates with HID devices conforming to the HID device class specification.
HIDUSBFX2hidusbfx2Demonstrates mapping of a non-HID USB device to a HID device.
UMDF HID Minidrivervhidmini2A sample demonstrating how to write a HID minidriver using the User-Mode Driver Framework (UMDF).

 

Input

Sample NameSolutionDescription
Keyboard FilterkbfiltrA WDF example of a keyboard input filter driver.
Mouse FiltermoufiltrA WDF example of a mouse input filter driver.
Synaptics Touch SampleSynapticsTouchDemonstrates how to write a HID miniport driver for the Synaptics 3202 touch controller.

 

Networking

Sample NameSolutionDescription
BindviewbindviewAn application that demonstrates how to use INetCfg APIs to enumerate, install, uninstall, bind and unbind network components.
FakemodemfakemodemDemonstrates a simple controller-less modem driver.
Hyper-V Extensible Switch Extension FilterextensionsA base library used to implement a Hyper-V Extensible Switch extension filter driver.
NDIS 6.0 FilterfilterThe sample is a do-nothing pass-through NDIS 6 filter driver demonstrating the basic principles of an NDIS 6.0 Filter driver.
NDIS MUX Intermediate Driver and Notify ObjectmuxAn NDIS 6.0 driver that demonstrates the operation of an “N:1” MUX driver. The sample create multiple virtual network devices on top of a single lower adapter.
Connectionless NDIS 6.0 and 6.3 Protocol Driverndisprot60This driver supports sending and receiving raw Ethernet frames using ReadFile/WriteFile calls from user-mode. As an NDIS protocol driver, it illustrates how to establish and tear down bindings to Ethernet adapters.
Connectionless NDIS 6.0 Protocol Driverndisprot_kmdfThis driver supports sending and receiving raw Ethernet frames using ReadFile/WriteFile calls from user-mode. As an NDIS protocol driver, it illustrates how to establish and tear down bindings to Ethernet adapters.
NDIS Virtual Miniport DrivernetvminiDemonstrates the functionality of an NDIS miniport driver without requiring a physical network adapter.
Radio Switch Test Driver for OSR USB-FX2 Development BoardHidSwitchDriverSampleDemonstrates how to structure a HID driver for radio switches for the OSR USB-FX2 Development Board.
Radio ManagerRadioManagerSampleDemonstrates how to structure a Radio Manager for use with the Windows Radio Management APIs.
WFP Packet ModificationddproxyDemonstrates the packet modification capabilities of the Windows Filtering Platform (WFP).
WFP Traffic InspectioninspectDemonstrates the traffic inspection capabilities of the Windows Filtering Platform (WFP).
WFP MSN Messenger Monitor msnmntrA sample application and driver demonstrating the stream inspection capabilities of the Windows Filtering Platform (WFP).
WFP Stream EditstmeditDemonstrates replacing a string pattern for a Transmission Control Protocol (TCP) connection using the Windows Filtering Platform (WFP).
Windows Filtering PlatformWFPSamplerThis is a sample firewall. It has a command-line interface which allows adding filters at various WFP layers under various conditions. Additionally, it exposes callouts for injection, basic action, proxying, and stream inspection.
Native Wi-Fi IHV ServicewlanDemonstrates IHV extensibility for native Wi-Fi.
WSK TCP Echo ServerechosrvThis sample driver is a minimal driver meant to demonstrate the usage of the Winsock Kernel (WSK) programming interface.

 

Near field communication (NFC)

Sample NameSolutionDescription
NFC Simulator Driver SampleNfcSimulatorDemonstrates how to use User-Mode Driver Framework (UMDF) to write a Near-Field Communication (NFC) universal driver along with best practices.

 

Near field proximity (NFP)

Sample NameSolutionDescription
Near Field Proximity Sample Driver (UMDF 1)netnfpDemonstrates how to write a UMDF 1 near field proximity driver that uses a TCP/IPv6 network connection and a static configuration between two machines to simulate near field interaction.

 

Power framework (PoFx)

Sample NameSolutionDescription
PEP ACPI SamplepepsamplesDemonstrates an interface which allows a Power Engine Plugin (PEP) to implement ACPI runtime methods natively via a Windows driver rather than firmware.
UMDF2 PoFx DriverpofxThe UMDF 2 SingleComp sample demonstrates how a UMDF2 driver can implement F-state-based power management for a device that has only a single component.
WDF PoFx DriverpofxContains two samples that demonstrate how a KMDF driver can implement F-state-based power management. The SingleComp sample demonstrates how a KMDF driver can implement F-state-based power management for a device that has only a single component. The MultiComp sample demonstrates how a KMDF driver can implement F-state-based power management for a device that has an arbitrary number of components that can be individually power-managed

 

Point of service (POS)

Sample NameSolutionDescription
Barcode Scanner Driver SampleBarcodeScannerThis UMDF 2 sample serves as a template for creating a barcode scanner driver and demonstrates basic functionality such as claiming and enabling the device for exclusive access.
Magnetic Stripe Reader Driver SampleMagneticStripeReaderThis UMDF 2 sample serves as a template for creating a magnetic stripe reader driver and demonstrates basic functionality such as claiming and enabling the device for exclusive access.

 

Print

Sample NameSolutionDescription
Print Auto ConfigurationAutoConfigDemonstrates how to implement Unidrv-based and PScript5-based drivers to leverage the inbox support for auto-configuration. The sample works only when used with the standard TCP/IP port monitor or the Network-Connected Device (NCD) port monitor.
Common Property Sheet UIcpsuisamAn application that causes the Common Property Sheet User Interface (CPSUI) to call the Windows print spooler to create property sheet pages for the system's default printer.
OpenXPS DocumentsSampleOpenXpsContains a set of documents that were generated from a variety of sources, including those generated from the Windows Presentation Foundation in the .NET Framework and from the Microsoft XPS Document Writer (MXDW). They have been included to provide you with a few documents that exercise a variety of features of the XML Paper Specification.
XPS DocumentsSampleXPSContains a set of documents that were generated from a variety of sources, including those generated from the Windows Presentation Foundation in the .NET Framework and from the Microsoft XPS Document Writer (MXDW). They have been included to provide you with a few documents that exercise a variety of features of the XML Paper Specification.
Print Pipeline Simple FilterSimplePipelineFilterShows how to use the print pipeline's filter interfaces.
Printer ExtensionPrinterExtensionSampleDemonstrates how to use .NET to build a customized, desktop UI for a v4 print driver. This .NET application uses PrintTicket, PrintCapabilities and Bidi in order to communicate with the print system and is suitable for inclusion in a v4 print driver.
Print Driver ConstraintsConstraintScriptDemonstrates how to implement advanced constraint handling, and also PrintTicket/PrintCapabilities handling using JavaScript.
USB Host-Based Print DriverHostBasedSampleDriver Demonstrates how to support host-based devices that use the v4 print driver model, and are connected via USB.
Print USB Monitor and BiDiUSBMon-Bidi-ExtensionDemonstrates how to support bidirectional (Bidi) communication over the USB bus, using JavaScript and XML. This sample supports bidirectional status while not printing, and unsolicited status from the printer while printing.
WSDMon Bidi ExtensionWSDMon-Bidi-ExtensionDemonstrates how to use an XML extension file to support bidirectional (Bidi) communication with a WSD connected printer.
XPSDrv Driver and FilterXPSDrvSmplThis sample is intended to provide a starting point for developing XPSDrv printer drivers and to illustrate the facility and potential of an XPSDrv print driver. This goal is accomplished by implementing a number of real-world features within a set of XPS print pipeline filters that are configured through a configuration plug-in that supports custom UI content and PrintTicket handling.
XPS Rasterization Filter ServiceXpsRasFilterAn XPSDrv filter that rasterizes fixed pages in an XPS document. Hardware vendors can modify this sample to build an XPSDrv filter that produces bitmap images for their printers or other display devices.

 

Secure Digital (SD)

Sample NameSolutionDescription
Standard SD Host Controller MiniportsdhcProvides a functional miniport implementation for a standard SD host controller.
SDIO DriversdiomarsA functional Secure Digital (SD) IO driver. It is a KMDF driver for a generic mars development board that implements the SDIO protocol without additional functionality.

 

Security

Sample NameSolutionDescription
Early Launch Anti-Malware DriverelamDemonstrates how to receive notifications about the initialization of regular boot start drivers in an Early Launch Anti-Malware driver.

 

Sensors

Sample NameSolutionDescription
ActivityActivityDemonstrates how to write a UMDF v2 driver to control a virtual activity sensor.
ADXL345AccelerometerADXL345AccDemonstrates how to write a UMDF v2 driver to control an ADXL345 accelerometer chip.
CustomSensorsCustomSensorsDemonstrates how to write a UMDF v2 driver to control a virtual CO2 sensor.
PedometerPedometerDemonstrates how to write a UMDF v2 driver to control a virtual pedometer sensor.
SimpleDeviceOrientationSensorSimpleDeviceOrientationSensorDemonstrates how to write a UMDF v2 sensor driver to output Simple Device Orientation values.

 

Serial

Sample NameSolutionDescription
SerenumserenumEnumerates Plug-n-Play RS-232 devices that are compliant with the current revision of Plug and Play External COM Device.
SerialserialThe Serial (16550-based RS-232) sample driver is a WDF version of the inbox Serial.sys driver.
Virtual SerialVirtualSerialThis sample demonstrates serial drivers. It includes a simple virtual serial driver (ComPort) and a controller-less modem driver (FakeModem).
Virtual Serial 2VirtualSerialThis sample demonstrates serial drivers. It includes a simple virtual serial driver (ComPort) and a controller-less modem driver (FakeModem).

 

Setup

Sample NamedSolutionDescription
Device Console (Devcon)devconA command-line tool that displays detailed information about devices, and lets you search for and manipulate devices from the command line. Devcon enables, disables, installs, configures, and removes devices on the local computer. It also displays detailed information about devices on local and remote computers.
Driver Install FrameworksDIFxAPIDemonstrates how to use DIFXAPI to preinstall, install and uninstall a driver package.

 

Smart card

Sample NameSolutionDescription
PCMCIA Smart Card DriversmartcrdDemonstrates how to write a KMDF driver for the SCM Microsystems PCMCIA smart card reader.

 

Simple peripheral bus (SPB)

Sample NameSolutionDescription
Skeleton I2C Sample DriverSkeletonI2CDemonstrates how to design a KMDF controller driver for Windows that conforms to the simple peripheral bus (SPB) device driver interface (DDI). SPB is an abstraction for low-speed serial buses (for example, I2C and SPI) that allows peripheral drivers to be developed for cross-platform use without any knowledge of the underlying bus hardware or device connections.
SpbTestToolSpbTestToolDemonstrates how to open a handle to the SPB controller, use the SPB interface from a KMDF driver, and employ GPIO passive-level interrupts.

 

Storage

Sample NameSolutionDescription
CDROM Class DrivercdromThe CD ROM class driver is used to provide access to CD, DVD and Blu-ray drives. It supports Plug and Play, Power Management, and AutoRun (media change notification).
ClassPnP Class Driver LibraryclasspnpA library storage class drivers. It simplifies writing a storage class driver by most of the code needed to support Plug and Play (PnP), power management, and other features. This library is used by disk, CDROM, and the tape class drivers.
Disk Class DriverdiskA class driver for disk devices.
AddFilter Storage Filter TooladdfilterA command-line application that adds and removes filter drivers for a given drive or volume.
iSCSI WMI ClientiscsiA WMI implementation in an iSCSI miniport that can be tested using the iSCSICLI.exe tool, the iSCSI Initiator Properties page, the WBEMTEST.exe tool, and customized WMI scripts.
LSI_U3 StorPort Miniport lsi_u3An adapter driver for use with Parallel SCSI Host Bus Adapters or on-motherboard solutions that use the LSI 53C1010 SCSI ASIC.
StorAHCI StorPort Miniportstorahci A sample Storport ACHI miniport driver.
Multipath I/O (MPIO) DSM SamplemsdsmAn example to follow when building a vendor specific, device specific module (DSM). This sample DSM supports iSCSI and Fibre Channel devices.
RAMDiskramdiskThe driver creates RAM disk drive of a specified size. This RAM disk can be used like any other disk.
Super Floppy (sfloppy) Storage Class Driversfloppy A class driver for Super Floppy disk drives.
SCSI Pass-Through Interface ToolsptiDemonstrates how to communicate with a SCSI device from using the pass through IOCTLs in an application using the DeviceIoControl API.

 

Thermal

Sample NameSolutionDescription
SimSensorsimsensorA simulated temperature sensor device.
Simulated Thermal Client Sample DriverthermalclientSimulates a device that is a client of Windows thermal management. This driver publishes a GUID_THERMAL_COOLING_INTERFACE driver interface.

 

Tools

Sample NameSolutionDescription
SDV-FailDriver-KMDFSDV-FailDriver-KMDFContains intentional code errors that are designed to show the capabilities and features of Static Driver Verifier (SDV). SDV is a static verification tool that systematically analyzes the source code of Windows kernel-mode drivers. SDV is included in the WDK and can be run from Microsoft Visual Studio. The sample demonstrates how SDV can find errors in a KMDF driver.
SDV-FailDriver-NDISSDV-FailDriver-NDISContains intentional code errors that are designed to show the capabilities and features of Static Driver Verifier (SDV). SDV is a static verification tool that systematically analyzes the source code of Windows kernel-mode drivers. SDV is included in the WDK and can be run from Visual Studio. The sample demonstrates how SDV can find errors in a NDIS driver.
SDV-FailDriver-StorportSDV-FailDriver-STORPORTContains intentional code errors that are designed to show the capabilities and features of Static Driver Verifier (SDV). SDV is a static verification tool that systematically analyzes the source code of Windows kernel-mode drivers. SDV is included in the WDK and can be run from Visual Studio. The sample demonstrates how SDV can find errors in a Storport driver.
SDV-FailDriver-WDMSDV-FailDriver-WDMContains intentional code errors that are designed to show the capabilities and features of Static Driver Verifier (SDV). SDV is a static verification tool that systematically analyzes the source code of Windows kernel-mode drivers. SDV is included in the WDK and can be run from Visual Studio. The sample demonstrates how SDV can find errors in a WDM driver.

 

Universal Serial Bus (USB)

Sample NameSolutionDescription
KMDF Bus Driverkmdf_enumswitchesDemonstrates how to use KMDF for a bus driver with the OSR USB-FX2 device.
Sample KMDF Function Driver for OSR USB-FX2kmdf_fx2Demonstrates how to perform bulk and interrupt data transfers to a USB device. The sample is written for the OSR USB-FX2 Learning Kit.
USB Function Client DriverufxclientsampleA skeleton sample driver that shows how to create a Windows USB function controller driver using the USB function class extension driver (UFX).
Sample UMDF Filter above KMDF Function Driver for OSR USB-FX2 (UMDF 1)umdf_filter_kmdfDemonstrates how to load a UMDF filter driver as an upper filter driver above the kmdf_fx2 sample driver. The sample is written for the OSR USB-FX2 Learning Kit.
Sample UMDF Filter above UMDF Function Driver for OSR USB-FX2 (UMDF 1)umdf_filter_umdfdemonstrates how to load a UMDF filter driver as an upper filter driver above the umdf_fx2 sample driver. The sample is written for the OSR USB-FX2 Learning Kit.
UMDF 1 Function Driverumdf_fx2A User-Mode Driver Framework (UMDF 1) driver for the OSR USB-FX2 device. It includes a test application and sample device metadata, and supports impersonation and idle power down.
UMDF 2 Function Driverumdf2_fx2A User-Mode Driver Framework (UMDF 2) driver for the OSR USB-FX2 device. It includes a test application and sample device metadata, and supports impersonation and idle power down.
Usbsamp Generic USB DriverusbsampDemonstrates how to perform full speed, high speed, and SuperSpeed transfers to and from bulk and isochronous endpoints of a generic USB device.
USBViewusbviewA Windows application that allows you to browse all USB controllers and connected USB devices on your system.

 

Video

Sample NamedSolutionDescription
Kernel mode display-only miniport driver (KMDOD) sampleKMDODImplements most device driver interfaces (DDIs) that a display-only miniport driver should provide to the Windows Display Driver Model (WDDM). The code is useful to understand how to write a miniport driver for a display-only device, or how to develop a full WDDM driver.
PixLibpixlibDemonstrates how to implement the CPixel class for use by a display driver.

 

Windows Management Instrumentation (WMI)

Sample NameSolutionDescription
WMIACPIwmiacpiContains ACPI BIOS and Microsoft Windows Management Instrumentation (WMI) sample code that enables instrumentation of the ACPI BIOS from within ACPI Source Language (ASL) code.
WMI Data ProviderwmisampDemonstrates how to register WMI providers in KMDF and create provider instances and how to handle the WMI queries sent to a device.

 

Windows Portable Device (WPD)

Sample NameSolutionDescription
WPD Basic Hardware Sample Driver (UMDF 1)WpdBasicHardwareDriverA WPD sample driver that supports nine sensor devices that integrate with the Parallax BS2 programmable microcontroller.
Hello World ExampleWpdHelloWorldDriverThis sample driver supports four objects: a device object, a storage object, a folder object, and a file object. Each object supports a set of properties.
Multi-transport driverWpdMultiTransportDriverDemonstrates how you could extend the WpdHelloWorldDriver for a device that supports multiple transports. A transport is a protocol over which a portable device communicates with a computer. Example transports include Internet Protocol (IP), Bluetooth, and USB.
WPD service sample driverWpdServiceSampleDriverDemonstrates how to extend the WpdHelloWorldDriver sample so that it supports a simulated device with a Contacts device service.
WUDF driverWpdWudfSampleDriverA comprehensive WPD sample driver demonstrates virtually all aspects of the WPD device driver interface (DDI).

 

 

 

Send comments about this topic to Microsoft

표시:
© 2015 Microsoft