Leaked source code of windows server 2003
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.

408 lines
22 KiB

  1. import "ocidl.idl";
  2. import "objidl.idl";
  3. #ifndef unix
  4. import "propidl.idl";
  5. #endif /* unix */
  6. //+-------------------------------------------------------------------------
  7. // Interfaces
  8. //+-------------------------------------------------------------------------
  9. interface IPropertyBucket;
  10. interface IOptionBucket;
  11. cpp_quote("//+-------------------------------------------------------------------------")
  12. cpp_quote("// GUID Definitions")
  13. cpp_quote("//--------------------------------------------------------------------------")
  14. cpp_quote("#pragma comment(lib,\"uuid.lib\")")
  15. cpp_quote("")
  16. cpp_quote("// {EC320F20-4B33-11d1-AA10-006097D474C4}")
  17. cpp_quote("DEFINE_GUID(IID_IPropertyBucket, 0xec320f20, 0x4b33, 0x11d1, 0xaa, 0x10, 0x0, 0x60, 0x97, 0xd4, 0x74, 0xc4);")
  18. cpp_quote("")
  19. cpp_quote("// {EC320F21-4B33-11d1-AA10-006097D474C4}")
  20. cpp_quote("DEFINE_GUID(IID_IOptionBucket, 0xec320f21, 0x4b33, 0x11d1, 0xaa, 0x10, 0x0, 0x60, 0x97, 0xd4, 0x74, 0xc4);")
  21. cpp_quote("")
  22. cpp_quote("#define OPT_BASE 0")
  23. cpp_quote("#define OPT_TIPOFTHEDAY (OPT_BASE + 1)")
  24. cpp_quote("#define OPT_SHOWSTATUSBAR (OPT_BASE + 3)")
  25. cpp_quote("#define OPT_SHOWTREE (OPT_BASE + 4)")
  26. cpp_quote("#define OPT_TREEWIDTH (OPT_BASE + 5)")
  27. cpp_quote("#define OPT_EXPAND_UNREAD (OPT_BASE + 6)")
  28. cpp_quote("#define OPT_BROWSERPOS (OPT_BASE + 7)")
  29. cpp_quote("#define OPT_SHOWBODYBAR (OPT_BASE + 8)")
  30. cpp_quote("#define OPT_BODYBARPOS (OPT_BASE + 9)")
  31. cpp_quote("#define OPT_IMAPPURGE (OPT_BASE + 12)")
  32. cpp_quote("#define OPT_HIDEFOLDERBAR (OPT_BASE + 13)")
  33. cpp_quote("#define OPT_SPELLALWAYSSUGGEST (OPT_BASE + 14)")
  34. cpp_quote("#define OPT_SPELLIGNORENUMBER (OPT_BASE + 15)")
  35. cpp_quote("#define OPT_SPELLIGNOREUPPER (OPT_BASE + 16)")
  36. cpp_quote("#define OPT_SPELLIGNOREPROTECT (OPT_BASE + 17)")
  37. cpp_quote("#define OPT_SPELLCHECKONSEND (OPT_BASE + 18)")
  38. cpp_quote("#define OPT_SPELLIGNOREDBCS (OPT_BASE + 19)")
  39. cpp_quote("#define OPT_SPELLIGNOREURL (OPT_BASE + 20)")
  40. cpp_quote("#define OPT_SPELLCHECKONTYPE (OPT_BASE + 21)")
  41. cpp_quote("#define OPT_CHECKEDMAILACCOUNTS (OPT_BASE + 22)")
  42. cpp_quote("#define OPT_CHECKEDNEWSACCOUNTS (OPT_BASE + 23)")
  43. cpp_quote("#define OPT_AUTO_IMAGE_INLINE (OPT_BASE + 25)")
  44. cpp_quote("#define OPT_USEAUTOCOMPLETE (OPT_BASE + 27)")
  45. cpp_quote("#define OPT_REPLYINORIGFMT (OPT_BASE + 28)")
  46. cpp_quote("#define OPT_RASCONNDETAILS (OPT_BASE + 29)")
  47. cpp_quote("#define OPT_DIALUP_START (OPT_BASE + 30)")
  48. cpp_quote("#define OPT_DIALUP_CONNECTION (OPT_BASE + 31)")
  49. cpp_quote("#define OPT_DIALUP_WARN_SWITCH (OPT_BASE + 32)")
  50. cpp_quote("#define OPT_DIALUP_HANGUP_DONE (OPT_BASE + 33)")
  51. cpp_quote("#define OPT_DIALUP_LAST_START (OPT_BASE + 34)")
  52. cpp_quote("#define OPT_DIALUP_HANGUP_WITHOUT_DIAL (OPT_BASE + 35)")
  53. cpp_quote("#define OPT_SPOOLERDLGPOS (OPT_BASE + 36)")
  54. cpp_quote("#define OPT_SPOOLERTACK (OPT_BASE + 37)")
  55. cpp_quote("#define OPT_DIAL_DURING_POLL (OPT_BASE + 38)")
  56. cpp_quote("#define OPT_LAUNCH_INBOX (OPT_BASE + 39)")
  57. cpp_quote("#define OPT_SECURITYZONE (OPT_BASE + 40)")
  58. cpp_quote("#define OPT_HARDCODEDHDRS (OPT_BASE + 41)")
  59. cpp_quote("#define OPT_SMTPUSEIPFORHELO (OPT_BASE + 42)")
  60. cpp_quote("#define OPT_FIND_THREAD (OPT_BASE + 43)")
  61. cpp_quote("#define OPT_FIND_FILTER_STATE (OPT_BASE + 44)")
  62. cpp_quote("#define OPT_NEWMAILSOUND (OPT_BASE + 45)")
  63. cpp_quote("#define OPT_PURGEWASTE (OPT_BASE + 46)")
  64. cpp_quote("#define OPT_MAIL_ATTACHVCARD (OPT_BASE + 47)")
  65. cpp_quote("#define OPT_MAIL_VCARDNAME (OPT_BASE + 48)")
  66. cpp_quote("#define OPT_MAILHYBRIDVIEW (OPT_BASE + 49)")
  67. cpp_quote("#define OPT_SECURITYZONELOCKED (OPT_BASE + 50)")
  68. cpp_quote("#define OPT_MAILCXSPLIT (OPT_BASE + 52)")
  69. cpp_quote("#define OPT_MAILCYSPLIT (OPT_BASE + 53)")
  70. cpp_quote("#define OPT_MAILSPLITDIR (OPT_BASE + 54)")
  71. cpp_quote("#define OPT_MAILNOTEPOS (OPT_BASE + 55)")
  72. cpp_quote("#define OPT_SENDIMMEDIATE (OPT_BASE + 56)")
  73. cpp_quote("#define OPT_NEEDWELCOMEMSG (OPT_BASE + 57)")
  74. cpp_quote("#define OPT_INCOMDEFENCODE (OPT_BASE + 58)")
  75. cpp_quote("#define OPT_MAILSHOWHEADERINFO (OPT_BASE + 61)")
  76. cpp_quote("#define OPT_MAIL_IMAP4LOGFILE (OPT_BASE + 62)")
  77. cpp_quote("#define OPT_MAILINDENT (OPT_BASE + 63)")
  78. cpp_quote("#define OPT_MAILLOG (OPT_BASE + 64)")
  79. cpp_quote("#define OPT_MAILSMTPLOGFILE (OPT_BASE + 65)")
  80. cpp_quote("#define OPT_MAILPOP3LOGFILE (OPT_BASE + 66)")
  81. cpp_quote("#define OPT_MAIL_SEND_HTML (OPT_BASE + 67)")
  82. cpp_quote("#define OPT_MAIL_MSG_PLAIN_MIME (OPT_BASE + 68)")
  83. cpp_quote("#define OPT_MAIL_MSG_PLAIN_ENCODE (OPT_BASE + 69)")
  84. cpp_quote("#define OPT_MAIL_MSG_HTML_ENCODE (OPT_BASE + 70)")
  85. cpp_quote("#define OPT_MAIL_MSG_PLAIN_LINE_WRAP (OPT_BASE + 71)")
  86. cpp_quote("#define OPT_MAIL_MSG_HTML_LINE_WRAP (OPT_BASE + 72)")
  87. cpp_quote("#define OPT_MAIL_MSG_HTML_ALLOW_8BIT (OPT_BASE + 73)")
  88. cpp_quote("#define OPT_MAIL_MSG_PLAIN_ALLOW_8BIT (OPT_BASE + 74)")
  89. cpp_quote("#define OPT_MAIL_LANG_VIEW (OPT_BASE + 75)")
  90. cpp_quote("#define OPT_MAIL_VIEW_SET_DEFAULT (OPT_BASE + 76)")
  91. cpp_quote("#define OPT_MAIL_AUTOADDTOWABONREPLY (OPT_BASE + 79)")
  92. cpp_quote("#define OPT_MAIL_DEFENCRYPTSYMCAPS (OPT_BASE + 81)")
  93. cpp_quote("#define OPT_MAIL_SENDINLINEIMAGES (OPT_BASE + 82)")
  94. cpp_quote("#define OPT_MAIL_MSG_HTML_INDENT_REPLY (OPT_BASE + 83)")
  95. cpp_quote("#define OPT_MAIL_DIGSIGNMESSAGES (OPT_BASE + 84)")
  96. cpp_quote("#define OPT_MAIL_ENCRYPTMESSAGES (OPT_BASE + 85)")
  97. cpp_quote("#define OPT_MAIL_INCLUDECERT (OPT_BASE + 86)")
  98. cpp_quote("#define OPT_MAIL_LOGIMAP4 (OPT_BASE + 87)")
  99. cpp_quote("#define OPT_MAIL_THREAD (OPT_BASE + 89)")
  100. cpp_quote("#define OPT_SAVESENTMSGS (OPT_BASE + 90)")
  101. cpp_quote("#define OPT_INCLUDEMSG (OPT_BASE + 91)")
  102. cpp_quote("#define OPT_POLLFORMSGS (OPT_BASE + 92)")
  103. cpp_quote("#define OPT_MARKASREAD (OPT_BASE + 93)")
  104. cpp_quote("#define OPT_MAIL_FONTCOLOR (OPT_BASE + 95)")
  105. cpp_quote("#define OPT_MAIL_FONTFACE (OPT_BASE + 98)")
  106. cpp_quote("#define OPT_MAIL_FONTSIZE (OPT_BASE + 99)")
  107. cpp_quote("#define OPT_MAIL_FONTBOLD (OPT_BASE + 100)")
  108. cpp_quote("#define OPT_MAIL_FONTITALIC (OPT_BASE + 101)")
  109. cpp_quote("#define OPT_MAIL_FONTUNDERLINE (OPT_BASE + 102)")
  110. cpp_quote("#define OPT_MAIL_USESTATIONERY (OPT_BASE + 103)")
  111. cpp_quote("#define OPT_MAIL_STATIONERYNAME (OPT_BASE + 104)")
  112. cpp_quote("")
  113. cpp_quote("#define OPT_DOWNLOADCHUNKS (OPT_BASE + 105)")
  114. cpp_quote("#define OPT_NOTIFYGROUPS (OPT_BASE + 107)")
  115. cpp_quote("#define OPT_MARKALLREAD (OPT_BASE + 108)")
  116. cpp_quote("#define OPT_NEWS_ATTACHVCARD (OPT_BASE + 109)")
  117. cpp_quote("#define OPT_NEWS_VCARDNAME (OPT_BASE + 110)")
  118. cpp_quote("#define OPT_NEWS_XPORT_LOG (OPT_BASE + 111)")
  119. cpp_quote("#define OPT_NEWSHYBRIDVIEW (OPT_BASE + 112)")
  120. cpp_quote("#define OPT_NEWSCXSPLIT (OPT_BASE + 115)")
  121. cpp_quote("#define OPT_NEWSCYSPLIT (OPT_BASE + 116)")
  122. cpp_quote("#define OPT_NEWSSPLITDIR (OPT_BASE + 117)")
  123. cpp_quote("#define OPT_NEWSDLGPOS (OPT_BASE + 122)")
  124. cpp_quote("#define OPT_NEWSDLGCOLUMNS (OPT_BASE + 123)")
  125. cpp_quote("#define OPT_NEWSSHOWHEADERINFO (OPT_BASE + 124)")
  126. cpp_quote("#define OPT_NEWSNOTEADVREAD (OPT_BASE + 125)")
  127. cpp_quote("#define OPT_NEWSNOTEADVSEND (OPT_BASE + 126)")
  128. cpp_quote("#define OPT_NEWSMODERATOR (OPT_BASE + 127)")
  129. cpp_quote("#define OPT_NEWSCONTROLHEADER (OPT_BASE + 128)")
  130. cpp_quote("#define OPT_NEWSINDENT (OPT_BASE + 131)")
  131. cpp_quote("#define OPT_CACHEDELETEMSGS (OPT_BASE + 132)")
  132. cpp_quote("#define OPT_CACHEREAD (OPT_BASE + 133)")
  133. cpp_quote("#define OPT_CACHECOMPACTPER (OPT_BASE + 134)")
  134. cpp_quote("#define OPT_NEWSDLDLGPOS (OPT_BASE + 137)")
  135. cpp_quote("#define OPT_NEWS_SEND_HTML (OPT_BASE + 138)")
  136. cpp_quote("#define OPT_NEWS_MSG_PLAIN_MIME (OPT_BASE + 139)")
  137. cpp_quote("#define OPT_NEWS_MSG_PLAIN_ENCODE (OPT_BASE + 140)")
  138. cpp_quote("#define OPT_NEWS_MSG_HTML_ENCODE (OPT_BASE + 141)")
  139. cpp_quote("#define OPT_NEWS_MSG_PLAIN_LINE_WRAP (OPT_BASE + 142)")
  140. cpp_quote("#define OPT_NEWS_MSG_HTML_LINE_WRAP (OPT_BASE + 143)")
  141. cpp_quote("#define OPT_NEWS_MSG_HTML_ALLOW_8BIT (OPT_BASE + 144)")
  142. cpp_quote("#define OPT_NEWS_MSG_PLAIN_ALLOW_8BIT (OPT_BASE + 145)")
  143. cpp_quote("#define OPT_NEWS_LANG_VIEW (OPT_BASE + 146)")
  144. cpp_quote("#define OPT_NEWS_VIEW_SET_DEFAULT (OPT_BASE + 147)")
  145. cpp_quote("#define OPT_NEWS_THREAD (OPT_BASE + 149)")
  146. cpp_quote("#define OPT_AUTOEXPAND (OPT_BASE + 150)")
  147. cpp_quote("#define OPT_AUTOFILLPREVIEW (OPT_BASE + 151)")
  148. cpp_quote("#define OPT_NEWS_SENDINLINEIMAGES (OPT_BASE + 152)")
  149. cpp_quote("#define OPT_NEWS_FONTCOLOR (OPT_BASE + 153)")
  150. cpp_quote("#define OPT_NEWS_FONTFACE (OPT_BASE + 156)")
  151. cpp_quote("#define OPT_NEWS_FONTSIZE (OPT_BASE + 157)")
  152. cpp_quote("#define OPT_NEWS_FONTBOLD (OPT_BASE + 158)")
  153. cpp_quote("#define OPT_NEWS_FONTITALIC (OPT_BASE + 159)")
  154. cpp_quote("#define OPT_NEWS_FONTUNDERLINE (OPT_BASE + 160)")
  155. cpp_quote("#define OPT_NEWS_USESTATIONERY (OPT_BASE + 161)")
  156. cpp_quote("#define OPT_NEWS_STATIONERYNAME (OPT_BASE + 162)")
  157. cpp_quote("#define OPT_NEWS_MSG_HTML_INDENT_REPLY (OPT_BASE + 164)")
  158. cpp_quote("#define OPT_ATHENA_RUNNING (OPT_BASE + 165)")
  159. cpp_quote("#define OPT_MIGRATION_PERFORMED (OPT_BASE + 166)")
  160. cpp_quote("#define OPT_NO_SELF_ENCRYPT (OPT_BASE + 167)")
  161. cpp_quote("#define OPT_LAST_MESSAGE (OPT_BASE + 168)")
  162. cpp_quote("#define OPT_FINDER_POS (OPT_BASE + 169)")
  163. cpp_quote("#define OPT_OPAQUE_SIGN (OPT_BASE + 170)")
  164. cpp_quote("#define OPT_SPELL_LANGID (OPT_BASE + 171)")
  165. cpp_quote("#define OPT_TEST_MODE (OPT_BASE + 172)")
  166. cpp_quote("#define OPT_DUMP_FILE (OPT_BASE + 173)")
  167. cpp_quote("#define OPT_NO_SPLASH (OPT_BASE + 174)")
  168. cpp_quote("#define OPT_SHOW_NOTE_STATUSBAR (OPT_BASE + 177)")
  169. cpp_quote("#define OPT_SHOW_NOTE_FMTBAR (OPT_BASE + 178)")
  170. cpp_quote("#define OPT_ATTACH_VIEW_STYLE (OPT_BASE + 179)")
  171. cpp_quote("#define OPT_SIGNATURE_FLAGS (OPT_BASE + 181)")
  172. cpp_quote("#define OPT_NOPREVIEW (OPT_BASE + 182)")
  173. cpp_quote("#define OPT_SAVEATTACH_PATH (OPT_BASE + 183)")
  174. cpp_quote("#define OPT_SHOW_ENVELOPES (OPT_BASE + 184)")
  175. cpp_quote("#define OPT_AUTO_ADD_SENDERS_CERT_TO_WAB (OPT_BASE + 186)")
  176. cpp_quote("#define OPT_VIEWSOURCETABS (OPT_BASE + 187)")
  177. cpp_quote("#define OPT_MAIL_ENCRYPT_WARN_BITS (OPT_BASE + 188)")
  178. cpp_quote("#define OPT_SOURCE_EDIT_COLORING (OPT_BASE + 189)")
  179. cpp_quote("#define OPT_MESSAGE_LIST_TIPS (OPT_BASE + 190)")
  180. cpp_quote("#define OPT_MAILNOTEADVREAD (OPT_BASE + 191)")
  181. cpp_quote("#define OPT_MAILNOTEADVSEND (OPT_BASE + 192)")
  182. cpp_quote("#define OPT_SHOWOUTLOOKBAR (OPT_BASE + 193)")
  183. cpp_quote("#define OPT_NAVPANEWIDTH (OPT_BASE + 194)")
  184. cpp_quote("#define OPT_NAVPANESPLIT (OPT_BASE + 195)")
  185. cpp_quote("#define OPT_SHOWCONTACTS (OPT_BASE + 196)")
  186. cpp_quote("#define OPT_BACKGROUNDCOMPACT (OPT_BASE + 198)")
  187. cpp_quote("#define OPT_FILTERJUNK (OPT_BASE + 199)")
  188. cpp_quote("#define OPT_JUNKPCT (OPT_BASE + 200)")
  189. cpp_quote("#define OPT_DELETEJUNK (OPT_BASE + 201)")
  190. cpp_quote("#define OPT_DELETEJUNKDAYS (OPT_BASE + 202)")
  191. cpp_quote("#define OPT_FILTERADULT (OPT_BASE + 203)")
  192. cpp_quote("#define OPT_MAIL_LOGHTTPMAIL (OPT_BASE + 204)")
  193. cpp_quote("#define OPT_MAIL_HTTPMAILLOGFILE (OPT_BASE + 205)")
  194. cpp_quote("#define OPT_BASORT (OPT_BASE + 206)")
  195. cpp_quote("#define OPT_WATCHED_COLOR (OPT_BASE + 207)")
  196. cpp_quote("#define OPT_POLLFORMSGS_ATSTARTUP (OPT_BASE + 208)")
  197. cpp_quote("#define OPT_EXCEPTIONS_WAB (OPT_BASE + 209)")
  198. cpp_quote("#define OPT_BUDDYLIST_CHECK (OPT_BASE + 210)")
  199. cpp_quote("#define OPT_CANCEL_ALL_NEWS (OPT_BASE + 211)")
  200. cpp_quote("#define OPT_REVOKE_CHECK (OPT_BASE + 212)")
  201. cpp_quote("#define OPT_SHOW_DELETED (OPT_BASE + 213)")
  202. cpp_quote("#define OPT_SEARCH_BODIES (OPT_BASE + 214)")
  203. cpp_quote("#define OPT_SUBJECT_THREADING (OPT_BASE + 215)")
  204. cpp_quote("#define OPT_SHOW_REPLIES (OPT_BASE + 216)")
  205. cpp_quote("#define OPT_VIEW_GLOBAL (OPT_BASE + 217)")
  206. cpp_quote("#define OPT_MDN_SEND_REQUEST (OPT_BASE + 218)")
  207. cpp_quote("#define OPT_SECURE_READ_RECEIPT (OPT_BASE + 219)")
  208. cpp_quote("#define OPT_MDN_SEND_RECEIPT (OPT_BASE + 220)")
  209. cpp_quote("#define OPT_TO_CC_LINE_RCPT (OPT_BASE + 221)")
  210. #ifdef SMIME_V3
  211. cpp_quote("#define OPT_USE_LABELS (OPT_BASE + 222)")
  212. cpp_quote("#define OPT_POLICYNAME_SIZE (OPT_BASE + 223)")
  213. cpp_quote("#define OPT_POLICYNAME_DATA (OPT_BASE + 224)")
  214. cpp_quote("#define OPT_HAS_CLASSIFICAT (OPT_BASE + 225)")
  215. cpp_quote("#define OPT_CLASSIFICAT_DATA (OPT_BASE + 226)")
  216. cpp_quote("#define OPT_PRIVACYMARK_SIZE (OPT_BASE + 227)")
  217. cpp_quote("#define OPT_PRIVACYMARK_DATA (OPT_BASE + 228)")
  218. cpp_quote("#define OPT_CATEGORY_SIZE (OPT_BASE + 229)")
  219. cpp_quote("#define OPT_CATEGORY_DATA (OPT_BASE + 230)")
  220. cpp_quote("#define OPT_SECREC_USE (OPT_BASE + 231)")
  221. cpp_quote("#define OPT_SECREC_VERIFY (OPT_BASE + 232)")
  222. cpp_quote("#define OPT_MDN_SEC_RECEIPT (OPT_BASE + 233)")
  223. cpp_quote("#define OPT_SECREC_ENCRYPT (OPT_BASE + 234)")
  224. #endif // SMIME_v3
  225. cpp_quote("#define OPT_MAIL_STATIONERYNAMEW (OPT_BASE + 235)")
  226. cpp_quote("#define OPT_NEWS_STATIONERYNAMEW (OPT_BASE + 236)")
  227. cpp_quote("#define OPT_MAIL_STATCONVERTED (OPT_BASE + 237)")
  228. cpp_quote("#define OPT_NEWS_STATCONVERTED (OPT_BASE + 238)")
  229. cpp_quote("#define OPT_RTL_MSG_DIR (OPT_BASE + 239)")
  230. cpp_quote("#define OPT_MAILNOTEPOSEX (OPT_BASE + 240)")
  231. cpp_quote("#define OPT_SECURITY_MAPI_SEND (OPT_BASE + 241)")
  232. cpp_quote("#define OPT_SECURITY_MAPI_SEND_LOCKED (OPT_BASE + 242)")
  233. cpp_quote("#define OPT_SECURITY_ATTACHMENT (OPT_BASE + 243)")
  234. cpp_quote("#define OPT_SECURITY_ATTACHMENT_LOCKED (OPT_BASE + 244)")
  235. cpp_quote("#define OPT_READ_IN_TEXT_ONLY (OPT_BASE + 245)")
  236. cpp_quote("")
  237. cpp_quote("//+-------------------------------------------------------------------------")
  238. cpp_quote("// Errors Definition Macros")
  239. cpp_quote("//--------------------------------------------------------------------------")
  240. cpp_quote("#ifndef FACILITY_INTERNET")
  241. cpp_quote("#define FACILITY_INTERNET 12")
  242. cpp_quote("#endif")
  243. cpp_quote("#ifndef HR_E")
  244. cpp_quote("#define HR_E(n) MAKE_SCODE(SEVERITY_ERROR, FACILITY_INTERNET, n)")
  245. cpp_quote("#endif")
  246. cpp_quote("#ifndef HR_S")
  247. cpp_quote("#define HR_S(n) MAKE_SCODE(SEVERITY_SUCCESS, FACILITY_INTERNET, n)")
  248. cpp_quote("#endif")
  249. cpp_quote("#ifndef HR_CODE")
  250. cpp_quote("#define HR_CODE(hr) (INT)(hr & 0xffff)")
  251. cpp_quote("#endif")
  252. cpp_quote("")
  253. cpp_quote("//+-------------------------------------------------------------------------")
  254. cpp_quote("// Return Values")
  255. cpp_quote("//--------------------------------------------------------------------------")
  256. cpp_quote("#define E_PROP_NOT_FOUND HR_E(0xCF98)")
  257. cpp_quote("#define E_INVALID_PROP_TYPE HR_E(0xCF99)")
  258. cpp_quote("#define E_INVALID_PROP_VALUE HR_E(0xCF9A)")
  259. cpp_quote("#define E_NO_DEFAULT_VALUE HR_E(0xCF9B)")
  260. cpp_quote("#define E_NO_MIN_MAX HR_E(0xCF9C)")
  261. cpp_quote("#define S_NO_CHANGE HR_S(0xCF9D)")
  262. cpp_quote("")
  263. cpp_quote("//+-------------------------------------------------------------------------")
  264. cpp_quote("// String Definition Macros")
  265. cpp_quote("//--------------------------------------------------------------------------")
  266. cpp_quote("#ifdef __cplusplus")
  267. cpp_quote("#define EXTERN_C extern \"C\"")
  268. cpp_quote("#else")
  269. cpp_quote("#define EXTERN_C extern")
  270. cpp_quote("#endif")
  271. cpp_quote("")
  272. cpp_quote("#ifdef DEFINE_STRCONST")
  273. cpp_quote("#define STRCONSTA(x,y) EXTERN_C const char x[] = y")
  274. cpp_quote("#define STRCONSTW(x,y) EXTERN_C const WCHAR x[] = L##y")
  275. cpp_quote("#else")
  276. cpp_quote("#define STRCONSTA(x,y) EXTERN_C const char x[]")
  277. cpp_quote("#define STRCONSTW(x,y) EXTERN_C const WCHAR x[]")
  278. cpp_quote("#endif")
  279. cpp_quote("")
  280. cpp_quote("//+-------------------------------------------------------------------------")
  281. cpp_quote("// Strings")
  282. cpp_quote("//--------------------------------------------------------------------------")
  283. cpp_quote("")
  284. cpp_quote("//+-------------------------------------------------------------------------")
  285. cpp_quote("// Function Typedefs")
  286. cpp_quote("//--------------------------------------------------------------------------")
  287. cpp_quote("")
  288. cpp_quote("//+-------------------------------------------------------------------------")
  289. cpp_quote("// Property Identifier Macros")
  290. cpp_quote("//--------------------------------------------------------------------------")
  291. cpp_quote("#define MAKEPROPSTRING(_propid) ((LPCSTR)((DWORD_PTR)(_propid)))")
  292. cpp_quote("")
  293. //+-------------------------------------------------------------------------
  294. // Constants
  295. //--------------------------------------------------------------------------
  296. //+-------------------------------------------------------------------------
  297. // DECLARE_HANDLE Macro
  298. //--------------------------------------------------------------------------
  299. #ifndef DECLARE_HANDLE
  300. #define DECLARE_HANDLE(name) \
  301. struct name##__ { DWORD unused; }; \
  302. typedef struct name##__ _far* name
  303. #endif
  304. cpp_quote("#ifndef __LPPROPERTYBUCKET_DEFINED")
  305. cpp_quote("#define __LPPROPERTYBUCKET_DEFINED")
  306. [
  307. object,
  308. uuid(EC320F20-4B33-11d1-AA10-006097D474C4),
  309. pointer_default(unique)
  310. ]
  311. interface IPropertyBucket : IUnknown
  312. {
  313. typedef IPropertyBucket *LPPROPERTYBUCKET;
  314. typedef DWORD PROPID;
  315. typedef const PROPVARIANT *LPCPROPVARIANT;
  316. //+---------------------------------------------------------------------
  317. // Methods
  318. //----------------------------------------------------------------------
  319. HRESULT GetProperty(
  320. [in] LPCSTR pszProp,
  321. [in,out] LPPROPVARIANT pProp,
  322. [in] DWORD dwReserved);
  323. HRESULT SetProperty(
  324. [in] LPCSTR pszProp,
  325. [in] LPCPROPVARIANT pProp,
  326. [in] DWORD dwReserved);
  327. }
  328. cpp_quote("#endif")
  329. cpp_quote("#ifndef __LPOPTIONBUCKET_DEFINED")
  330. cpp_quote("#define __LPOPTIONBUCKET_DEFINED")
  331. [
  332. object,
  333. uuid(EC320F21-4B33-11d1-AA10-006097D474C4),
  334. pointer_default(unique)
  335. ]
  336. interface IOptionBucket : IPropertyBucket
  337. {
  338. typedef IOptionBucket *LPOPTIONBUCKET;
  339. typedef struct tagPROPINFO
  340. {
  341. ULONG cbSize;
  342. VARTYPE vt;
  343. ULONG uMin; // for VT_UI4
  344. ULONG uMax; // for VT_UI4
  345. ULONG cchMax; // for VT_LPSTR
  346. } PROPINFO;
  347. //+---------------------------------------------------------------------
  348. // Methods
  349. //----------------------------------------------------------------------
  350. HRESULT ValidateProperty(
  351. [in] PROPID propid,
  352. [in] LPCPROPVARIANT pProp,
  353. [in] DWORD dwReserved);
  354. HRESULT GetPropertyDefault(
  355. [in] PROPID propid,
  356. [in,out] LPPROPVARIANT pProp,
  357. [in] DWORD dwReserved);
  358. HRESULT GetPropertyInfo(
  359. [in] PROPID propid,
  360. [in,out] PROPINFO *pinfo,
  361. [in] DWORD dwReserved);
  362. }
  363. cpp_quote("#endif")
  364. cpp_quote("//+-------------------------------------------------------------------------")
  365. cpp_quote("// Outlook Express Exported C API Functions")
  366. cpp_quote("//--------------------------------------------------------------------------")
  367. cpp_quote("#ifdef __cplusplus")
  368. cpp_quote("extern \"C\" {")
  369. cpp_quote("#endif")
  370. cpp_quote("")
  371. cpp_quote("//+-------------------------------------------------------------------------")
  372. cpp_quote("// API Name Decoration")
  373. cpp_quote("//--------------------------------------------------------------------------")
  374. cpp_quote("#if !defined(_MSOEACCTAPI_)")
  375. cpp_quote("#define MSOEACCTAPI DECLSPEC_IMPORT HRESULT WINAPI")
  376. cpp_quote("#define MSOEACCTAPI_(_type_) DECLSPEC_IMPORT _type_ WINAPI")
  377. cpp_quote("#else")
  378. cpp_quote("#define MSOEACCTAPI HRESULT WINAPI")
  379. cpp_quote("#define MSOEACCTAPI_(_type_) _type_ WINAPI")
  380. cpp_quote("#endif")
  381. cpp_quote("")
  382. cpp_quote("//+-------------------------------------------------------------------------")
  383. cpp_quote("// Prototypes")
  384. cpp_quote("//--------------------------------------------------------------------------")
  385. cpp_quote("")
  386. cpp_quote("#ifdef __cplusplus")
  387. cpp_quote("}")
  388. cpp_quote("#endif")