Virtual Device Source Code


  Bus Hound


Miniport Code


  Engineer Docs


  Contact us


  About us


Do you need to create virtual devices?

We offer precision source code to jump start your development putting you close to the finish line right from the start.

Each sample offers the following features:

  • Creates a virtual disk drive that is assigned a driver letter and works exactly like a real disk drive
  • Supports disk drives larger than 2TB (long lba addressing)
  • SPC-5 and SBC-4 command set compliance
  • Supports 32-bit and 64-bit Windows 7, 8, 8.1, and 10. Supports Server 2008 and later.
  • Can be installed programmatically or using the add hardware wizard
  • Each sample includes a virtual storport miniport
  • Verifier clean, /W4 and /Wall clean, passes ScsiComplianceTest in the Windows HLK
  • Tuned with absolute precision


Sample Name: UVStor StorFile StorRaid
Ideal for: virtual devices virtual devices software RAID
Example Device: file mounted as a disk drive file mounted as a disk drive RAID0, RAID1
Key Features: Perfect for virtual disks, DVD drives, devices with a network backend, and other virtual devices.

Create devices from a Windows application.

No device driver development needed. Bundle with the ready to go companion driver.

Achieve performance well over 1 gigabyte per second depending on back end.

utilizes c++17
Perfect for virtual disks, DVD drives, devices with a network backend, and other virtual devices.

All code resides in a standalone miniport driver.

All of your code runs at PASSIVE_LEVEL making it ideal to call any WDK functions.

Easily add and remove devices dynamically for excellent device lifetime control.

Exploits overlapped request queuing and fast, asynchronous back ends.

Kernel level code to read and write a sparse disk file using asynchronous file I/O.

Each device gets a dedicated thread for optimum multi-core performance.

Persistent disks across system restarts using StorPortRegistryRead / StorPortRegistryWrite

Utilizes HwStorProcessServiceRequest, StorPortCompleteServiceIrp, and IOCTL_MINIPORT_PROCESS_SERVICE_IRP

supports WRITE LONG to create pseudo unrecovered errors.

pass information to the miniport driver from the inf file.

Includes a test utility that passes IOCTLs to the miniport driver.

Provide context data per request, per device, and per adapter.
Create stripes and mirrors over local disk drives.

Mirroring performs disk reconstruction.

Disks can be dynamically added to a mirror while it is running.

Ultra speed mirror reconstruction.

High performance I/O algorithms.

Includes a raid management tool.

Multiple RAIDs can be created and run simultaneously.

Selectable stripe sector interleave for high performance

Supports any sector size including 512 and 4K.

Disk drives allocated to a RAID are not assigned drive letters by Windows.

Disk drives allocated to a RAID are formatted with a GPT partition encapsulating the RAID data.

Single device driver solution.

Enterprise quality, ready to ship software RAID solution



Try for free (limited to 64-bit Windows 10): Download UVStor Download StorFile Download StorRaid
Price (USD): $6000 $6000 $36,000


How long does it take to get?

The software is delivered electronically. You can download and start using the source code instantly after entering your order. Online ordering is safe and secure by credit card. We accept purchase orders.

What comes with each sample?

You get the carefully articulated and well documented source code which can be built using Visual Studio 2019, documentation covering all you need to know to use the source, an installer/uninstaller, and a pre-built ready to run driver.

What does it look like in device manager?

storfile devmgmt

Are there limits on the devices?

You may define multiple devices of any SCSI type (eg: disk drive, DVD, printer).

What is the API like?

UVStor: Customize simple, ready to go usermode c++ classes to the needs of your device. There are 3 classes: the Adapter, the Device, and the Request.

StorFile: Customize simple, ready to go device driver c++ classes to the needs of your device. There are 3 classes: the Adapter, the Device, and the Request. All of your functions are called at PASSIVE_LEVEL for convenience. And callbacks can be called at DISPATCH_LEVEL or below for convenience such as request completion.

StorRaid: The device driver is a complete, ready to go software RAID solution. It includes an IOCTL interface to manage RAIDs.

What technical support is provided?

Free support for 90 days and a full refund policy.

Are there any royalties or other costs?

No. You are free to modify the source and use it for as many products as you wish in any sales volume. There is also no time limit on how long you can use the source.

What is the license agreement?


Featured Customers: