Source code of Windows XP (NT5)
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.

208 lines
3.6 KiB

  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. );