sig   type 'a interface   type 'a iid   type clsid   type 'a opaque   exception Error of int * string * string   val initialize : unit -> unit   val uninitialize : unit -> unit   val query_interface : 'Com.interface -> 'Com.iid -> 'Com.interface   type iUnknown   type iDispatch   val iUnknown_of : 'Com.interface -> Com.iUnknown Com.interface   val combine : 'Com.interface -> 'Com.interface -> 'Com.interface   val clsid : string -> Com.clsid   val create_instance : Com.clsid -> 'Com.iid -> 'Com.interface   type 'a component_factory = {     create : unit -> 'Com.interface;     clsid : Com.clsid;     friendly_name : string;     ver_ind_prog_id : string;     prog_id : string;   }   val register_factory : 'Com.component_factory -> unit   type hRESULT_int = int   type hRESULT_bool = bool   type bSTR = string   val _parse_iid : string -> 'Com.iid end