outlook-mapi
This crate implements Rust bindings for the Outlook MAPI COM APIs. The bindings are generated by the Windows crate in outlook-mapi-sys.
Getting Started
Include a reference to outlook-mapi in your Cargo.toml:
[]
= "0.3.0"
See the docs for more details.
Safety
Most of the bindings are re-exported transparently from outlook-mapi-sys, and they are still marked unsafe. Unlike typical idiomatic Rust crates wrapped around a -sys crate, the emphasis of this crate is on writing as little manual wrapper code as possible. This way, outlook-mapi can project 100% of the Outlook MAPI COM API, but the downside is you will need to wrap most uses in an unsafe block or function.
Convenience Types
NYI: This crate should implement helpers and safe wrappers for the most commonly used COM interfaces and MAPI structs.
Windows Metadata
The Windows crate requires a Windows Metadata (winmd) file describing the API. The one used in this crate was generated with the mapi-win32md project. This crate needs it to use the #[implement] macro from the Windows crate.