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.

314 lines
11 KiB

  1. /************************************************************************
  2. ** D B D A O I D . H *
  3. ** *
  4. ** *
  5. ** OLE DAO component class id definitions *
  6. ** DAO has been allocated the GUID::Data1 range of 0x00025eXX *
  7. ** *
  8. *************************************************************************
  9. ** Copyright (C) 1996 by Microsoft Corporation *
  10. ** All Rights Reserved *
  11. ************************************************************************/
  12. /* The pre-3.5 GUIDs have been redefined with "30" added to the ID. For example:
  13. IID_IDAOIndex becomes IID30_IDAOIndex
  14. This way both the 30 and 3.5 GUIDs can be used at once
  15. */
  16. DEFINE_OLEGUID(LIBID_CJETSQLHELP, 0x00025f01, 0, 0);
  17. #define DEFINE_DAOGUID(name, l) \
  18. DEFINE_GUID(name, l, 0, 0x10, 0x80,0,0,0xAA,0,0x6D,0x2E,0xA4)
  19. // Type library
  20. DEFINE_OLEGUID(LIBID_CDAO, 0x00025e01, 0, 0);
  21. DEFINE_OLEGUID(LIBID_CDAO25, 0x00025e04, 0, 0);
  22. // StdObject
  23. DEFINE_DAOGUID(IID_IDAOStdObject, 0x0000000A);
  24. // StdCollection
  25. DEFINE_DAOGUID(IID_IDAOStdCollection, 0x0000000C);
  26. // Creatable Classes
  27. DEFINE_DAOGUID(CLSID_CDAODBEngine, 0x00000010);
  28. DEFINE_DAOGUID(CLSID_CDAOPrivDBEngine, 0x00000011);
  29. DEFINE_DAOGUID(CLSID_CDAOConnection, 0x00000012);
  30. DEFINE_DAOGUID(CLSID_CDAOTableDef, 0x00000013);
  31. DEFINE_DAOGUID(CLSID_CDAOField, 0x00000014);
  32. DEFINE_DAOGUID(CLSID_CDAOIndex, 0x00000015);
  33. DEFINE_DAOGUID(CLSID_CDAOGroup, 0x00000016);
  34. DEFINE_DAOGUID(CLSID_CDAOUser, 0x00000017);
  35. DEFINE_DAOGUID(CLSID_CDAOQueryDef, 0x00000018);
  36. DEFINE_DAOGUID(CLSID_CDAORelation, 0x00000019);
  37. // DBEngine
  38. DEFINE_DAOGUID(IID_IDAODBEngine, 0x00000020);
  39. DEFINE_DAOGUID(IID_IDAODBEngineW, 0x00000021);
  40. // Error
  41. DEFINE_DAOGUID(IID_IDAOError, 0x00000022);
  42. DEFINE_DAOGUID(IID_IDAOErrorW, 0x00000023);
  43. DEFINE_DAOGUID(IID_IDAOErrors, 0x00000024);
  44. DEFINE_DAOGUID(IID_IDAOErrorsW, 0x00000025);
  45. // Property
  46. DEFINE_DAOGUID(IID_IDAOProperty, 0x00000026);
  47. DEFINE_DAOGUID(IID_IDAOPropertyW, 0x00000027);
  48. DEFINE_DAOGUID(IID_IDAOProperties, 0x00000028);
  49. DEFINE_DAOGUID(IID_IDAOPropertiesW, 0x00000029);
  50. // Recordset
  51. DEFINE_DAOGUID(IID_IDAORecordset, 0x00000030);
  52. DEFINE_DAOGUID(IID_IDAORecordsetW, 0x00000031);
  53. DEFINE_DAOGUID(IID_IDAORecordsets, 0x00000032);
  54. DEFINE_DAOGUID(IID_IDAORecordsetsW, 0x00000033);
  55. DEFINE_OLEGUID(IID_ICDAORecordset, 0x00025e31, 0, 0); //same as it was in 3.0
  56. // Workspace
  57. DEFINE_DAOGUID(IID_IDAOWorkspace, 0x00000038);
  58. DEFINE_DAOGUID(IID_IDAOWorkspaceW, 0x00000039);
  59. DEFINE_DAOGUID(IID_IDAOWorkspaces, 0x0000003A);
  60. DEFINE_DAOGUID(IID_IDAOWorkspacesW, 0x0000003B);
  61. // Connection
  62. DEFINE_DAOGUID(IID_IDAOConnection, 0x00000040);
  63. DEFINE_DAOGUID(IID_IDAOConnectionW, 0x00000041);
  64. DEFINE_DAOGUID(IID_IDAOConnections, 0x00000042);
  65. DEFINE_DAOGUID(IID_IDAOConnectionsW, 0x00000043);
  66. // TableDef
  67. DEFINE_DAOGUID(IID_IDAOTableDef, 0x00000048);
  68. DEFINE_DAOGUID(IID_IDAOTableDefW, 0x00000049);
  69. DEFINE_DAOGUID(IID_IDAOTableDefs, 0x0000004A);
  70. DEFINE_DAOGUID(IID_IDAOTableDefsW, 0x0000004B);
  71. // Field
  72. DEFINE_DAOGUID(IID_IDAOField, 0x00000050);
  73. DEFINE_DAOGUID(IID_IDAOFieldW, 0x00000051);
  74. DEFINE_DAOGUID(IID_IDAOFields, 0x00000052);
  75. DEFINE_DAOGUID(IID_IDAOFieldsW, 0x00000053);
  76. // Index
  77. DEFINE_DAOGUID(IID_IDAOIndex, 0x00000058);
  78. DEFINE_DAOGUID(IID_IDAOIndexW, 0x00000059);
  79. DEFINE_DAOGUID(IID_IDAOIndexes, 0x0000005A);
  80. DEFINE_DAOGUID(IID_IDAOIndexesW, 0x0000005B);
  81. DEFINE_DAOGUID(IID_IDAOIndexFields, 0x0000005C);
  82. DEFINE_DAOGUID(IID_IDAOIndexFieldsW, 0x0000005D);
  83. // Group
  84. DEFINE_DAOGUID(IID_IDAOGroup, 0x00000060);
  85. DEFINE_DAOGUID(IID_IDAOGroupW, 0x00000061);
  86. DEFINE_DAOGUID(IID_IDAOGroups, 0x00000062);
  87. DEFINE_DAOGUID(IID_IDAOGroupsW, 0x00000063);
  88. // User
  89. DEFINE_DAOGUID(IID_IDAOUser, 0x00000068);
  90. DEFINE_DAOGUID(IID_IDAOUserW, 0x00000069);
  91. DEFINE_DAOGUID(IID_IDAOUsers, 0x0000006A);
  92. DEFINE_DAOGUID(IID_IDAOUsersW, 0x0000006B);
  93. // Database
  94. DEFINE_DAOGUID(IID_IDAODatabase, 0x00000070);
  95. DEFINE_DAOGUID(IID_IDAODatabaseW, 0x00000071);
  96. DEFINE_DAOGUID(IID_IDAODatabases, 0x00000072);
  97. DEFINE_DAOGUID(IID_IDAODatabasesW, 0x00000073);
  98. // QueryDef
  99. DEFINE_DAOGUID(IID_IDAOQueryDef, 0x00000078);
  100. DEFINE_DAOGUID(IID_IDAOQueryDefW, 0x00000079);
  101. DEFINE_DAOGUID(IID_IDAOQueryDefs, 0x0000007A);
  102. DEFINE_DAOGUID(IID_IDAOQueryDefsW, 0x0000007B);
  103. // Parameter
  104. DEFINE_DAOGUID(IID_IDAOParameter, 0x00000080);
  105. DEFINE_DAOGUID(IID_IDAOParameterW, 0x00000081);
  106. DEFINE_DAOGUID(IID_IDAOParameters, 0x00000082);
  107. DEFINE_DAOGUID(IID_IDAOParametersW, 0x00000083);
  108. // Relation
  109. DEFINE_DAOGUID(IID_IDAORelation, 0x00000088);
  110. DEFINE_DAOGUID(IID_IDAORelationW, 0x00000089);
  111. DEFINE_DAOGUID(IID_IDAORelations, 0x0000008A);
  112. DEFINE_DAOGUID(IID_IDAORelationsW, 0x0000008B);
  113. // Container
  114. DEFINE_DAOGUID(IID_IDAOContainer, 0x00000090);
  115. DEFINE_DAOGUID(IID_IDAOContainerW, 0x00000091);
  116. DEFINE_DAOGUID(IID_IDAOContainers, 0x00000092);
  117. DEFINE_DAOGUID(IID_IDAOContainersW, 0x00000093);
  118. // Document
  119. DEFINE_DAOGUID(IID_IDAODocument, 0x00000098);
  120. DEFINE_DAOGUID(IID_IDAODocumentW, 0x00000099);
  121. DEFINE_DAOGUID(IID_IDAODocuments, 0x0000009A);
  122. DEFINE_DAOGUID(IID_IDAODocumentsW, 0x0000009B);
  123. // Collections
  124. DEFINE_DAOGUID(IID_IDAOCollection, 0x000000A0);
  125. DEFINE_DAOGUID(IID_IDAODynaCollection, 0x000000A2);
  126. // Connection points
  127. DEFINE_DAOGUID(IID_IDAOQueryCP, 0x000000B0);
  128. DEFINE_DAOGUID(IID_IDAOQueryAS, 0x000000B2);
  129. // Type library
  130. DEFINE_OLEGUID(LIBID30_CDAO, 0x00025e01, 0, 0);
  131. DEFINE_OLEGUID(LIBID30_CDAO25, 0x00025e04, 0, 0);
  132. // StdObject
  133. DEFINE_OLEGUID(IID30_IDAOStdObject, 0x00025e02, 0, 0);
  134. // StdCollection
  135. DEFINE_OLEGUID(IID30_IDAOStdCollection, 0x00025e03, 0, 0);
  136. /*
  137. NOTES:
  138. * Two sets of CLSIDs exist for the DBEngine object.
  139. * DBEngine and DBEngine30. The 30 extension means
  140. * that this engine should load the 3.0 typelibrary
  141. * from the registry. Otherwise, load the 2.5/3.0
  142. * compatability type library
  143. */
  144. // DBEngine
  145. DEFINE_OLEGUID(CLSID30_CDAODBEngine, 0x00025e15, 0, 0);
  146. DEFINE_OLEGUID(IID30_IDAODBEngine, 0x00025e16, 0, 0);
  147. DEFINE_OLEGUID(IID30_IDAODBEngineW, 0x00025e17, 0, 0);
  148. DEFINE_OLEGUID(IID30_ICDAOJETDBEngine, 0x00025e18, 0, 0);
  149. DEFINE_OLEGUID(CLSID30_CDAOPrivDBEngine, 0x00025e19, 0, 0);
  150. // Error
  151. DEFINE_OLEGUID(IID30_IDAOError, 0x00025e1d, 0, 0);
  152. DEFINE_OLEGUID(IID30_IDAOErrorW, 0x00025e1e, 0, 0);
  153. DEFINE_OLEGUID(IID30_IDAOErrors, 0x00025e1f, 0, 0);
  154. DEFINE_OLEGUID(IID30_IDAOErrorsW, 0x00025e20, 0, 0);
  155. DEFINE_OLEGUID(IID30_ICDAOJETError, 0x00025e21, 0, 0); //used by Access, goes away post 3.0
  156. // Property
  157. DEFINE_OLEGUID(IID30_IDAOProperty, 0x00025e25, 0, 0);
  158. DEFINE_OLEGUID(IID30_IDAOPropertyW, 0x00025e26, 0, 0);
  159. DEFINE_OLEGUID(IID30_IDAOProperties, 0x00025e27, 0, 0);
  160. DEFINE_OLEGUID(IID30_IDAOPropertiesW, 0x00025e28, 0, 0);
  161. // Recordset
  162. DEFINE_OLEGUID(IID30_IDAORecordset, 0x00025e2d, 0, 0);
  163. DEFINE_OLEGUID(IID30_IDAORecordsetW, 0x00025e2e, 0, 0);
  164. DEFINE_OLEGUID(IID30_IDAORecordsets, 0x00025e2f, 0, 0);
  165. DEFINE_OLEGUID(IID30_IDAORecordsetsW, 0x00025e30, 0, 0);
  166. DEFINE_OLEGUID(IID30_ICDAORecordset, 0x00025e31, 0, 0); //NOTE: No change for 3.1 or 3.5
  167. DEFINE_OLEGUID(IID30_ICDAOJETRecordset, 0x00025e32, 0, 0);
  168. // Snapshot
  169. DEFINE_OLEGUID(IID30_IDAOSnapshot, 0x00025e33, 0, 0);
  170. // Table
  171. DEFINE_OLEGUID(IID30_IDAOTable, 0x00025e34, 0, 0);
  172. // Dynaset
  173. DEFINE_OLEGUID(IID30_IDAODynaset, 0x00025e35, 0, 0);
  174. // Workspace
  175. DEFINE_OLEGUID(IID30_IDAOWorkspace, 0x00025e3a, 0, 0);
  176. DEFINE_OLEGUID(IID30_IDAOWorkspaceW, 0x00025e3b, 0, 0);
  177. DEFINE_OLEGUID(IID30_IDAOWorkspaces, 0x00025e3c, 0, 0);
  178. DEFINE_OLEGUID(IID30_IDAOWorkspacesW, 0x00025e3d, 0, 0);
  179. DEFINE_OLEGUID(IID30_ICDAOJETWorkspace, 0x00025e3e, 0, 0);
  180. // Connection (new to 3.1)
  181. DEFINE_OLEGUID(CLSID30_CDAOConnection, 0x00025eb1, 0, 0);
  182. DEFINE_OLEGUID(IID30_IDAOConnection, 0x00025eb2, 0, 0);
  183. DEFINE_OLEGUID(IID30_IDAOConnectionW, 0x00025eb3, 0, 0);
  184. DEFINE_OLEGUID(IID30_IDAOConnections, 0x00025eb4, 0, 0);
  185. DEFINE_OLEGUID(IID30_IDAOConnectionsW, 0x00025eb5, 0, 0);
  186. // TableDef
  187. DEFINE_OLEGUID(CLSID30_CDAOTableDef, 0x00025e43, 0, 0);
  188. DEFINE_OLEGUID(IID30_IDAOTableDef, 0x00025e44, 0, 0);
  189. DEFINE_OLEGUID(IID30_IDAOTableDefW, 0x00025e45, 0, 0);
  190. DEFINE_OLEGUID(IID30_IDAOTableDefs, 0x00025e46, 0, 0);
  191. DEFINE_OLEGUID(IID30_IDAOTableDefsW, 0x00025e47, 0, 0);
  192. // Field
  193. DEFINE_OLEGUID(CLSID30_CDAOField, 0x00025e4c, 0, 0);
  194. DEFINE_OLEGUID(IID30_IDAOField, 0x00025e4d, 0, 0);
  195. DEFINE_OLEGUID(IID30_IDAOFieldW, 0x00025e4e, 0, 0);
  196. DEFINE_OLEGUID(IID30_IDAOFields, 0x00025e4f, 0, 0);
  197. DEFINE_OLEGUID(IID30_IDAOFieldsW, 0x00025e50, 0, 0);
  198. //DEFINE_OLEGUID(IID30_ICDAOJETField, 0x00025e51, 0, 0); //used by Access, goes away post 3.0
  199. DEFINE_OLEGUID(IID30_ICDAOJETField, 0x00025e49, 0, 0); //used by Access, goes away post 3.0
  200. // Index
  201. DEFINE_OLEGUID(CLSID30_CDAOIndex, 0x00025e55, 0, 0);
  202. DEFINE_OLEGUID(IID30_IDAOIndex, 0x00025e56, 0, 0);
  203. DEFINE_OLEGUID(IID30_IDAOIndexW, 0x00025ed7, 0, 0);
  204. DEFINE_OLEGUID(IID30_IDAOIndexes, 0x00025e58, 0, 0);
  205. DEFINE_OLEGUID(IID30_IDAOIndexesW, 0x00025e59, 0, 0);
  206. DEFINE_OLEGUID(IID30_IDAOIndexFields, 0x00025e5a, 0, 0);
  207. DEFINE_OLEGUID(IID30_IDAOIndexFieldsW, 0x00025e5b, 0, 0);
  208. // Group
  209. DEFINE_OLEGUID(CLSID30_CDAOGroup, 0x00025e5f, 0, 0);
  210. DEFINE_OLEGUID(IID30_IDAOGroup, 0x00025e60, 0, 0);
  211. DEFINE_OLEGUID(IID30_IDAOGroupW, 0x00025e61, 0, 0);
  212. DEFINE_OLEGUID(IID30_IDAOGroups, 0x00025e62, 0, 0);
  213. DEFINE_OLEGUID(IID30_IDAOGroupsW, 0x00025e63, 0, 0);
  214. // User
  215. DEFINE_OLEGUID(CLSID30_CDAOUser, 0x00025e68, 0, 0);
  216. DEFINE_OLEGUID(IID30_IDAOUser, 0x00025e69, 0, 0);
  217. DEFINE_OLEGUID(IID30_IDAOUserW, 0x00025e6a, 0, 0);
  218. DEFINE_OLEGUID(IID30_IDAOUsers, 0x00025e6b, 0, 0);
  219. DEFINE_OLEGUID(IID30_IDAOUsersW, 0x00025e6c, 0, 0);
  220. // Database
  221. DEFINE_OLEGUID(IID30_IDAODatabase, 0x00025e71, 0, 0);
  222. DEFINE_OLEGUID(IID30_IDAODatabaseW, 0x00025e72, 0, 0);
  223. DEFINE_OLEGUID(IID30_IDAODatabases, 0x00025e73, 0, 0);
  224. DEFINE_OLEGUID(IID30_IDAODatabasesW, 0x00025e74, 0, 0);
  225. DEFINE_OLEGUID(IID30_ICDAOJETDatabase, 0x00025e75, 0, 0);
  226. // QueryDef
  227. DEFINE_OLEGUID(CLSID30_CDAOQueryDef, 0x00025e7a, 0, 0);
  228. DEFINE_OLEGUID(IID30_IDAOQueryDef, 0x00025e7b, 0, 0);
  229. DEFINE_OLEGUID(IID30_IDAOQueryDefW, 0x00025e7c, 0, 0);
  230. DEFINE_OLEGUID(IID30_IDAOQueryDefs, 0x00025e7d, 0, 0);
  231. DEFINE_OLEGUID(IID30_IDAOQueryDefsW, 0x00025e7e, 0, 0);
  232. // Parameter
  233. DEFINE_OLEGUID(IID30_IDAOParameter, 0x00025e83, 0, 0);
  234. DEFINE_OLEGUID(IID30_IDAOParameterW, 0x00025e84, 0, 0);
  235. DEFINE_OLEGUID(IID30_IDAOParameters, 0x00025e85, 0, 0);
  236. DEFINE_OLEGUID(IID30_IDAOParametersW, 0x00025e86, 0, 0);
  237. // Relation
  238. DEFINE_OLEGUID(CLSID30_CDAORelation, 0x00025e8b, 0, 0);
  239. DEFINE_OLEGUID(IID30_IDAORelation, 0x00025e8c, 0, 0);
  240. DEFINE_OLEGUID(IID30_IDAORelationW, 0x00025e8d, 0, 0);
  241. DEFINE_OLEGUID(IID30_IDAORelations, 0x00025e8e, 0, 0);
  242. DEFINE_OLEGUID(IID30_IDAORelationsW, 0x00025e8f, 0, 0);
  243. // Container
  244. DEFINE_OLEGUID(IID30_IDAOContainer, 0x00025e94, 0, 0);
  245. DEFINE_OLEGUID(IID30_IDAOContainerW, 0x00025e95, 0, 0);
  246. DEFINE_OLEGUID(IID30_IDAOContainers, 0x00025e96, 0, 0);
  247. DEFINE_OLEGUID(IID30_IDAOContainersW, 0x00025e97, 0, 0);
  248. // Document
  249. DEFINE_OLEGUID(IID30_IDAODocument, 0x00025e9c, 0, 0);
  250. DEFINE_OLEGUID(IID30_IDAODocumentW, 0x00025e9d, 0, 0);
  251. DEFINE_OLEGUID(IID30_IDAODocuments, 0x00025e9e, 0, 0);
  252. DEFINE_OLEGUID(IID30_IDAODocumentsW, 0x00025e9f, 0, 0);
  253. // Collections
  254. DEFINE_OLEGUID(IID30_IDAOCollection, 0x00025ea4, 0, 0);
  255. DEFINE_OLEGUID(IID30_IDAODynaCollection, 0x00025ea5, 0, 0);
  256. // Connection points
  257. DEFINE_OLEGUID(IID30_IDAOQueryCP, 0x00025eaa, 0, 0); // Connection point
  258. DEFINE_OLEGUID(IID30_IDAOQueryAS, 0x00025eab, 0, 0); // Advise sink interface