Crate virtdisk_rs

source ·
Expand description

Rust wrapper of VirtDisk APIs

Overview

This project is a collection of Rust libraries that wrap functionality exposed by VirtDisk.

VirtDisk APIs are part of the Windows 10 SDK.

Both the FFI bindings and Rust wrappers are public to this crate, to give flexibility to consumer code to use the bindings directly as they see fit or the rust wrappers for safe abstractions.

Requirements

For this wrapper to build properly, the following requirements need to be met by the building machine:

  • Windows 10 SDK version 10.0.17763.132.
  • amd64 architecture.
    • This Rust wrapper, for now, expects to build only in amd64.

Wrapped Windows 10 SDK APIs

Note: This section includes the paths in the Windows SDK for the header and lib files based on the default installation path c:\Program Files (x86)\Windows Kits\10.

The relevant Windows 10 SDK files that this project is wrapping are:

  • C:\Program Files (x86)\Windows Kits\10\Include\10.0.17763.0\um\virtdisk.h
  • C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\um\x64\virtdisk.lib
  • C:\Windows\System32\virtdisk.dll

Modules

This module provides Rust idiomatic abstractions to the C bindings of VirtDisk.
This module contains the C bindings to the VirtDisk APIs.
This module contains the type definitions used by the VirtDisk APIs.