// $projectname$.idl : IDL source for $projectname$ // // This file will be processed by the MIDL tool to // produce the type library ($safeidlprojectname$.tlb) and marshalling code. import "oaidl.idl"; import "ocidl.idl"; [!if SUPPORT_COMPONENT_REGISTRAR] [ object, uuid(a817e7a2-43fa-11d0-9e44-00aa00b6770a), dual, pointer_default(unique) ] interface IComponentRegistrar : IDispatch { [id(1)] HRESULT Attach([in] BSTR bstrPath); [id(2)] HRESULT RegisterAll(); [id(3)] HRESULT UnregisterAll(); [id(4)] HRESULT GetComponents([out] SAFEARRAY(BSTR)* pbstrCLSIDs, [out] SAFEARRAY(BSTR)* pbstrDescriptions); [id(5)] HRESULT RegisterComponent([in] BSTR bstrCLSID); [id(6)] HRESULT UnregisterComponent([in] BSTR bstrCLSID); }; [!endif] [!if PREVIEW_HANDLER] [ object, uuid($guid_iidpreview$), pointer_default(unique) ] interface IPreview : IUnknown { }; [!endif] [!if THUMBNAIL_HANDLER] [ object, uuid($guid_iidthumbnail$), pointer_default(unique) ] interface IThumbnail : IUnknown { }; [!endif] [!if SEARCH_HANDLER] [ object, uuid($guid_iidsearch$), pointer_default(unique) ] interface ISearch : IUnknown { }; [!endif] [ uuid($guid_libid$), version(1.0), [!if SUPPORT_COMPONENT_REGISTRAR] custom(a817e7a1-43fa-11d0-9e44-00aa00b6770a,"{$guid_compreg$}") [!endif] ] library $safeprojectname$Lib { importlib("stdole2.tlb"); [!if PREVIEW_HANDLER] [ uuid($guid_clsidpreview$) ] coclass Preview { [default] interface IPreviewHandler; }; [!endif] [!if THUMBNAIL_HANDLER] [ uuid($guid_clsidthumbnail$) ] coclass Thumbnail { [default] interface IThumbnailProvider; }; [!endif] [!if SEARCH_HANDLER] [ uuid($guid_clsidsearch$) ] coclass Search { [default] interface IFilter; }; [!endif] [!if SUPPORT_COMPONENT_REGISTRAR] [ uuid($guid_compreg$) ] coclass CompReg { [default] interface IComponentRegistrar; }; [!endif] }; [!if PREVIEW_HANDLER] import "shobjidl.idl"; [!endif] [!if THUMBNAIL_HANDLER] import "thumbcache.idl"; [!endif] [!if SEARCH_HANDLER] import "filter.idl"; [!endif]