// // Private channel manager include file. // #undef INTERFACE #define INTERFACE IChannelMgrPriv DECLARE_INTERFACE_(IChannelMgrPriv, IUnknown) { typedef enum _tagCHANNELFOLDERLOCATION { CF_CHANNEL, CF_SOFTWAREUPDATE } CHANNELFOLDERLOCATION; // *** IUnknown methods *** STDMETHOD(QueryInterface) (THIS_ REFIID riid, LPVOID * ppvObj) PURE; STDMETHOD_(ULONG,AddRef) (THIS) PURE; STDMETHOD_(ULONG,Release) (THIS) PURE; // *** IChannelMgrPriv *** STDMETHOD(GetBaseChannelPath) (THIS_ LPSTR pszPath, int cch) PURE; STDMETHOD(InvalidateCdfCache) (THIS) PURE; STDMETHOD(PreUpdateChannelImage) (THIS_ LPCSTR pszPath, LPSTR pszHashItem, int* piIndex, UINT* puFlags, int* piImageIndex) PURE; STDMETHOD(UpdateChannelImage) (THIS_ LPCWSTR pszHashItem, int iIndex, UINT uFlags, int iImageIndex) PURE; STDMETHOD(GetChannelFolderPath) (THIS_ LPSTR pszPath, int cch, CHANNELFOLDERLOCATION cflChannel) PURE; STDMETHOD(GetChannelFolder) (THIS_ LPITEMIDLIST* ppidl, CHANNELFOLDERLOCATION cflChannel) PURE; STDMETHOD(DownloadMinCDF) (THIS_ HWND hwnd, LPCWSTR pwszURL, LPWSTR pwszTitle, DWORD cchTitle, SUBSCRIPTIONINFO *pSubInfo, BOOL *pfIsSoftware) PURE; STDMETHOD(ShowChannel) (THIS_ IWebBrowser2 *pWebBrowser2, LPWSTR pwszURL, HWND hwnd) PURE; STDMETHOD(IsChannelInstalled) (THIS_ LPCWSTR pwszURL) PURE; STDMETHOD(IsChannelPreinstalled) (THIS_ LPCWSTR pwszURL, BSTR * bstrFile) PURE; STDMETHOD(RemovePreinstalledMapping) (THIS_ LPCWSTR pwszURL) PURE; STDMETHOD(SetupPreinstalledMapping) (THIS_ LPCWSTR pwszURL, LPCWSTR pwszFile) PURE; // WARNING! BEFORE CALLING THE AddAndSubscribe METHOD YOU MUST DETECT // THE CDFVIEW VERSION BECAUSE IE 4.00 WILL CRASH IF YOU TRY // TO CALL IT // pSubscriptionMgr can be NULL STDMETHOD(AddAndSubscribe) (THIS_ HWND hwnd, LPCWSTR pwszURL, ISubscriptionMgr *pSubscriptionMgr) PURE; }; #undef INTERFACE #define INTERFACE IChannelMgrPriv2 DECLARE_INTERFACE_(IChannelMgrPriv2, IChannelMgrPriv) { // *** IUnknown methods *** STDMETHOD(QueryInterface) (THIS_ REFIID riid, LPVOID * ppvObj) PURE; STDMETHOD_(ULONG,AddRef) (THIS) PURE; STDMETHOD_(ULONG,Release) (THIS) PURE; // *** IChannelMgrPriv *** STDMETHOD(GetBaseChannelPath) (THIS_ LPSTR pszPath, int cch) PURE; STDMETHOD(InvalidateCdfCache) (THIS) PURE; STDMETHOD(PreUpdateChannelImage) (THIS_ LPCSTR pszPath, LPSTR pszHashItem, int* piIndex, UINT* puFlags, int* piImageIndex) PURE; STDMETHOD(UpdateChannelImage) (THIS_ LPCWSTR pszHashItem, int iIndex, UINT uFlags, int iImageIndex) PURE; STDMETHOD(GetChannelFolderPath) (THIS_ LPSTR pszPath, int cch, CHANNELFOLDERLOCATION cflChannel) PURE; STDMETHOD(GetChannelFolder) (THIS_ LPITEMIDLIST* ppidl, CHANNELFOLDERLOCATION cflChannel) PURE; STDMETHOD(DownloadMinCDF) (THIS_ HWND hwnd, LPCWSTR pwszURL, LPWSTR pwszTitle, DWORD cchTitle, SUBSCRIPTIONINFO *pSubInfo, BOOL *pfIsSoftware) PURE; STDMETHOD(ShowChannel) (THIS_ IWebBrowser2 *pWebBrowser2, LPWSTR pwszURL, HWND hwnd) PURE; STDMETHOD(IsChannelInstalled) (THIS_ LPCWSTR pwszURL) PURE; STDMETHOD(IsChannelPreinstalled) (THIS_ LPCWSTR pwszURL, BSTR * bstrFile) PURE; STDMETHOD(RemovePreinstalledMapping) (THIS_ LPCWSTR pwszURL) PURE; STDMETHOD(SetupPreinstalledMapping) (THIS_ LPCWSTR pwszURL, LPCWSTR pwszFile) PURE; // WARNING! BEFORE CALLING THE AddAndSubscribe METHOD YOU MUST DETECT // THE CDFVIEW VERSION BECAUSE IE 4.00 WILL CRASH IF YOU TRY // TO CALL IT // pSubscriptionMgr can be NULL STDMETHOD(AddAndSubscribe) (THIS_ HWND hwnd, LPCWSTR pwszURL, ISubscriptionMgr *pSubscriptionMgr) PURE; // *** IChannelMgrPriv2 *** STDMETHOD(WriteScreenSaverURL) (THIS_ LPCWSTR pwszURL, LPCWSTR pwszScreenSaverURL) PURE; STDMETHOD(RefreshScreenSaverURLs) (THIS) PURE; };