chanapi.h
Upload User: xhy777
Upload Date: 2007-02-14
Package Size: 24088k
Code Size: 4k
Category:

Windows Kernel

Development Platform:

Visual C++

  1. //
  2. // API to install a channel by creating a system folder in the channel directory
  3. //
  4. // Julian Jiggins (julianj), 4th May, 1997
  5. //
  6. typedef enum _tagSUBSCRIPTIONACTION {
  7.     SUBSACTION_SUBSCRIBEONLY,
  8.     SUBSACTION_ADDADDITIONALCOMPONENTS
  9. } SUBSCRIPTIONACTION;
  10. //
  11. // Flags used by SusbcribeToCDF
  12. //
  13. #define     STC_CHANNEL             0x00000001
  14. #define     STC_DESKTOPCOMPONENT    0x00000002
  15. #define     STC_ALL                 0xffffffff
  16. #define     GUID_STR_LEN            80
  17. EXTERN_C STDAPI_(void) OpenChannel
  18. (
  19.     HWND hwndParent,
  20.     HINSTANCE hinst,
  21.     LPSTR pszCmdLine,
  22.     int nShow
  23. );
  24. EXTERN_C STDAPI_(void) Subscribe
  25. (
  26.     HWND hwndParent,
  27.     HINSTANCE hinst,
  28.     LPSTR pszCmdLine,
  29.     int nShow
  30. );
  31. EXTERN_C STDAPI ParseDesktopComponent
  32. (
  33.     HWND hwndOwner,
  34.     LPWSTR wszURL,                                             
  35.     COMPONENT* pInfo
  36. );
  37. EXTERN_C STDAPI SubscribeToCDF
  38. (
  39.     HWND hwndOwner,
  40.     LPWSTR wszURL,
  41.     DWORD dwFlags
  42. );
  43. HRESULT AddChannel
  44. (
  45.     LPCTSTR pszName, 
  46.     LPCTSTR pszURL, 
  47.     LPCTSTR pszLogo, 
  48.     LPCTSTR pszWideLogo, 
  49.     LPCTSTR pszIcon,
  50.     XMLDOCTYPE xdt
  51. );
  52. HRESULT DeleteChannel
  53. (
  54.     LPTSTR pszName
  55. );
  56. HRESULT OpenChannelHelper
  57. (
  58.     LPWSTR wszURL,
  59.     HWND hwndOwner
  60. );
  61. HRESULT NavigateBrowser
  62. (
  63.     IWebBrowser2* pIWebBrowser2,
  64.     LPWSTR wszURL,
  65.     HWND hwnd
  66. );
  67. HRESULT NavigateChannelPane(
  68.     IWebBrowser2* pIWebBrowser2,
  69.     LPCWSTR pwszName
  70. );
  71. BOOL SubscriptionHelper
  72. (
  73.     IXMLDocument *pIXMLDocument,
  74.     HWND hwnd,
  75.     SUBSCRIPTIONTYPE st,
  76.     SUBSCRIPTIONACTION sa,
  77.     LPCWSTR pszwURL,
  78.     XMLDOCTYPE xdt,
  79.     BSTR* pbstrSubscribedURL
  80. );
  81. BOOL SubscribeToURL
  82. (
  83.     ISubscriptionMgr* pISubscriptionMgr,
  84.     BSTR bstrURL,
  85.     BSTR bstrName,
  86.     SUBSCRIPTIONINFO* psi,
  87.     HWND hwnd,
  88.     SUBSCRIPTIONTYPE st,
  89.     BOOL bIsSoftware
  90. );
  91. HRESULT AddDesktopComponent
  92. (
  93.     COMPONENT* pInfo
  94. );
  95. HRESULT ShowChannelPane
  96. (
  97.     IWebBrowser2* pIWebBrowser2
  98. );
  99. int Channel_CreateDirectory
  100. (
  101.     LPCTSTR pszPath
  102. );
  103. HRESULT Channel_GetBasePath(
  104.     LPTSTR pszPath,
  105.     int cch
  106. );
  107. HRESULT Channel_GetFolder
  108. (
  109.     LPTSTR pszPath,
  110.     XMLDOCTYPE xdt
  111. );
  112. BSTR Channel_GetFullPath
  113. (
  114.     LPCWSTR pwszName
  115. );
  116. DWORD CountChannels(void);
  117. HRESULT Channel_CreateSpecialFolder(
  118.     LPCTSTR pszPath,    // path to folder to create
  119.     LPCTSTR pszURL,     // url for webview
  120.     LPCTSTR pszLogo,    // [optional] path to logo
  121.     LPCTSTR pszWideLogo,// [optional] path to wide logo
  122.     LPCTSTR pszIcon,    // [optional] path to icon file
  123.     int     nIconIndex  // index to icon in above file
  124.     );
  125. BOOL InitVARIANTFromPidl(VARIANT* pvar, LPCITEMIDLIST pidl);
  126. HRESULT Channel_CreateILFromPath(LPCTSTR pszPath, LPITEMIDLIST* ppidl);
  127. HRESULT Channel_CreateChannelFolder( XMLDOCTYPE xdt );
  128. #ifndef UNICODE
  129. int MyPathCleanupSpec(LPCTSTR pszDir, LPTSTR pszSpec);
  130. #endif
  131. //HRESULT Channel_WriteNotificationPath(LPCTSTR pszURL, LPCTSTR pszPath);
  132. HRESULT UpdateImage(LPCTSTR pszPath);
  133. HRESULT PreUpdateChannelImage(
  134.     LPCTSTR pszPath,
  135.     LPTSTR pszHashItem,
  136.     int* piIndex,
  137.     UINT* puFlags,
  138.     int* piImageIndex
  139. );
  140. void UpdateChannelImage(
  141.     LPCWSTR pszHashItem,
  142.     int iIndex,
  143.     UINT uFlags,
  144.     int iImageIndex
  145. );
  146. BOOL Channel_IsInstalled(
  147.     LPCWSTR pszURL
  148. );
  149. LPOLESTR Channel_GetChannelPanePath(
  150.     LPCWSTR pszURL
  151. );
  152. void Channel_SendUpdateNotifications(
  153.     LPCWSTR pwszURL
  154. );
  155. // check the pre-load cache to see if the URL is a default installed one.
  156. BOOL Channel_CheckURLMapping(
  157.     LPCWSTR wszURL
  158. );
  159. HRESULT Channel_WriteScreenSaverURL(
  160.     LPCWSTR pszURL,
  161.     LPCWSTR pszScreenSaverURL
  162. );
  163. HRESULT Channel_RefreshScreenSaverURLs();
  164. HRESULT Channel_GetAndWriteScreenSaverURL(
  165.     LPCTSTR pszURL, 
  166.     LPCTSTR pszDesktopINI
  167. );