ShlGuid.h
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:26k
源码类别:

模拟服务器

开发平台:

C/C++

  1. //===========================================================================
  2. //
  3. // Copyright (c) Microsoft Corporation. All rights reserved.
  4. //
  5. //===========================================================================
  6. #ifndef _SHLGUID_H_
  7. #define _SHLGUID_H_
  8. #ifndef _WIN32_IE
  9. #define _WIN32_IE 0x0501
  10. #else
  11. #if (_WIN32_IE < 0x0400) && defined(_WIN32_WINNT) && (_WIN32_WINNT >= 0x0500)
  12. #error _WIN32_IE setting conflicts with _WIN32_WINNT setting
  13. #endif
  14. #endif
  15. #define DEFINE_SHLGUID(name, l, w1, w2) DEFINE_GUID(name, l, w1, w2, 0xC0,0,0,0,0,0,0,0x46)
  16. DEFINE_SHLGUID(CLSID_ShellDesktop,      0x00021400L, 0, 0); // 00021400-0000-0000-C000-000000000046
  17. DEFINE_SHLGUID(CLSID_ShellLink,         0x00021401L, 0, 0); // 00021401-0000-0000-C000-000000000046
  18. DEFINE_GUID(CLSID_NetworkPlaces,        0x208D2C60, 0x3AEA, 0x1069, 0xA2,0xD7,0x08,0x00,0x2B,0x30,0x30,0x9D);//208D2C60-3AEA-1069-A2D7-08002B30309D
  19. DEFINE_GUID(CLSID_NetworkDomain,        0x46e06680, 0x4bf0, 0x11d1, 0x83,0xee,0x00,0xa0,0xc9,0x0d,0xc8,0x49);//46e06680-4bf0-11d1-83ee-00a0c90dc849
  20. DEFINE_GUID(CLSID_NetworkServer,        0xc0542a90, 0x4bf0, 0x11d1, 0x83,0xee,0x00,0xa0,0xc9,0x0d,0xc8,0x49);//c0542a90-4bf0-11d1-83ee-00a0c90dc849
  21. DEFINE_GUID(CLSID_NetworkShare,         0x54a754c0, 0x4bf0, 0x11d1, 0x83,0xee,0x00,0xa0,0xc9,0x0d,0xc8,0x49);//54a754c0-4bf1-11d1-83ee-00a0c90dc849
  22. DEFINE_GUID(CLSID_MyComputer,           0x20D04FE0, 0x3AEA, 0x1069, 0xA2,0xD8,0x08,0x00,0x2B,0x30,0x30,0x9D);//20D04FE0-3AEA-1069-A2D8-08002B30309D
  23. DEFINE_GUID(CLSID_Internet,             0x871C5380, 0x42A0, 0x1069, 0xA2,0xEA,0x08,0x00,0x2B,0x30,0x30,0x9D);//871C5380-42A0-1069-A2EA-08002B30309D
  24. DEFINE_GUID(CLSID_ShellFSFolder,        0xF3364BA0, 0x65B9, 0x11CE, 0xA9,0xBA,0x00,0xAA,0x00,0x4A,0xE8,0x37);//F3364BA0-65B9-11CE-A9BA-00AA004AE837
  25. DEFINE_GUID(CLSID_RecycleBin,           0x645FF040, 0x5081, 0x101B, 0x9F,0x08,0x00,0xAA,0x00,0x2F,0x95,0x4E);//645FF040-5081-101B-9F08-00AA002F954E
  26. DEFINE_GUID(CLSID_ControlPanel,         0x21EC2020, 0x3AEA, 0x1069, 0xA2,0xDD,0x08,0x00,0x2B,0x30,0x30,0x9D);//21EC2020-3AEA-1069-A2DD-08002B30309D
  27. DEFINE_GUID(CLSID_Printers,             0x2227A280, 0x3AEA, 0x1069, 0xA2,0xDE,0x08,0x00,0x2B,0x30,0x30,0x9D);
  28. DEFINE_GUID(CLSID_MyDocuments,          0x450d8fba, 0xad25, 0x11d0, 0x98,0xa8,0x08,0x00,0x36,0x1b,0x11,0x03);//450D8FBA-AD25-11D0-98A8-0800361B1103
  29. // string version of above CLSIDs
  30. // useful for doing psfDesktop->ParseDisplayName( L"::" L STR_MYDOCS_CLSID, ...);
  31. #define STR_MYDOCS_CLSID   "{450D8FBA-AD25-11D0-98A8-0800361B1103}"
  32. #if (_WIN32_IE >= 0x0400)
  33. DEFINE_SHLGUID(CATID_BrowsableShellExt, 0x00021490L, 0, 0);
  34. DEFINE_SHLGUID(CATID_BrowseInPlace,     0x00021491L, 0, 0);
  35. DEFINE_SHLGUID(CATID_DeskBand,          0x00021492L, 0, 0);
  36. DEFINE_SHLGUID(CATID_InfoBand,          0x00021493L, 0, 0);
  37. DEFINE_SHLGUID(CATID_CommBand,          0x00021494L, 0, 0);
  38. #endif
  39. #define PSGUID_INTERNETSHORTCUT {0x000214A0, 0, 0, 0xC0,0,0,0,0,0,0,0x46}
  40. DEFINE_SHLGUID(FMTID_Intshcut,          0x000214A0L, 0, 0);
  41. #define PSGUID_INTERNETSITE {0x000214A1L, 0, 0, 0xC0,0,0,0,0,0,0,0x46}
  42. DEFINE_SHLGUID(FMTID_InternetSite,      0x000214A1L, 0, 0);
  43. DEFINE_SHLGUID(CGID_Explorer,           0x000214D0L, 0, 0);
  44. DEFINE_SHLGUID(CGID_ShellDocView,       0x000214D1L, 0, 0);
  45. #if (_WIN32_IE >= 0x0400)
  46. DEFINE_SHLGUID(CGID_ShellServiceObject, 0x000214D2L, 0, 0);
  47. DEFINE_SHLGUID(CGID_ExplorerBarDoc,     0x000214D3L, 0, 0);
  48. #endif
  49. DEFINE_SHLGUID(IID_INewShortcutHookA,   0x000214E1L, 0, 0);
  50. DEFINE_SHLGUID(IID_IShellBrowser,       0x000214E2L, 0, 0);
  51. DEFINE_SHLGUID(IID_IShellView,          0x000214E3L, 0, 0);
  52. DEFINE_SHLGUID(IID_IContextMenu,        0x000214E4L, 0, 0);
  53. DEFINE_SHLGUID(IID_IShellIcon,          0x000214E5L, 0, 0);
  54. DEFINE_SHLGUID(IID_IShellFolder,        0x000214E6L, 0, 0);
  55. DEFINE_SHLGUID(IID_IShellExtInit,       0x000214E8L, 0, 0);
  56. DEFINE_SHLGUID(IID_IShellPropSheetExt,  0x000214E9L, 0, 0);
  57. DEFINE_SHLGUID(IID_IPersistFolder,      0x000214EAL, 0, 0);
  58. DEFINE_SHLGUID(IID_IExtractIconA,       0x000214EBL, 0, 0);
  59. DEFINE_SHLGUID(IID_IShellDetails,       0x000214ECL, 0, 0);
  60. DEFINE_SHLGUID(IID_IDelayedRelease,     0x000214EDL, 0, 0);
  61. DEFINE_SHLGUID(IID_IShellLinkA,         0x000214EEL, 0, 0);
  62. DEFINE_SHLGUID(IID_IShellCopyHookA,     0x000214EFL, 0, 0);
  63. DEFINE_SHLGUID(IID_IFileViewerA,        0x000214F0L, 0, 0);
  64. DEFINE_SHLGUID(IID_ICommDlgBrowser,     0x000214F1L, 0, 0);
  65. DEFINE_SHLGUID(IID_IEnumIDList,         0x000214F2L, 0, 0);
  66. DEFINE_SHLGUID(IID_IFileViewerSite,     0x000214F3L, 0, 0);
  67. DEFINE_SHLGUID(IID_IContextMenu2,       0x000214F4L, 0, 0);
  68. DEFINE_SHLGUID(IID_IShellExecuteHookA,  0x000214F5L, 0, 0);
  69. DEFINE_SHLGUID(IID_IPropSheetPage,      0x000214F6L, 0, 0);
  70. DEFINE_SHLGUID(IID_INewShortcutHookW,   0x000214F7L, 0, 0);
  71. DEFINE_SHLGUID(IID_IFileViewerW,        0x000214F8L, 0, 0);
  72. DEFINE_SHLGUID(IID_IShellLinkW,         0x000214F9L, 0, 0);
  73. DEFINE_SHLGUID(IID_IExtractIconW,       0x000214FAL, 0, 0);
  74. DEFINE_SHLGUID(IID_IShellExecuteHookW,  0x000214FBL, 0, 0);
  75. DEFINE_SHLGUID(IID_IShellCopyHookW,     0x000214FCL, 0, 0);
  76. DEFINE_SHLGUID(IID_IRemoteComputer,     0x000214FEL, 0, 0);
  77. #define IID_ICopyHookA                  IID_IShellCopyHookA
  78. #define IID_ICopyHookW                  IID_IShellCopyHookW
  79. #define SID_LinkSite    IID_IShellLinkW     // IServiceProvider::QueryService() access the link object that is defering to you 
  80. #if (_WIN32_IE >= 0x0400)
  81. DEFINE_SHLGUID(IID_IQueryInfo,          0x00021500L, 0, 0);
  82. #endif
  83. DEFINE_GUID(IID_IBriefcaseStg,          0x8BCE1FA1L, 0x0921, 0x101B, 0xB1, 0xFF, 0x00, 0xDD, 0x01, 0x0C, 0xCC, 0x48);
  84. DEFINE_GUID(IID_IShellView2,            0x88E39E80L, 0x3578, 0x11CF, 0xAE, 0x69, 0x08, 0x00, 0x2B, 0x2E, 0x12, 0x62);
  85. DEFINE_GUID(IID_IShellLinkDataList,     0x45e2b4ae, 0xb1c3, 0x11d0, 0xb9, 0x2f, 0x0, 0xa0, 0xc9, 0x3, 0x12, 0xe1);
  86. #if (_WIN32_IE >= 0x0500)
  87. DEFINE_GUID(IID_IResolveShellLink,      0x5cd52983, 0x9449, 0x11d2, 0x96, 0x3a, 0x00, 0xc0, 0x4f, 0x79, 0xad, 0xf0);
  88. #endif // _WIN32_IE >= 0x0500
  89. #if (_WIN32_IE >= 0x0400)
  90. DEFINE_GUID(IID_IURLSearchHook,         0xAC60F6A0L, 0x0FD9, 0x11D0, 0x99, 0xCB, 0x00, 0xC0, 0x4F, 0xD6, 0x44, 0x97);
  91. DEFINE_GUID(IID_ISearchContext,         0x09F656A2L, 0x41AF, 0x480C, 0x88, 0xF7, 0x16, 0xCC, 0x0D, 0x16, 0x46, 0x15);
  92. DEFINE_GUID(IID_IURLSearchHook2,        0x5ee44da4L, 0x6d32, 0x46e3, 0x86, 0xbc, 0x07, 0x54, 0x0d, 0xed, 0xd0, 0xe0);
  93. DEFINE_GUID(IID_IDelegateFolder,        0xADD8BA80L, 0x002B, 0x11D0, 0x8F, 0x0F, 0x00, 0xC0, 0x4F, 0xD7, 0xD0, 0x62);
  94. #if (_WIN32_IE >= 0x0500)
  95. // CLSID_FolderShortcut {0AFACED1-E828-11D1-9187-B532F1E9575D}
  96. DEFINE_GUID(CLSID_FolderShortcut,       0x0AFACED1L, 0xE828, 0x11D1, 0x91, 0x87, 0xB5, 0x32, 0xF1, 0xE9, 0x57, 0x5D);
  97. // CLSID_StorageFolder {E773F1AF-3A65-4866-857D-846FC9C4598A}
  98. DEFINE_GUID(CLSID_StgFolder,            0xE773F1AFL, 0x3A65, 0x4866, 0x85, 0x7D, 0x84, 0x6F, 0xC9, 0xC4, 0x59, 0x8A);
  99. #endif
  100. DEFINE_GUID(IID_IInputObject,           0x68284faa, 0x6a48, 0x11d0, 0x8c, 0x78, 0x0, 0xc0, 0x4f, 0xd9, 0x18, 0xb4);
  101. DEFINE_GUID(IID_IInputObjectSite,       0xf1db8392, 0x7331, 0x11d0, 0x8c, 0x99, 0x0, 0xa0, 0xc9, 0x2d, 0xbf, 0xe8);
  102. DEFINE_GUID(IID_IDockingWindowSite,     0x2a342fc2, 0x7b26, 0x11d0, 0x8c, 0xa9, 0x0, 0xa0, 0xc9, 0x2d, 0xbf, 0xe8);
  103. DEFINE_GUID(IID_IDockingWindowFrame,    0x47d2657a, 0x7b27, 0x11d0, 0x8c, 0xa9, 0x0, 0xa0, 0xc9, 0x2d, 0xbf, 0xe8);
  104. DEFINE_GUID(IID_IShellIconOverlay,      0x7D688A70L, 0xC613, 0x11D0, 0x99, 0x9B, 0x00, 0xC0, 0x4F, 0xD6, 0x55, 0xE1);
  105. DEFINE_GUID(IID_IShellIconOverlayIdentifier,  0x0C6C4200L, 0xC589, 0x11D0, 0x99, 0x9A, 0x00, 0xC0, 0x4F, 0xD6, 0x55, 0xE1);
  106. // {10339516-2894-11d2-9039-00C04F8EEB3E}
  107. DEFINE_GUID(IID_ICommDlgBrowser2,       0x10339516, 0x2894, 0x11d2, 0x90, 0x39, 0x0, 0xc0, 0x4f, 0x8e, 0xeb, 0x3e);
  108. // 2047E320-F2A9-11CE-AE65-08002B2E1262
  109. DEFINE_GUID(IID_IShellFolderViewCB, 0x2047E320L, 0xF2A9, 0x11CE, 0xAE, 0x65, 0x08, 0x00, 0x2B, 0x2E, 0x12, 0x62);
  110. #define SID_ShellFolderViewCB IID_IShellFolderViewCB
  111. // {CEF04FDF-FE72-11d2-87A5-00C04F6837CF}
  112. DEFINE_GUID(IID_IPersistFolder3,        0xcef04fdf, 0xfe72, 0x11d2, 0x87, 0xa5, 0x0, 0xc0, 0x4f, 0x68, 0x37, 0xcf);
  113. // {63B51F81-C868-11D0-999C-00C04FD655E1}
  114. DEFINE_GUID(CLSID_CFSIconOverlayManager, 0x63B51F81L, 0xC868, 0x11D0, 0x99, 0x9C, 0x00, 0xC0, 0x4F, 0xD6, 0x55, 0xE1);
  115. // {85788D00-6807-11d0-B810-00C04FD706EC}
  116. DEFINE_GUID(IID_IRunnableTask,               0x85788d00, 0x6807, 0x11d0, 0xb8, 0x10, 0x0, 0xc0, 0x4f, 0xd7, 0x6, 0xec);
  117. // {4ea39266-7211-409f-b622-f63dbd16c533}
  118. DEFINE_GUID(IID_IThumbnailCapture,           0x4ea39266, 0x7211, 0x409f, 0xb6, 0x22, 0xf6, 0x3d, 0xbd, 0x16, 0xc5, 0x33);
  119. // {BCFCE0A0-EC17-11d0-8D10-00A0C90F2719}
  120. DEFINE_GUID(IID_IContextMenu3,          0xbcfce0a0, 0xec17, 0x11d0, 0x8d, 0x10, 0x0, 0xa0, 0xc9, 0xf, 0x27, 0x19);
  121. #endif // _WIN32_IE >= 0x0400
  122. #define SID_SShellBrowser IID_IShellBrowser
  123. #if (_WIN32_IE >= 0x0400)
  124. #define SID_SShellDesktop CLSID_ShellDesktop
  125. #endif
  126. #if (_WIN32_IE >= 0x0400)
  127. //
  128. //  IShellDiscardable is an IID-only interface. If the object supports this
  129. // interface it can be discarded anytime. IWebBrowser::PutProperty QI's for
  130. // this interface to detect discardable properties. 
  131. //
  132. DEFINE_GUID(IID_IDiscardableBrowserProperty, 0x49c3de7c, 0xd329, 0x11d0, 0xab, 0x73, 0x00, 0xc0, 0x4f, 0xc3, 0x3e, 0x80);
  133. // IShellChangeNotify is a sink of LPCITEMIDLIST notification events
  134. //
  135. // D82BE2B1-5764-11D0-A96E-00C04FD705A2
  136. DEFINE_GUID(IID_IShellChangeNotify, 0xD82BE2B1L, 0x5764, 0x11D0, 0xA9, 0x6E, 0x00, 0xC0, 0x4F, 0xD7, 0x05, 0xA2);
  137. #endif // _WIN32_IE >= 0x0400
  138. #ifdef UNICODE
  139. #define IID_IFileViewer         IID_IFileViewerW
  140. #define IID_IShellLink          IID_IShellLinkW
  141. #define IID_IExtractIcon        IID_IExtractIconW
  142. #define IID_IShellCopyHook      IID_IShellCopyHookW
  143. #define IID_IShellExecuteHook   IID_IShellExecuteHookW
  144. #define IID_INewShortcutHook    IID_INewShortcutHookW
  145. #else
  146. #define IID_IFileViewer         IID_IFileViewerA
  147. #define IID_IShellLink          IID_IShellLinkA
  148. #define IID_IExtractIcon        IID_IExtractIconA
  149. #define IID_IShellCopyHook      IID_IShellCopyHookA
  150. #define IID_IShellExecuteHook   IID_IShellExecuteHookA
  151. #define IID_INewShortcutHook    IID_INewShortcutHookA
  152. #endif
  153. #ifndef NO_INTSHCUT_GUIDS
  154. #include <isguids.h>            // internet shortcut GUIDs
  155. #endif
  156. #ifndef NO_SHDOCVW_GUIDS
  157. #ifndef GUID_DEFS_ONLY
  158. #include <exdisp.h>
  159. #include <shldisp.h>
  160. #endif
  161. #if (_WIN32_IE >= 0x0400)
  162. // UrlHistory Guids
  163. DEFINE_GUID(CLSID_CUrlHistory,          0x3C374A40L, 0xBAE4, 0x11CF, 0xBF, 0x7D, 0x00, 0xAA, 0x00, 0x69, 0x46, 0xEE);
  164. #define SID_SUrlHistory         CLSID_CUrlHistory
  165. //UrlSearchHook Guids
  166. DEFINE_GUID(CLSID_CURLSearchHook,       0xCFBFAE00L, 0x17A6, 0x11D0, 0x99, 0xCB, 0x00, 0xC0, 0x4F, 0xD6, 0x44, 0x97);
  167. #define SID_SInternetExplorer IID_IWebBrowserApp
  168. #define SID_SWebBrowserApp    IID_IWebBrowserApp
  169. // AutoComplete Guids
  170. DEFINE_GUID(IID_IAutoCompList,          0x00BB2760L, 0x6A77, 0x11D0, 0xA5, 0x35, 0x00, 0xC0, 0x4F, 0xD7, 0xD0, 0x62);
  171. DEFINE_GUID(IID_IObjMgr,                0x00BB2761L, 0x6A77, 0x11D0, 0xA5, 0x35, 0x00, 0xC0, 0x4F, 0xD7, 0xD0, 0x62);
  172. DEFINE_GUID(IID_IACList,                0x77A130B0L, 0x94FD, 0x11D0, 0xA5, 0x44, 0x00, 0xC0, 0x4F, 0xD7, 0xd0, 0x62);
  173. DEFINE_GUID(IID_IACList2,               0x470141a0L, 0x5186, 0x11d2, 0xbb, 0xb6, 0x00, 0x60, 0x97, 0x7b, 0x46, 0x4c);
  174. DEFINE_GUID(IID_ICurrentWorkingDirectory, 0x91956d21L, 0x9276, 0x11d1, 0x92, 0x1a, 0x00, 0x60, 0x97, 0xdf, 0x5b, 0xd4);     // {91956D21-9276-11d1-921A-006097DF5BD4}
  175. DEFINE_GUID(CLSID_AutoComplete,         0x00BB2763L, 0x6A77, 0x11D0, 0xA5, 0x35, 0x00, 0xC0, 0x4F, 0xD7, 0xD0, 0x62);
  176. DEFINE_GUID(CLSID_ACLHistory,           0x00BB2764L, 0x6A77, 0x11D0, 0xA5, 0x35, 0x00, 0xC0, 0x4F, 0xD7, 0xD0, 0x62);
  177. DEFINE_GUID(CLSID_ACListISF,            0x03C036F1L, 0xA186, 0x11D0, 0x82, 0x4A, 0x00, 0xAA, 0x00, 0x5B, 0x43, 0x83);
  178. DEFINE_GUID(CLSID_ACLMRU,               0x6756a641L, 0xde71, 0x11d0, 0x83, 0x1b, 0x0, 0xaa, 0x0, 0x5b, 0x43, 0x83);          // {6756A641-DE71-11d0-831B-00AA005B4383}
  179. DEFINE_GUID(CLSID_ACLMulti,             0x00BB2765L, 0x6A77, 0x11D0, 0xA5, 0x35, 0x00, 0xC0, 0x4F, 0xD7, 0xD0, 0x62);
  180. #if (_WIN32_IE >= 0x0600)
  181. DEFINE_GUID(CLSID_ACLCustomMRU,      0x6935db93, 0x21e8, 0x4ccc, 0xbe, 0xb9, 0x9f, 0xe3, 0xc7, 0x7a, 0x29, 0x7a);
  182. #endif
  183. #if (_WIN32_IE >= 0x0500)
  184. /// IProgressDialog
  185. // {F8383852-FCD3-11d1-A6B9-006097DF5BD4}
  186. DEFINE_GUID(CLSID_ProgressDialog,       0xf8383852, 0xfcd3, 0x11d1, 0xa6, 0xb9, 0x0, 0x60, 0x97, 0xdf, 0x5b, 0xd4);
  187. // {EBBC7C04-315E-11d2-B62F-006097DF5BD4}
  188. DEFINE_GUID(IID_IProgressDialog,        0xebbc7c04, 0x315e, 0x11d2, 0xb6, 0x2f, 0x0, 0x60, 0x97, 0xdf, 0x5b, 0xd4);
  189. #endif // _WIN32_IE >= 0x0500
  190. // 
  191. // Progress objects exposed via QueryService
  192. //
  193. #define SID_SProgressUI CLSID_ProgressDialog
  194. //
  195. // Top-most browser implementation in the heirarchy. use IServiceProvider::QueryService()
  196. // to get to interfaces (IID_IShellBrowser, IID_IBrowserService, etc.)
  197. //
  198. DEFINE_GUID(SID_STopLevelBrowser,       0x4C96BE40L, 0x915C, 0x11CF, 0x99, 0xD3, 0x00, 0xAA, 0x00, 0x4A, 0xE8, 0x37);
  199. #endif // _WIN32_IE >= 0x0400
  200. #endif // !NO_SHDOCVW_GUIDS
  201. #if (_WIN32_IE >= 0x0400)
  202. // {75048700-EF1F-11D0-9888-006097DEACF9}
  203. DEFINE_GUID( CLSID_ActiveDesktop, 0x75048700L, 0xEF1F, 0x11D0, 0x98, 0x88, 0x00, 0x60, 0x97, 0xDE, 0xAC, 0xF9);
  204. // {F490EB00-1240-11D1-9888-006097DEACF9}
  205. DEFINE_GUID(IID_IActiveDesktop, 0xF490EB00L, 0x1240, 0x11D1, 0x98, 0x88, 0x00, 0x60, 0x97, 0xDE, 0xAC, 0xF9);
  206. // {74C26041-70D1-11d1-B75A-00A0C90564FE}
  207. DEFINE_GUID(IID_ISynchronizedCallBack, 0x74c26041, 0x70d1, 0x11d1, 0xb7, 0x5a, 0x0, 0xa0, 0xc9, 0x5, 0x64, 0xfe);
  208. // Extended column handler interfaces
  209. // {D2A105C0-87D5-11d1-8391-0000F80461CF}
  210. DEFINE_GUID(IID_IShellDetails3,        0xd2a105c0, 0x87d5, 0x11d1, 0x83, 0x91, 0x0, 0x0, 0xf8, 0x4, 0x61, 0xcf);
  211. //  {c46ca590-3c3f-11d2-bee6-0000f805ca57}
  212. DEFINE_GUID(IID_IQueryAssociations,          0xc46ca590, 0x3c3f, 0x11d2, 0xbe, 0xe6, 0x00, 0x00, 0xf8, 0x05, 0xca, 0x57);
  213. // {a07034fd-6caa-4954-ac3f-97a27216f98a}
  214. DEFINE_GUID(CLSID_QueryAssociations, 0xa07034fd, 0x6caa, 0x4954, 0xac, 0x3f, 0x97, 0xa2, 0x72, 0x16, 0xf9, 0x8a);
  215. // {E8025004-1C42-11d2-BE2C-00A0C9A83DA1}
  216. DEFINE_GUID(IID_IColumnProvider,        0xe8025004, 0x1c42, 0x11d2, 0xbe, 0x2c, 0x0, 0xa0, 0xc9, 0xa8, 0x3d, 0xa1);
  217. // {24F14F01-7B1C-11d1-838f-0000F80461CF}
  218. DEFINE_GUID(CLSID_DocFileColumnProvider, 0x24f14f01, 0x7b1c, 0x11d1, 0x83, 0x8f, 0x0, 0x0, 0xf8, 0x4, 0x61, 0xcf);
  219. // {24F14F02-7B1C-11d1-838f-0000F80461CF}
  220. DEFINE_GUID(CLSID_LinkColumnProvider,    0x24f14f02, 0x7b1c, 0x11d1, 0x83, 0x8f, 0x0, 0x0, 0xf8, 0x4, 0x61, 0xcf);
  221. // {0D2E74C4-3C34-11d2-A27E-00C04FC30871}
  222. DEFINE_GUID(CLSID_FileSysColumnProvider, 0xd2e74c4, 0x3c34, 0x11d2, 0xa2, 0x7e, 0x0, 0xc0, 0x4f, 0xc3, 0x8, 0x71);
  223. // For Internet Shortcut Creation Command
  224. // The shell uses this command to allow trident to save off it's per frame data in the shortcut
  225. // and to allow it to fire the OnPersist() event on every frame
  226. // {93A68750-951A-11d1-946F-000000000000}
  227. DEFINE_GUID(CGID_ShortCut, 0x93a68750, 0x951a, 0x11d1, 0x94, 0x6f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0);
  228. // {FB700430-952C-11d1-946F-000000000000}
  229. DEFINE_GUID(IID_INamedPropertyBag, 0xfb700430, 0x952c, 0x11d1, 0x94, 0x6f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0);
  230. // {1E796980-9CC5-11D1-A83F-00C04FC99D61}
  231. DEFINE_GUID(CLSID_InternetButtons, 0x1E796980L, 0x9CC5, 0x11D1, 0xA8, 0x3F, 0x00, 0xC0, 0x4F, 0xC9, 0x9D, 0x61);
  232. #if (_WIN32_IE >= 0x0500)
  233. // {178F34B8-A282-11d2-86C5-00C04F8EEA99}
  234. DEFINE_GUID(CLSID_MSOButtons, 0x178f34b8, 0xa282, 0x11d2, 0x86, 0xc5, 0x0, 0xc0, 0x4f, 0x8e, 0xea, 0x99);
  235. // {2CE4B5D8-A28F-11d2-86C5-00C04F8EEA99}
  236. DEFINE_GUID(CLSID_ToolbarExtButtons, 0x2ce4b5d8, 0xa28f, 0x11d2, 0x86, 0xc5, 0x0, 0xc0, 0x4f, 0x8e, 0xea, 0x99);
  237. #endif // _WIN32_IE >= 0x0500
  238. // {CFCCC7A0-A282-11D1-9082-006008059382}
  239. DEFINE_GUID(CLSID_DarwinAppPublisher, 0xCFCCC7A0L, 0xA282, 0x11D1, 0x90, 0x82, 0x00, 0x60, 0x08, 0x05, 0x93, 0x82);
  240. // {7057E952-BD1B-11d1-8919-00C04FC2C836}
  241. DEFINE_GUID(CLSID_DocHostUIHandler, 0x7057e952, 0xbd1b, 0x11d1, 0x89, 0x19, 0x0, 0xc0, 0x4f, 0xc2, 0xc8, 0x36);
  242. #endif  // _WIN32_IE >= 0x0400
  243. #if (_WIN32_IE >= 0x0500)
  244. // {93F2F68C-1D1B-11d3-A30E-00C04F79ABD1}
  245. DEFINE_GUID(IID_IShellFolder2,  0x93f2f68c, 0x1d1b, 0x11d3, 0xa3, 0xe, 0x0, 0xc0, 0x4f, 0x79, 0xab, 0xd1);
  246. #define PSGUID_SHELLDETAILS     {0x28636aa6, 0x953d, 0x11d2, 0xb5, 0xd6, 0x0, 0xc0, 0x4f, 0xd9, 0x18, 0xd0}
  247. DEFINE_GUID(FMTID_ShellDetails,  0x28636aa6, 0x953d, 0x11d2, 0xb5, 0xd6, 0x0, 0xc0, 0x4f, 0xd9, 0x18, 0xd0);
  248. #define PID_FINDDATA        0
  249. #define PID_NETRESOURCE     1
  250. #define PID_DESCRIPTIONID   2
  251. #define PID_WHICHFOLDER     3
  252. #define PID_NETWORKLOCATION 4
  253. #define PID_COMPUTERNAME    5
  254. // PSGUID_STORAGE comes from ntquery.h
  255. //#define PSGUID_STORAGE    {0xb725f130, 0x47ef, 0x101a, 0xa5, 0xf1, 0x02, 0x60, 0x8c, 0x9e, 0xeb, 0xac}
  256. DEFINE_GUID(FMTID_Storage,   0xb725f130, 0x47ef, 0x101a, 0xa5, 0xf1, 0x02, 0x60, 0x8c, 0x9e, 0xeb, 0xac);
  257. // Image properties 
  258. #define PSGUID_IMAGEPROPERTIES {0x14b81da1, 0x0135, 0x4d31, 0x96, 0xd9, 0x6c, 0xbf, 0xc9, 0x67, 0x1a, 0x99}
  259. DEFINE_GUID(FMTID_ImageProperties, 0x14b81da1, 0x0135, 0x4d31, 0x96, 0xd9, 0x6c, 0xbf, 0xc9, 0x67, 0x1a, 0x99);
  260. // The GUIDs used to identify shell item attributes (columns). See IShellFolder2::GetDetailsEx implementations...
  261. // {9B174B33-40FF-11d2-A27E-00C04FC30871}
  262. #define PSGUID_DISPLACED    {0x9b174b33, 0x40ff, 0x11d2, 0xa2, 0x7e, 0x0, 0xc0, 0x4f, 0xc3, 0x8, 0x71}
  263. DEFINE_GUID(FMTID_Displaced, 0x9b174b33, 0x40ff, 0x11d2, 0xa2, 0x7e, 0x0, 0xc0, 0x4f, 0xc3, 0x8, 0x71);
  264. #define PID_DISPLACED_FROM  2
  265. #define PID_DISPLACED_DATE  3
  266. // {328D8B21-7729-4bfc-954C-902B329D56B0}
  267. #define PSGUID_BRIEFCASE    {0x328d8b21, 0x7729, 0x4bfc, 0x95, 0x4c, 0x90, 0x2b, 0x32, 0x9d, 0x56, 0xb0}
  268. DEFINE_GUID(FMTID_Briefcase, 0x328d8b21, 0x7729, 0x4bfc, 0x95, 0x4c, 0x90, 0x2b, 0x32, 0x9d, 0x56, 0xb0);
  269. #define PID_SYNC_COPY_IN    2
  270. // {9B174B34-40FF-11d2-A27E-00C04FC30871}
  271. #define PSGUID_MISC    {0x9b174b34, 0x40ff, 0x11d2, 0xa2, 0x7e, 0x0, 0xc0, 0x4f, 0xc3, 0x8, 0x71}
  272. DEFINE_GUID(FMTID_Misc, 0x9b174b34, 0x40ff, 0x11d2, 0xa2, 0x7e, 0x0, 0xc0, 0x4f, 0xc3, 0x8, 0x71);
  273. #define PID_MISC_STATUS         2
  274. #define PID_MISC_ACCESSCOUNT    3
  275. #define PID_MISC_OWNER          4
  276. #define PID_HTMLINFOTIPFILE     5
  277. #define PID_MISC_PICS           6
  278. // {F2275480-F782-4291-BD94-F13693513AEC}
  279. #define PSGUID_WEBVIEW  {0xf2275480, 0xf782, 0x4291, 0xbd, 0x94, 0xf1, 0x36, 0x93, 0x51, 0x3a, 0xec}
  280. DEFINE_GUID(FMTID_WebView, 0xf2275480, 0xf782, 0x4291, 0xbd, 0x94, 0xf1, 0x36, 0x93, 0x51, 0x3a, 0xec);
  281. #define PID_DISPLAY_PROPERTIES  0
  282. #define PID_INTROTEXT           1
  283. // {56A3372E-CE9C-11d2-9F0E-006097C686F6}
  284. #define PSGUID_MUSIC    {0x56a3372e, 0xce9c, 0x11d2, 0x9f, 0xe, 0x0, 0x60, 0x97, 0xc6, 0x86, 0xf6}
  285. DEFINE_GUID(FMTID_MUSIC, 0x56a3372e, 0xce9c, 0x11d2, 0x9f, 0xe, 0x0, 0x60, 0x97, 0xc6, 0x86, 0xf6);
  286. #define PIDSI_ARTIST    2
  287. #define PIDSI_SONGTITLE 3
  288. #define PIDSI_ALBUM     4
  289. #define PIDSI_YEAR      5
  290. #define PIDSI_COMMENT   6
  291. #define PIDSI_TRACK     7
  292. #define PIDSI_GENRE     11
  293. #define PIDSI_LYRICS    12
  294. // {AEAC19E4-89AE-4508-B9B7-BB867ABEE2ED}
  295. #define PSGUID_DRM    {0xaeac19e4, 0x89ae, 0x4508, 0xb9, 0xb7, 0xbb, 0x86, 0x7a, 0xbe, 0xe2, 0xed}
  296. DEFINE_GUID(FMTID_DRM, 0xaeac19e4, 0x89ae, 0x4508, 0xb9, 0xb7, 0xbb, 0x86, 0x7a, 0xbe, 0xe2, 0xed);
  297. #define PIDDRSI_PROTECTED    2
  298. #define PIDDRSI_DESCRIPTION  3
  299. #define PIDDRSI_PLAYCOUNT    4
  300. #define PIDDRSI_PLAYSTARTS   5
  301. #define PIDDRSI_PLAYEXPIRES  6
  302. #define PSGUID_VIDEO   {0x64440491, 0x4c8b, 0x11d1, 0x8b, 0x70, 0x8, 0x0, 0x36, 0xb1, 0x1a, 0x3}
  303. //  FMTID_VideoSummaryInformation property identifiers
  304. #define PIDVSI_STREAM_NAME      0x00000002 // "StreamName", VT_LPWSTR
  305. #define PIDVSI_FRAME_WIDTH      0x00000003 // "FrameWidth", VT_UI4
  306. #define PIDVSI_FRAME_HEIGHT     0x00000004 // "FrameHeight", VT_UI4
  307. #define PIDVSI_TIMELENGTH       0x00000007 // "TimeLength", VT_UI4, milliseconds
  308. #define PIDVSI_FRAME_COUNT      0x00000005 // "FrameCount". VT_UI4
  309. #define PIDVSI_FRAME_RATE       0x00000006 // "FrameRate", VT_UI4, frames/millisecond
  310. #define PIDVSI_DATA_RATE        0x00000008 // "DataRate", VT_UI4, bytes/second
  311. #define PIDVSI_SAMPLE_SIZE      0x00000009 // "SampleSize", VT_UI4
  312. #define PIDVSI_COMPRESSION      0x0000000A // "Compression", VT_LPWSTR
  313. #define PIDVSI_STREAM_NUMBER    0x0000000B // "StreamNumber", VT_UI2
  314. #define PSGUID_AUDIO   {0x64440490, 0x4c8b, 0x11d1, 0x8b, 0x70, 0x8, 0x0, 0x36, 0xb1, 0x1a, 0x3}
  315. //  FMTID_AudioSummaryInformation property identifiers
  316. #define PIDASI_FORMAT           0x00000002 // VT_BSTR
  317. #define PIDASI_TIMELENGTH       0x00000003 // VT_UI4, milliseconds
  318. #define PIDASI_AVG_DATA_RATE    0x00000004 // VT_UI4,  Hz
  319. #define PIDASI_SAMPLE_RATE      0x00000005 // VT_UI4,  bits
  320. #define PIDASI_SAMPLE_SIZE      0x00000006 // VT_UI4,  bits
  321. #define PIDASI_CHANNEL_COUNT    0x00000007 // VT_UI4
  322. #define PIDASI_STREAM_NUMBER    0x00000008 // VT_UI2
  323. #define PIDASI_STREAM_NAME      0x00000009 // VT_LPWSTR
  324. #define PIDASI_COMPRESSION      0x0000000A // VT_LPWSTR
  325. // {305CA226-D286-468e-B848-2B2E8E697B74}
  326. #define PSGUID_CONTROLPANEL {0x305ca226, 0xd286, 0x468e, 0xb8, 0x48, 0x2b, 0x2e, 0x8e, 0x69, 0x7b, 0x74}
  327. #define PID_CONTROLPANEL_CATEGORY 2
  328. // {9B174B35-40FF-11d2-A27E-00C04FC30871}
  329. #define PSGUID_VOLUME    {0x9b174b35, 0x40ff, 0x11d2, 0xa2, 0x7e, 0x0, 0xc0, 0x4f, 0xc3, 0x8, 0x71}
  330. DEFINE_GUID(FMTID_Volume, 0x9b174b35, 0x40ff, 0x11d2, 0xa2, 0x7e, 0x0, 0xc0, 0x4f, 0xc3, 0x8, 0x71);
  331. #define PID_VOLUME_FREE         2
  332. #define PID_VOLUME_CAPACITY     3
  333. #define PID_VOLUME_FILESYSTEM   4
  334. // {D8C3986F-813B-449c-845D-87B95D674ADE}
  335. #define PSGUID_SHARE    {0xd8c3986f, 0x813b, 0x449c, 0x84, 0x5d, 0x87, 0xb9, 0x5d, 0x67, 0x4a, 0xde}
  336. #define PID_SHARE_CSC_STATUS    2
  337. // {B9B4B3FC-2B51-4a42-B5D8-324146AFCF25}
  338. #define PSGUID_LINK     {0xb9b4b3fc, 0x2b51, 0x4a42, 0xb5, 0xd8, 0x32, 0x41, 0x46, 0xaf, 0xcf, 0x25}
  339. #define PID_LINK_TARGET         2
  340. #define PSGUID_QUERY_D {0x49691c90,0x7e17,0x101a, 0xa9,0x1c,0x08,0x00,0x2b,0x2e,0xcd,0xa9}
  341. DEFINE_GUID(FMTID_Query, 0x49691c90,0x7e17,0x101a, 0xa9,0x1c,0x08,0x00,0x2b,0x2e,0xcd,0xa9);
  342. #define PID_QUERY_RANK  2
  343. // FMTID_SummaryInformation, see OLE docs for PID_ values for these
  344. #define PSGUID_SUMMARYINFORMATION       {0xf29f85e0L, 0x4ff9, 0x1068, 0xab, 0x91, 0x08, 0x00, 0x2b, 0x27, 0xb3, 0xd9}
  345. // FMTID_DocumentSummaryInformation, see OLE docs on the PID_ values for this
  346. #define PSGUID_DOCUMENTSUMMARYINFORMATION {0xd5cdd502L, 0x2e9c, 0x101b, 0x93, 0x97, 0x08, 0x00, 0x2b, 0x2c, 0xf9, 0xae}
  347. // FMTID_MediaFileSummaryInformation, see propidl.h PID_ values for this
  348. #define PSGUID_MEDIAFILESUMMARYINFORMATION {0x64440492L, 0x4c8b, 0x11d1, 0x8b, 0x70, 0x08, 0x00, 0x36, 0xb1, 0x1a, 0x03}
  349. // FMTID_ImageSummaryInformation,, see propidl.h PID_ values for this
  350. #define PSGUID_IMAGESUMMARYINFORMATION {0x6444048fL, 0x4c8b, 0x11d1, 0x8b, 0x70, 0x8, 0x00, 0x36, 0xb1, 0x1a, 0x03}
  351. // {0E700BE1-9DB6-11d1-A1CE-00C04FD75D13}
  352. DEFINE_GUID(IID_IEnumExtraSearch,  0xe700be1, 0x9db6, 0x11d1, 0xa1, 0xce, 0x0, 0xc0, 0x4f, 0xd7, 0x5d, 0x13);
  353. // {12518493-00B2-11d2-9FA5-9E3420524153}
  354. DEFINE_GUID(CLSID_MountedVolume, 0x12518493, 0x00B2, 0x11d2, 0x9F, 0xA5, 0x9E, 0x34, 0x20, 0x52, 0x41, 0x53);
  355. // {FFB8655F-81B9-4fce-B89C-9A6BA76D13E7}
  356. DEFINE_GUID(CLSID_HWShellExecute, 0xffb8655f, 0x81b9, 0x4fce, 0xb8, 0x9c, 0x9a, 0x6b, 0xa7, 0x6d, 0x13, 0xe7);
  357. // {12518492-00B2-11d2-9FA5-9E3420524153}
  358. DEFINE_GUID(IID_IMountedVolume, 0x12518492, 0x00B2, 0x11d2, 0x9F, 0xA5, 0x9E, 0x34, 0x20, 0x52, 0x41, 0x53);
  359. // {4657278A-411B-11d2-839A-00C04FD918D0}
  360. DEFINE_GUID(CLSID_DragDropHelper,   0x4657278a, 0x411b, 0x11d2, 0x83, 0x9a, 0x0, 0xc0, 0x4f, 0xd9, 0x18, 0xd0);
  361. // {4657278B-411B-11d2-839A-00C04FD918D0}
  362. DEFINE_GUID(IID_IDropTargetHelper,  0x4657278b, 0x411b, 0x11d2, 0x83, 0x9a, 0x0, 0xc0, 0x4f, 0xd9, 0x18, 0xd0);
  363. // {DE5BF786-477A-11d2-839D-00C04FD918D0}
  364. DEFINE_GUID(IID_IDragSourceHelper,  0xde5bf786, 0x477a, 0x11d2, 0x83, 0x9d, 0x0, 0xc0, 0x4f, 0xd9, 0x18, 0xd0);
  365. // {3050f3BB-98b5-11cf-bb82-00aa00bdce0b}
  366. DEFINE_GUID(CLSID_CAnchorBrowsePropertyPage, 0x3050f3BB, 0x98b5, 0x11cf, 0xbb, 0x82, 0x00, 0xaa, 0x00, 0xbd, 0xce, 0x0b);
  367. // {3050f3B3-98b5-11cf-bb82-00aa00bdce0b}
  368. DEFINE_GUID(CLSID_CImageBrowsePropertyPage, 0x3050f3B3, 0x98b5, 0x11cf, 0xbb, 0x82, 0x00, 0xaa, 0x00, 0xbd, 0xce, 0x0b);
  369. // {3050f3B4-98b5-11cf-bb82-00aa00bdce0b}
  370. DEFINE_GUID(CLSID_CDocBrowsePropertyPage, 0x3050f3B4, 0x98b5, 0x11cf, 0xbb, 0x82, 0x00, 0xaa, 0x00, 0xbd, 0xce, 0x0b);
  371. // {01E18D10-4D8B-11d2-855D-006008059367}
  372. DEFINE_GUID(IID_IFileSystemBindData, 0x1e18d10, 0x4d8b, 0x11d2, 0x85, 0x5d, 0x0, 0x60, 0x8, 0x5, 0x93, 0x67);
  373. // {49E1B500-4636-11d3-97F7-00C04F45D0B3}
  374. DEFINE_GUID(SID_STopWindow, 0x49e1b500, 0x4636, 0x11d3, 0x97, 0xf7, 0x0, 0xc0, 0x4f, 0x45, 0xd0, 0xb3);
  375. // {889A935D-971E-4B12-B90C-24DFC9E1E5E8}
  376. DEFINE_GUID(SID_SGetViewFromViewDual, 0x889A935D, 0x971E, 0x4B12, 0xB9, 0x0C, 0x24, 0xDF, 0xC9, 0xE1, 0xE5, 0xE8);
  377. //  BHIDs for IShellItem::BindToHandler()
  378. #define BHID_LocalCopyHelper     CLSID_LocalCopyHelper
  379. //  {3981e224-f559-11d3-8e3a-00c04f6837d5}
  380. DEFINE_GUID(BHID_SFObject, 0x3981e224, 0xf559, 0x11d3, 0x8e, 0x3a, 0x00, 0xc0, 0x4f, 0x68, 0x37, 0xd5);
  381. //  {3981e225-f559-11d3-8e3a-00c04f6837d5}
  382. DEFINE_GUID(BHID_SFUIObject, 0x3981e225, 0xf559, 0x11d3, 0x8e, 0x3a, 0x00, 0xc0, 0x4f, 0x68, 0x37, 0xd5);
  383. //  {3981e226-f559-11d3-8e3a-00c04f6837d5}
  384. DEFINE_GUID(BHID_SFViewObject, 0x3981e226, 0xf559, 0x11d3, 0x8e, 0x3a, 0x00, 0xc0, 0x4f, 0x68, 0x37, 0xd5);
  385. //  {3981e227-f559-11d3-8e3a-00c04f6837d5}
  386. DEFINE_GUID(BHID_Storage, 0x3981e227, 0xf559, 0x11d3, 0x8e, 0x3a, 0x00, 0xc0, 0x4f, 0x68, 0x37, 0xd5);
  387. // {1CEBB3AB-7C10-499a-A417-92CA16C4CB83}
  388. DEFINE_GUID(BHID_Stream, 0x1cebb3ab, 0x7c10, 0x499a, 0xa4, 0x17, 0x92, 0xca, 0x16, 0xc4, 0xcb, 0x83);
  389. //  {3981e228-f559-11d3-8e3a-00c04f6837d5}
  390. DEFINE_GUID(BHID_LinkTargetItem, 0x3981e228, 0xf559, 0x11d3, 0x8e, 0x3a, 0x00, 0xc0, 0x4f, 0x68, 0x37, 0xd5);
  391. // {4621A4E3-F0D6-4773-8A9C-46E77B174840}
  392. DEFINE_GUID(BHID_StorageEnum, 0x4621a4e3, 0xf0d6, 0x4773, 0x8a, 0x9c, 0x46, 0xe7, 0x7b, 0x17, 0x48, 0x40);
  393. #endif // _WIN32_IE >= 0x0500
  394. #if _WIN32_IE >= 0x0600
  395. // {faadfc40-b777-4b69-aa81-77035ef0e6e8}
  396. DEFINE_GUID(SID_CtxQueryAssociations, 0xfaadfc40, 0xb777, 0x4b69, 0xaa, 0x81, 0x77, 0x03, 0x5e, 0xf0, 0xe6, 0xe8);
  397. #endif // _WIN32_IE >= 0x0600
  398. #endif // _SHLGUID_H_