#sdk #simconnect #msfs #rust

sys simconnect-sys

SimConnect的FFI绑定

4个版本 (破坏性更新)

0.24.3 2024年6月15日
0.23.2-pre.1 2023年12月9日
0.22.3 2023年11月26日
0.1.0 2023年11月25日

#239 in #sdk

Download history 78/week @ 2024-06-12 16/week @ 2024-06-19 8/week @ 2024-06-26 34/week @ 2024-07-03 25/week @ 2024-07-10 12/week @ 2024-07-17 41/week @ 2024-07-24 13/week @ 2024-07-31 1/week @ 2024-08-07

每月69次下载

MIT/Apache

1.5MB
97

包含(静态库,1MB)sdk/lib/static/SimConnect_debug.lib,(静态库,670KB)sdk/lib/static/SimConnect.lib,(Windows DLL,68KB)sdk/lib/SimConnect.dll,(静态库,28KB)sdk/lib/SimConnect.lib

simconnect-sys

docs license version downloads maintenance

SimConnect的FFI绑定。

发布支持

目前支持的simconnect-sys版本使用SimConnect SDK 0.24.3

随着每个新的SimConnect SDK版本发布,将更新Crate,版本号表示目标SDK版本。

使用

[dependencies]
simconnect-sys = { version = "0.24.3", features = [ "static" ] }

入门

use simconnect_sys::*;

// open handle to SimConnect
let mut handle = std::ptr::null_mut();
let hr = unsafe { SimConnect_Open(
    &mut handle,
    CString::new("Example").as_ptr(),
    std::ptr::null_mut(),
    0,
    std::ptr::null_mut(),
    0,
) };
if hr != 0 || handle.is_null() {
    println!("SimConnect_Open failed");
}

请参阅examples/sys-basic以获取使用SimConnect的FFI绑定的示例。

功能

  • static - 静态链接到SimConnect库。
  • vendored - 使用供应商的SimConnect库。

环境变量

  • SIMCONNECT_DIR(默认=C:\MSFS SDK\SimConnect SDK
    • 包含这些文件的目录,来自MSFS SimConnect SDK
    .
    ├── include/
    │   └── SimConnect.h
    └── lib/
        ├── SimConnect.lib
        └── static/
            └── SimConnect.lib          
    
  • SIMCONNECT_NO_VENDOR
    • 提供对vendored功能的覆盖,确保不使用供应商库。

许可

此项目根据您选择的许可进行许可

贡献

除非您明确声明,否则根据Apache-2.0许可证定义,您有意提交以包含在作品中并由您提交的贡献将根据Apache License,版本2.0和MIT许可证的双重许可条款进行许可,没有额外的条款或条件。

依赖

~0–1.8MB
~37K SLoC