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.

520 lines
24 KiB

  1. // --------------------------------------------------------------------------
  2. // MSOEOBJ.IDL
  3. // Copyright (c) 1993-1998 Microsoft Corporation, All Rights Reserved
  4. // --------------------------------------------------------------------------
  5. // This file will be processed by the MIDL tool to
  6. // produce the type library (MSOEOBJ.tlb) and marshalling code.
  7. import "oaidl.idl";
  8. import "ocidl.idl";
  9. import "oestore.idl";
  10. #include "msoedisp.h"
  11. cpp_quote("//--------------------------------------------------------------------------------")
  12. cpp_quote("// MSOEOBJ.H")
  13. cpp_quote("//--------------------------------------------------------------------------------")
  14. cpp_quote("// (C) Copyright 1993-1998 Microsoft Corporation. All Rights Reserved.")
  15. cpp_quote("//")
  16. cpp_quote("// THIS CODE AND INFORMATION IS PROVIDED \"AS IS\" WITHOUT WARRANTY OF")
  17. cpp_quote("// ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO")
  18. cpp_quote("// THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A")
  19. cpp_quote("// PARTICULAR PURPOSE.")
  20. cpp_quote("//--------------------------------------------------------------------------------")
  21. cpp_quote("")
  22. cpp_quote("#pragma comment(lib, \"uuid.lib\")")
  23. cpp_quote("")
  24. cpp_quote("// --------------------------------------------------------------------------")
  25. cpp_quote("// GUIDS")
  26. cpp_quote("// --------------------------------------------------------------------------")
  27. cpp_quote("")
  28. cpp_quote("// {A2A94190-6C29-11d1-9DFE-006097D50408}")
  29. cpp_quote("DEFINE_GUID(CMDSETID_OEMessageView, 0xa2a94190, 0x6c29, 0x11d1, 0x9d, 0xfe, 0x0, 0x60, 0x97, 0xd5, 0x4, 0x8);")
  30. cpp_quote("")
  31. cpp_quote("// {A2A94191-6C29-11d1-9DFE-006097D50408}")
  32. cpp_quote("DEFINE_GUID(CMDSETID_OEMessageList, 0xa2a94191, 0x6c29, 0x11d1, 0x9d, 0xfe, 0x0, 0x60, 0x97, 0xd5, 0x4, 0x8);")
  33. cpp_quote("")
  34. //---------------------------------------------------------------------------
  35. // IListSelector Interface
  36. //---------------------------------------------------------------------------
  37. [
  38. object,
  39. uuid(69fdcd50-16cf-11d2-af46-00c04fa31b90),
  40. helpstring("IListSelector Interface"),
  41. pointer_default(unique)
  42. ]
  43. interface IListSelector : IUnknown
  44. {
  45. // Tells selector what row to activate
  46. HRESULT SetActiveRow([in] ROWINDEX iRow);
  47. // Tells selector what handle to send the change row message to
  48. HRESULT Advise([in] HWND hwndAdvise);
  49. // Clears the handle that the selector is trying to advise
  50. HRESULT Unadvise(void);
  51. };
  52. //---------------------------------------------------------------------------
  53. // IMessageList Interface
  54. //---------------------------------------------------------------------------
  55. [
  56. object,
  57. uuid(DE89B950-A597-11D1-9E46-006097D50408),
  58. helpstring("IMessageList Interface"),
  59. pointer_default(unique)
  60. ]
  61. interface IMessageList : IUnknown
  62. {
  63. // Create the message list in an non-activeX way
  64. HRESULT CreateList([in] HWND hwndParent, [in] IUnknown *pFrame,
  65. [in] HWND *phwndList);
  66. cpp_quote("#define FOM_THREAD 0x00000001")
  67. cpp_quote("#define FOM_EXPANDTHREADS 0x00000002")
  68. cpp_quote("#define FOM_SELECTFIRSTUNREAD 0x00000004")
  69. cpp_quote("#define FOM_MESSAGELISTTIPS 0x00000008")
  70. cpp_quote("#define FOM_POLLTIME 0x00000020")
  71. cpp_quote("#define FOM_OFFLINEPROMPT 0x00000040")
  72. cpp_quote("#define FOM_COLORWATCHED 0x00000080")
  73. cpp_quote("#define FOM_GETXHEADERS 0x00000100")
  74. cpp_quote("#define FOM_SHOWDELETED 0x00000200")
  75. cpp_quote("#define FOM_SHOWREPLIES 0x00000400")
  76. typedef struct tagFOLDER_OPTIONS
  77. {
  78. DWORD cbSize;
  79. DWORD dwMask;
  80. BOOL fThread;
  81. BOOL fExpandThreads;
  82. BOOL fSelectFirstUnread;
  83. BOOL fMessageListTips;
  84. DWORD dwPollTime;
  85. BOOL fGoOnlinePrompt;
  86. DWORD clrWatched;
  87. DWORD dwGetXHeaders;
  88. BOOL fDeleted;
  89. BOOL fReplies;
  90. } FOLDER_OPTIONS;
  91. // Tells the message list which folder to display
  92. HRESULT SetFolder([in] FOLDERID idFolder, [in] IMessageServer *pServer,
  93. [in] BOOL fSubFolders, [in] FINDINFO *pFindInfo, [in] IStoreCallback *pCallback);
  94. // Allows the caller to update settings on the view
  95. HRESULT SetViewOptions([in] FOLDER_OPTIONS *pOptions);
  96. // Allows the caller to update settings on the view
  97. HRESULT GetViewOptions([in, out] FOLDER_OPTIONS *pOptions);
  98. // Notification that the control is about to be closed. The control should
  99. // save any state and release any objects at this point.
  100. HRESULT OnClose(void);
  101. // Allows the frame to get the current position of the control
  102. HRESULT GetRect([out] LPRECT prc);
  103. // Allows the frame to position the control
  104. HRESULT SetRect([in] RECT rc);
  105. // Allows the frame to query whether or not the message list has focus
  106. HRESULT HasFocus(void);
  107. // Allows the message list to add or remove any menu items
  108. HRESULT OnPopupMenu([in] HMENU hMenu, [in] DWORD uID);
  109. // Returns an array of rows that are selected
  110. HRESULT GetSelected([out] DWORD *pdwFocused,
  111. [out] DWORD *pcSelected,
  112. [out, size_is(, *pcSelected)] DWORD **prgSelected);
  113. // Returns the number of rows selected
  114. HRESULT GetSelectedCount([out] DWORD *pdwCount);
  115. // Returns a stream to a message for the requested row
  116. HRESULT GetMessage([in] DWORD dwRow,
  117. [in] BOOL fDownload,
  118. [in] BOOL fBookmark,
  119. [out] IUnknown **ppMessage);
  120. // Returns a structure containing the header information for the requested
  121. // row.
  122. HRESULT GetMessageInfo([in] DWORD dwRow, [out] MESSAGEINFO **ppMsgInfo);
  123. // Get a folderid for a particular row...
  124. HRESULT GetRowFolderId([in] DWORD dwRow, [out] LPFOLDERID pidFolder);
  125. // Mark the requested row.
  126. HRESULT MarkMessage([in] DWORD dwRow, [in] MARK_TYPE mark);
  127. // Must call after calling GetMessageInfo
  128. HRESULT FreeMessageInfo([in,out] MESSAGEINFO *pMsgInfo);
  129. // Allows the caller to mark a row as read
  130. HRESULT MarkRead([in] BOOL fBookmark, [in] DWORD dwRow);
  131. // Returns the message table that the message list is currently viewing
  132. HRESULT GetMessageTable([out] IMessageTable **ppTable);
  133. // Get's a list selector interface for the notes
  134. HRESULT GetListSelector([out] IListSelector **ppListSelector);
  135. // Returns the total, unread, and on server counts
  136. HRESULT GetMessageCounts([out] DWORD *cTotal,
  137. [out] DWORD *cUnread,
  138. [out] DWORD *cOnServer);
  139. // Returns the IMessageServer that's being used to display the current folder
  140. HRESULT GetMessageServer([out] IMessageServer **ppServer);
  141. // Returns the ListView item state for the focused item. This is used to make
  142. // the one handed reading work correctly.
  143. HRESULT GetFocusedItemState([out] DWORD *pdwState);
  144. HRESULT ProcessReceipt(IMimeMessage *pMessage);
  145. HRESULT GetAdBarUrl(void);
  146. };
  147. //---------------------------------------------------------------------------
  148. // IOEMessageList Interface
  149. //---------------------------------------------------------------------------
  150. [
  151. object,
  152. uuid(DE89B951-A597-11D1-9E46-006097D50408),
  153. helpstring("IOEMessageList Interface"),
  154. pointer_default(unique),
  155. dual
  156. ]
  157. interface IOEMessageList : IDispatch
  158. {
  159. // The Folder property allows you to determine which folder the message list
  160. // should be displaying. The parameter is the FOLDERID that you get from
  161. // IOEFolderCollection.
  162. [propget, id(DISPID_LISTPROP_FOLDER), displaybind, bindable, requestedit] HRESULT Folder([out, retval] ULONGLONG *pVal);
  163. [propput, id(DISPID_LISTPROP_FOLDER), displaybind, bindable, requestedit] HRESULT Folder([in] ULONGLONG newVal);
  164. // The ExpandGroups property determines whether or not messages that are
  165. // grouped into conversations should be expanded by default or collapsed.
  166. // If the property is TRUE, groups will be expanded.
  167. [propget, id(DISPID_LISTPROP_EXPAND_GROUPS), displaybind, bindable, requestedit] HRESULT ExpandGroups([out, retval] BOOL *pVal);
  168. [propput, id(DISPID_LISTPROP_EXPAND_GROUPS), displaybind, bindable, requestedit] HRESULT ExpandGroups([in] BOOL newVal);
  169. // The GroupMessages property allows the caller to specify that messages
  170. // should be grouped into conversations. If the property is TRUE, then
  171. // messages will be grouped.
  172. [propget, id(DISPID_LISTPROP_GROUP_MESSAGES), displaybind, bindable, requestedit] HRESULT GroupMessages([out, retval] BOOL *pVal);
  173. [propput, id(DISPID_LISTPROP_GROUP_MESSAGES), displaybind, bindable, requestedit] HRESULT GroupMessages([in] BOOL newVal);
  174. // The SelectFirstUnread property allows the caller to specify whether or
  175. // not the first unread message in the folder should be selected after the
  176. // folder is loaded. If the property is TRUE, the first unread message
  177. // will be selected.
  178. [propget, id(DISPID_LISTPROP_SELECT_FIRST_UNREAD), displaybind, bindable, requestedit] HRESULT SelectFirstUnread([out, retval] BOOL *pVal);
  179. [propput, id(DISPID_LISTPROP_SELECT_FIRST_UNREAD), displaybind, bindable, requestedit] HRESULT SelectFirstUnread([in] BOOL newVal);
  180. // The MessageTips property allows the caller to turn on tooltips over
  181. // fields in the list that are truncated. If this property is TRUE, then
  182. // tips will be shown.
  183. [propget, id(DISPID_LISTPROP_MESSAGE_TIPS), displaybind, bindable, requestedit] HRESULT MessageTips([out, retval] BOOL *pVal);
  184. [propput, id(DISPID_LISTPROP_MESSAGE_TIPS), displaybind, bindable, requestedit] HRESULT MessageTips([in] BOOL newVal);
  185. // The ScrollTips property determines whether or not a tip will be
  186. // displayed by the mouse as the user is scrolling. The tip will tell
  187. // the user what row in the table is at the top of the list.
  188. [propget, id(DISPID_LISTPROP_SCROLL_TIPS), displaybind, bindable, requestedit] HRESULT ScrollTips([out, retval] BOOL *pVal);
  189. [propput, id(DISPID_LISTPROP_SCROLL_TIPS), displaybind, bindable, requestedit] HRESULT ScrollTips([in] BOOL newVal);
  190. // The Count property allows the caller to retrieve the total number of
  191. // messages in the folder.
  192. [propget, id(DISPID_LISTPROP_COUNT), displaybind, bindable] HRESULT Count([out, retval] long *pVal);
  193. // The UnreadCount property allows the caller to retrieve the total number
  194. // of unread messages in the folder.
  195. [propget, id(DISPID_LISTPROP_UNREAD_COUNT), displaybind, bindable] HRESULT UnreadCount([out, retval] long *pVal);
  196. // The SelectedCount property allows the caller to retrieve the total
  197. // number of selected messages in the folder.
  198. [propget, id(DISPID_LISTPROP_SELECTED_COUNT), displaybind, bindable] HRESULT SelectedCount([out, retval] long *pVal);
  199. // The PreviewMessage property allows the caller to retreive a URL pointing
  200. // to the message that should be loaded into a preview pane.
  201. [propget, id(DISPID_LISTPROP_PREVIEW_SRC), displaybind, bindable] HRESULT PreviewMessage([out, retval] BSTR *pVal);
  202. // The FilterMessages property allows the caller to specify that messages
  203. // should be filter according to the specified filter id. The filter is tells the
  204. // message list which filter to use
  205. // messages will be grouped.
  206. [propget, id(DISPID_LISTPROP_FILTER_MESSAGES), displaybind, bindable, requestedit] HRESULT FilterMessages([out, retval] ULONGLONG *pVal);
  207. [propput, id(DISPID_LISTPROP_FILTER_MESSAGES), displaybind, bindable, requestedit] HRESULT FilterMessages([in] ULONGLONG newVal);
  208. // The ShowDeleted property allows the caller to specify that messages
  209. // that are marked as deleted should be hidden. If the property is TRUE, then
  210. // messages that are marked as deleted will be hidden.
  211. [propget, id(DISPID_LISTPROP_SHOW_DELETED), displaybind, bindable, requestedit] HRESULT ShowDeleted([out, retval] BOOL *pVal);
  212. [propput, id(DISPID_LISTPROP_SHOW_DELETED), displaybind, bindable, requestedit] HRESULT ShowDeleted([in] BOOL newVal);
  213. // The ShowDeleted property allows the caller to specify that messages
  214. // that are marked as deleted should be hidden. If the property is TRUE, then
  215. // messages that are marked as deleted will be hidden.
  216. [propget, id(DISPID_LISTPROP_SHOW_REPLIES), displaybind, bindable, requestedit] HRESULT ShowReplies([out, retval] BOOL *pVal);
  217. [propput, id(DISPID_LISTPROP_SHOW_REPLIES), displaybind, bindable, requestedit] HRESULT ShowReplies([in] BOOL newVal);
  218. };
  219. [
  220. uuid(233A9691-667E-11d1-9DFB-006097D50408),
  221. version(1.0),
  222. helpstring("Microsoft Outlook Express Type Library")
  223. ]
  224. library MSOEOBJ
  225. {
  226. importlib("stdole2.tlb");
  227. cpp_quote("#define PROGRESS_STATE_DEFAULT 0x00000000")
  228. cpp_quote("#define PROGRESS_STATE_BEGIN 0x00000001")
  229. cpp_quote("#define PROGRESS_STATE_END 0x00000002")
  230. [
  231. uuid(233A969A-667E-11d1-9DFB-006097D50408)
  232. ]
  233. dispinterface _MessageListEvents
  234. {
  235. properties:
  236. methods:
  237. // Fired whenever the selection in the ListView changes. cSel is the
  238. // new number of items selected.
  239. [id(DISPID_LISTEVENT_SELECTIONCHANGED)] void OnSelectionChanged([in] long cSelected);
  240. // Fired whenever the IMessageList object get's or loses the input
  241. // focus. fFocus is TRUE if the window is accepting focus, FALSE if
  242. // the window is losing focus.
  243. [id(DISPID_LISTEVENT_FOCUSCHANGED)] void OnFocusChanged([in] long fFocus);
  244. // Fired whenever the number of messages in view changes, or the number
  245. // of unread messages changes. cMessages is the total number of messages,
  246. // cUnread is the number of unread messages, and cOnServer is the number
  247. // of messages left on the server (interesting in news).
  248. [id(DISPID_LISTEVENT_COUNTCHANGED)] void OnMessageCountChanged([in] long cMessages, [in] long cUnread, [in] long cOnServer);
  249. // Fired whenever the message list needs to display status text.
  250. // szStatus contains the string to display.
  251. [id(DISPID_LISTEVENT_UPDATESTATUS)] void OnUpdateStatus([in] BSTR szStatus);
  252. // Fired whenever the message list is downloading information and
  253. // needs to display progress.
  254. [id(DISPID_LISTEVENT_UPDATEPROGRESS)] void OnUpdateProgress([in] long lProgress, [in] long lMax, [in] long lState);
  255. // Fired whenever an error occurs
  256. [id(DISPID_LISTEVENT_ERROR)] void OnError([in] DWORD ids);
  257. // Fired whenever the user double clicks or hit's enter on a row.
  258. [id(DISPID_LISTEVENT_ITEMACTIVATE)] void OnItemActivate(void);
  259. // Fired whenever any commands that are visible (aka toolbar buttons)
  260. // should be updated.
  261. [id(DISPID_LISTEVENT_UPDATECOMMANDSTATE)] void OnUpdateCommandState(void);
  262. };
  263. [
  264. uuid(233A9692-667E-11d1-9DFB-006097D50408),
  265. helpstring("MessageList Class")
  266. ]
  267. coclass MessageList
  268. {
  269. [default] interface IOEMessageList;
  270. [default, source] dispinterface _MessageListEvents;
  271. };
  272. #if 0
  273. // DISABLED OE MOM for OE5
  274. // ---------------------------------------------------------------------------------------
  275. // IID_IOEMessage
  276. // ---------------------------------------------------------------------------------------
  277. [
  278. uuid(06BE731E-EF34-11d1-ACD8-00C04FA31009),
  279. odl,
  280. oleautomation,
  281. dual
  282. ]
  283. interface IOEMessage : IDispatch
  284. {
  285. [propget, id(DISPID_IOEMESSAGE_SUBJECT)] HRESULT subject([retval, out] BSTR *pbstr);
  286. [propput, id(DISPID_IOEMESSAGE_SUBJECT)] HRESULT subject([in] BSTR bstr);
  287. [propget, id(DISPID_IOEMESSAGE_TO)] HRESULT to([retval, out] BSTR *pbstr);
  288. [propput, id(DISPID_IOEMESSAGE_TO)] HRESULT to([in] BSTR bstr);
  289. [propget, id(DISPID_IOEMESSAGE_CC)] HRESULT cc([retval, out] BSTR *pbstr);
  290. [propput, id(DISPID_IOEMESSAGE_CC)] HRESULT cc([in] BSTR bstr);
  291. [propget, id(DISPID_IOEMESSAGE_SENDER)] HRESULT sender([retval, out] BSTR *pbstr);
  292. [propput, id(DISPID_IOEMESSAGE_SENDER)] HRESULT sender([in] BSTR bstr);
  293. [propget, id(DISPID_IOEMESSAGE_TEXT)] HRESULT text([retval, out] BSTR *pbstr);
  294. [propput, id(DISPID_IOEMESSAGE_TEXT)] HRESULT text([in] BSTR bstr);
  295. [propget, id(DISPID_IOEMESSAGE_HTML)] HRESULT html([retval, out] BSTR *pbstr);
  296. [propput, id(DISPID_IOEMESSAGE_HTML)] HRESULT html([in] BSTR bstr);
  297. [propget, id(DISPID_IOEMESSAGE_DATE)] HRESULT date([retval, out] BSTR *pbstr);
  298. [propget, id(DISPID_IOEMESSAGE_URL)] HRESULT url([retval, out] BSTR *pbstr);
  299. [id(DISPID_IOEMESSAGE_SEND)] HRESULT send();
  300. }
  301. // ---------------------------------------------------------------------------------------
  302. // IID_IOEMsgList
  303. // ---------------------------------------------------------------------------------------
  304. [
  305. uuid(7dfa86b2-f4cc-11d1-ace1-00c04fa31009),
  306. odl,
  307. oleautomation,
  308. dual
  309. ]
  310. interface IOEMsgList : IDispatch
  311. {
  312. [propput, id(DISPID_IOEMSGLIST_SORTCOL)] HRESULT sortColumn([in]BSTR bstr);
  313. [propget, id(DISPID_IOEMSGLIST_SORTCOL)] HRESULT sortColumn([retval, out]BSTR *pbstr);
  314. [propput, id(DISPID_IOEMSGLIST_SORTDIR)] HRESULT sortDirection([in]VARIANT_BOOL v);
  315. [propget, id(DISPID_IOEMSGLIST_SORTDIR)] HRESULT sortDirection([retval, out]VARIANT_BOOL *pv);
  316. [id(DISPID_IOEMSGLIST_TEST)] HRESULT test();
  317. }
  318. // ---------------------------------------------------------------------------------------
  319. // IID_IOEMessageCollection
  320. // ---------------------------------------------------------------------------------------
  321. [
  322. uuid(06BE731F-EF34-11d1-ACD8-00C04FA31009),
  323. odl,
  324. oleautomation,
  325. dual
  326. ]
  327. interface IOEMessageCollection : IDispatch
  328. {
  329. [propput, id(DISPID_IOEMESSAGECOLLECTION_LENGTH)] HRESULT length([in] long v);
  330. [propget, id(DISPID_IOEMESSAGECOLLECTION_LENGTH)] HRESULT length([retval,out] long * p);
  331. [propget, id(DISPID_IOEMESSAGECOLLECTION__NEWENUM), hidden, restricted] HRESULT _newEnum([retval, out] IUnknown **p);
  332. [id(DISPID_IOEMESSAGECOLLECTION_ITEM)] HRESULT item([optional, in] VARIANT name,[optional, in] VARIANT index,[retval, out] IDispatch** pdisp);
  333. }
  334. // ---------------------------------------------------------------------------------------
  335. // IID_IOEFolderCollection
  336. // ---------------------------------------------------------------------------------------
  337. [
  338. uuid(06BE7320-EF34-11d1-ACD8-00C04FA31009),
  339. odl,
  340. oleautomation,
  341. dual
  342. ]
  343. interface IOEFolderCollection : IDispatch
  344. {
  345. [propget, id(DISPID_IOEFOLDERCOLLECTION_LENGTH)] HRESULT length([retval,out] long * p);
  346. [propget, id(DISPID_IOEFOLDERCOLLECTION__NEWENUM), hidden, restricted] HRESULT _newEnum([retval, out] IUnknown **p);
  347. [id(DISPID_IOEFOLDERCOLLECTION_ITEM)] HRESULT item([optional, in] VARIANT name,[optional, in] VARIANT index,[retval, out] IDispatch** pdisp);
  348. [id(DISPID_IOEFOLDERCOLLECTION_ADD)] HRESULT add([in]BSTR bstrName, [retval, out]IDispatch **ppDisp);
  349. [propget, id(DISPID_IOEFOLDERCOLLECTION_FOLDERS)] HRESULT folders([retval, out]IOEFolderCollection **p);
  350. //[id(DISPID_IOEFOLDERCOLLECTION_SORT)] HRESULT sort(BSTR bstrCol, VARIANT_BOOL fAsc);
  351. //[id(DISPID_IOEFOLDERCOLLECTION_SORT)] HRESULT filter(BSTR bstrFilterExp);
  352. }
  353. // ---------------------------------------------------------------------------------------
  354. // IID_IOEFolder
  355. // ---------------------------------------------------------------------------------------
  356. [
  357. uuid(06BE7321-EF34-11d1-ACD8-00C04FA31009),
  358. odl,
  359. oleautomation,
  360. dual
  361. ]
  362. interface IOEFolder : IDispatch
  363. {
  364. [propget, id(DISPID_IOEFOLDER_MESSAGES)] HRESULT messages([retval, out] IOEMessageCollection **p);
  365. [propget, id(DISPID_IOEFOLDER_FOLDERS)] HRESULT folders([retval, out] IOEFolderCollection **p);
  366. [propget, id(DISPID_IOEFOLDER_NAME)] HRESULT name([retval, out] BSTR *pbstr);
  367. [propput, id(DISPID_IOEFOLDER_NAME)] HRESULT name([in] BSTR bstr);
  368. [propget, id(DISPID_IOEFOLDER_SIZE)] HRESULT size([retval, out] LONG *pl);
  369. [propget, id(DISPID_IOEFOLDER_ID)] HRESULT id([retval, out] LONG *pl);
  370. [propget, id(DISPID_IOEFOLDER_UNREAD)] HRESULT unread([retval, out] LONG *pl);
  371. [propget, id(DISPID_IOEFOLDER_COUNT)] HRESULT count([retval, out] LONG *pl);
  372. }
  373. // ---------------------------------------------------------------------------------------
  374. // IID_IOESession
  375. // ---------------------------------------------------------------------------------------
  376. [
  377. uuid(06BE7322-EF34-11d1-ACD8-00C04FA31009),
  378. odl,
  379. oleautomation,
  380. dual
  381. ]
  382. interface IOESession : IDispatch
  383. {
  384. [propget, id(DISPID_IOESESSION_FOLDERS)] HRESULT folders([retval, out] IOEFolderCollection **p);
  385. [propget, id(DISPID_IOESESSION_INBOX)] HRESULT inbox([retval, out] IOEFolder **p);
  386. [propget, id(DISPID_IOESESSION_VERSION)] HRESULT version([retval, out] BSTR *pbstr);
  387. [id(DISPID_IOESESSION_OPENFOLDER)] HRESULT openFolder([in] LONG idFolder, [retval, out] IOEFolder **p);
  388. [id(DISPID_IOESESSION_OPENMESSAGE)] HRESULT openMessage([in] LONG idFolder, LONG idMessage, [retval, out] IOEMessage **p);
  389. [id(DISPID_IOESESSION_CREATEMESSAGE)] HRESULT createMessage([retval, out] IOEMessage **ppNewMsg);
  390. }
  391. [
  392. uuid(06BE7323-EF34-11d1-ACD8-00C04FA31009),
  393. helpstring("Microsoft Outlook Express Session Object")
  394. ]
  395. coclass OESession
  396. {
  397. [default] interface IOESession;
  398. };
  399. [
  400. uuid(abc00000-0000-0000-0000-000000000000),
  401. helpstring("OEMsgTable")
  402. ]
  403. coclass OEMsgTable
  404. {
  405. [default] interface IUnknown;
  406. };
  407. #endif
  408. // ---------------------------------------------------------------------------------------
  409. // IID_IOEAcctWizardOM
  410. // ---------------------------------------------------------------------------------------
  411. [
  412. uuid(61a81654-75fb-11d2-8c0e-00c04fa31009),
  413. odl,
  414. oleautomation,
  415. dual
  416. ]
  417. interface IOEAcctWizardOM : IDispatch
  418. {
  419. [id(DISPID_IOEACCTWIZ_SET_PROP_SZ)] HRESULT setPropSz([in] BSTR bstrProp, [in] BSTR bstrVal);
  420. [id(DISPID_IOEACCTWIZ_GET_PROP_SZ)] HRESULT getPropSz([in] BSTR bstrProp, [retval, out] BSTR *pbstrVal);
  421. [id(DISPID_IOEACCTWIZ_CLEAR_PROPS)] HRESULT clearProps();
  422. [id(DISPID_IOEACCTWIZ_NEW_ACCOUNT)] HRESULT createAccount(BSTR bstrINS);
  423. [id(DISPID_IOEACCTWIZ_CLOSE)] HRESULT close([in] VARIANT_BOOL fPrompt);
  424. [propget, id(DISPID_IOEACCTWIZ_WIDTH)] HRESULT width([retval, out] LONG *pl);
  425. [propput, id(DISPID_IOEACCTWIZ_WIDTH)] HRESULT width([in] LONG l);
  426. [propget, id(DISPID_IOEACCTWIZ_HEIGHT)] HRESULT height([retval, out] LONG *pl);
  427. [propput, id(DISPID_IOEACCTWIZ_HEIGHT)] HRESULT height([in] LONG l);
  428. [id(DISPID_IOEACCTWIZ_RELOAD)] HRESULT reload([in] BSTR bstr);
  429. }
  430. };