oden/third-party/vendor/windows-targets
2024-03-08 11:03:01 -08:00
..
src Vendor things 2024-03-08 11:03:01 -08:00
.cargo-checksum.json Vendor things 2024-03-08 11:03:01 -08:00
Cargo.toml Vendor things 2024-03-08 11:03:01 -08:00
license-apache-2.0 Vendor things 2024-03-08 11:03:01 -08:00
license-mit Vendor things 2024-03-08 11:03:01 -08:00
readme.md Vendor things 2024-03-08 11:03:01 -08:00

Import libs for Windows

The windows-targets crate includes import libs, supports semantic versioning, and optional support for raw-dylib.

Start by adding the following to your Cargo.toml file:

[dependencies.windows-targets]
version = "0.52.4"

Use the `link`` macro to define the external functions you wish to call:

windows_targets::link!("kernel32.dll" "system" fn SetLastError(code: u32));
windows_targets::link!("kernel32.dll" "system" fn GetLastError() -> u32);

fn main() {
    unsafe {
        SetLastError(1234);
        assert_eq!(GetLastError(), 1234);
    }
}