// [!output SAFE_IDL_NAME].idl : type library source for ActiveX Control project. // This file will be processed by the MIDL compiler tool to // produce the type library ([!output SAFE_IDL_NAME].tlb) that will become a resource in // [!output PROJECT_NAME].ocx. #include [ uuid([!output LIBID_REGISTRY_FORMAT]), version(1.0), helpfile("[!output PROJECT_NAME].hlp"), helpstring("[!output PROJECT_NAME] ActiveX Control module"), control ] library [!output LIB_NAME]Lib { importlib(STDOLE_TLB); importlib(STDTYPE_TLB); // Primary dispatch interface for [!output CONTROL_CLASS] [ uuid([!output PRIMARY_IID_REGISTRY_FORMAT]), helpstring("Dispatch interface for [!output CONTROL_TYPE_NAME]"), hidden] dispinterface _D[!output SAFE_PROJECT_IDENTIFIER_NAME] { properties: [!if ASYNC_PROPERTY_LOAD] [id(DISPID_READYSTATE), readonly] long ReadyState; [!endif] methods: [!if !MULTIPLE_PLATFORM] [!if !SMARTPHONE2003_UI_MODEL] [!if ABOUT_BOX] [id(DISPID_ABOUTBOX)] void AboutBox(); [!endif] [!endif] [!else] [!if SMARTPHONE2003_UI_MODEL] #ifndef WIN32_PLATFORM_WFSP [!endif] [!if ABOUT_BOX] [id(DISPID_ABOUTBOX)] void AboutBox(); [!endif] [!if SMARTPHONE2003_UI_MODEL] #endif // !WIN32_PLATFORM_WFSP [!endif] [!endif] }; // Event dispatch interface for [!output CONTROL_CLASS] [ uuid([!output EVENT_IID_REGISTRY_FORMAT]), helpstring("Event interface for [!output CONTROL_TYPE_NAME]") ] dispinterface _D[!output SAFE_PROJECT_IDENTIFIER_NAME]Events { properties: // Event interface has no properties methods: [!if ASYNC_PROPERTY_LOAD] [id(DISPID_READYSTATECHANGE)] void ReadyStateChange(); [!endif] }; // Class information for [!output CONTROL_CLASS] [!if RUNTIME_LICENSE] [ uuid([!output CONTROL_CLSID]), licensed, [!else] [ uuid([!output CONTROL_CLSID]), [!endif] helpstring("[!output CONTROL_TYPE_NAME]"), control ] coclass [!output LIB_NAME] { [default] dispinterface _D[!output SAFE_PROJECT_IDENTIFIER_NAME]; [default, source] dispinterface _D[!output SAFE_PROJECT_IDENTIFIER_NAME]Events; }; };