.metadata
contains a metadata-generating MSBuild project (start poking around here!).windows/winmd
is the output target for the metadata projectcrates/samples/impl
demonstrates consuming the library cratebuild.rs
generates Rust bindings from metadata and outputs tosrc/bindings.rs
- Install the latest production .NET SDK.
- Open a Developer Command Prompt for Visual Studio
- Navigate to
.metadata
folder - Issue command:
dotnet build
- Ensure metadata is available in
.windows/winmd
cargo build
- Generating metadata for use with the windows crate for Rust https://withinrafael.com/2023/01/18/generating-metadata-for-the-windows-crate
- Rust for DIA SDK https://github.com/microsoft/dia-rs/
- Win32 Metadata https://github.com/microsoft/win32metadata
- Microsoft.Windows.WinmdGenerator https://github.com/microsoft/win32metadata/tree/main/sources/GeneratorSdk