Expand description
The low-level COM interop layer for the TestStand™ Engine API.
This is the only crate in the rs-teststand workspace where unsafe is
permitted. Every unsafe block must carry a safety comment justifying it
(enforced by clippy::undocumented_unsafe_blocks at deny level).
Scope: apartment (STA) initialization, late-bound IDispatch invocation,
VARIANT conversion, HRESULT extraction, and the Win32 window and message
facilities a COM apartment depends on (os). No TestStand™ semantics live
here, the public rs-teststand crate builds the object model on top of the
Dispatch seam.
Structs§
- ComDispatch
- A live COM object addressed through its
IDispatchinterface. - Dialog
Info - What a blocking dialog was showing.
- Dismissed
- What happened to a dialog that was dismissed.
- Raised
- What raising a window actually achieved.
Enums§
- ComError
- A failure originating in the COM dispatch layer.
- Value
- An owned value crossing the COM boundary, mapped from a
VARIANT.
Traits§
- Dispatch
- The late-bound call surface a wrapper needs from a COM object.
Functions§
- close_
apartment - Uninitializes COM on the current thread, balancing
init_apartment. - create_
dispatch - Creates a COM object from a
ProgIDand returns it as a dispatch handle. - dismiss_
blocking_ dialog - Asks the first visible dialog owned by this process to close.
- find_
blocking_ dialog - Returns the first visible dialog owned by this process, if any.
- init_
apartment - Initializes COM on the current thread as a single-threaded apartment.
- pump_
thread_ messages - Dispatches every Windows message currently waiting on this thread.
- surface_
blocking_ dialog - Brings the first blocking dialog to the front and reports what it says.