You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
82 lines
4.2 KiB
82 lines
4.2 KiB
//
|
|
// 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;
|
|
};
|