[−][src]Crate com
A helper crate for consuming and producing COM interfaces.
Example
To work with a COM interface it must first be declared:
/// Define an IAnimal interface wit #[com::com_interface("EFF8970E-C50F-45E0-9284-291CE5A6F771")] pub trait IAnimal: com::interfaces::IUnknown { unsafe fn eat(&self) -> com::sys::HRESULT; }
Modules
| interfaces | Common COM interfaces including IUknown and IClassFactory |
| runtime | COM runtime facilities |
| sys | Types for interacting with COM related system APIs |
Macros
| inproc_dll_module | A macro for declaring a COM server to the COM runtime |
Structs
| ComPtr | A transparent ptr to a COM interface. |
| ComRc | A reference counted COM interface. |
Traits
| CoClass | A COM compliant class |
| ComInterface | A COM compliant interface |
| ProductionComInterface | A COM interface that will be exposed in a COM server |
Type Definitions
| CLSID | A class ID |
| IID | An interface ID |