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.

1721 lines
56 KiB

  1. #pragma warning( disable: 4049 ) /* more than 64k source lines */
  2. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  3. /* File created by MIDL compiler version 6.00.0347 */
  4. /* Compiler settings for shgina.idl:
  5. Oicf, W1, Zp8, env=Win32 (32b run)
  6. protocol : dce , ms_ext, c_ext
  7. error checks: allocation ref bounds_check enum stub_data
  8. VC __declspec() decoration level:
  9. __declspec(uuid()), __declspec(selectany), __declspec(novtable)
  10. DECLSPEC_UUID(), MIDL_INTERFACE()
  11. */
  12. //@@MIDL_FILE_HEADING( )
  13. /* verify that the <rpcndr.h> version is high enough to compile this file*/
  14. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  15. #define __REQUIRED_RPCNDR_H_VERSION__ 440
  16. #endif
  17. #include "rpc.h"
  18. #include "rpcndr.h"
  19. #ifndef __shgina_h__
  20. #define __shgina_h__
  21. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  22. #pragma once
  23. #endif
  24. /* Forward Declarations */
  25. #ifndef __ILogonUser_FWD_DEFINED__
  26. #define __ILogonUser_FWD_DEFINED__
  27. typedef interface ILogonUser ILogonUser;
  28. #endif /* __ILogonUser_FWD_DEFINED__ */
  29. #ifndef __ShellLogonUser_FWD_DEFINED__
  30. #define __ShellLogonUser_FWD_DEFINED__
  31. #ifdef __cplusplus
  32. typedef class ShellLogonUser ShellLogonUser;
  33. #else
  34. typedef struct ShellLogonUser ShellLogonUser;
  35. #endif /* __cplusplus */
  36. #endif /* __ShellLogonUser_FWD_DEFINED__ */
  37. #ifndef __ILogonEnumUsers_FWD_DEFINED__
  38. #define __ILogonEnumUsers_FWD_DEFINED__
  39. typedef interface ILogonEnumUsers ILogonEnumUsers;
  40. #endif /* __ILogonEnumUsers_FWD_DEFINED__ */
  41. #ifndef __ShellLogonEnumUsers_FWD_DEFINED__
  42. #define __ShellLogonEnumUsers_FWD_DEFINED__
  43. #ifdef __cplusplus
  44. typedef class ShellLogonEnumUsers ShellLogonEnumUsers;
  45. #else
  46. typedef struct ShellLogonEnumUsers ShellLogonEnumUsers;
  47. #endif /* __cplusplus */
  48. #endif /* __ShellLogonEnumUsers_FWD_DEFINED__ */
  49. #ifndef __ILocalMachine_FWD_DEFINED__
  50. #define __ILocalMachine_FWD_DEFINED__
  51. typedef interface ILocalMachine ILocalMachine;
  52. #endif /* __ILocalMachine_FWD_DEFINED__ */
  53. #ifndef __ShellLocalMachine_FWD_DEFINED__
  54. #define __ShellLocalMachine_FWD_DEFINED__
  55. #ifdef __cplusplus
  56. typedef class ShellLocalMachine ShellLocalMachine;
  57. #else
  58. typedef struct ShellLocalMachine ShellLocalMachine;
  59. #endif /* __cplusplus */
  60. #endif /* __ShellLocalMachine_FWD_DEFINED__ */
  61. #ifndef __ILogonStatusHost_FWD_DEFINED__
  62. #define __ILogonStatusHost_FWD_DEFINED__
  63. typedef interface ILogonStatusHost ILogonStatusHost;
  64. #endif /* __ILogonStatusHost_FWD_DEFINED__ */
  65. #ifndef __ShellLogonStatusHost_FWD_DEFINED__
  66. #define __ShellLogonStatusHost_FWD_DEFINED__
  67. #ifdef __cplusplus
  68. typedef class ShellLogonStatusHost ShellLogonStatusHost;
  69. #else
  70. typedef struct ShellLogonStatusHost ShellLogonStatusHost;
  71. #endif /* __cplusplus */
  72. #endif /* __ShellLogonStatusHost_FWD_DEFINED__ */
  73. /* header files for imported files */
  74. #include "oaidl.h"
  75. #include "ocidl.h"
  76. #ifdef __cplusplus
  77. extern "C"{
  78. #endif
  79. void * __RPC_USER MIDL_user_allocate(size_t);
  80. void __RPC_USER MIDL_user_free( void * );
  81. /* interface __MIDL_itf_shgina_0000 */
  82. /* [local] */
  83. typedef
  84. enum ILUEOrder
  85. { ILEU_MOSTRECENT = 0,
  86. ILEU_ALPHABETICAL = 1
  87. } ILUEORDER;
  88. extern RPC_IF_HANDLE __MIDL_itf_shgina_0000_v0_0_c_ifspec;
  89. extern RPC_IF_HANDLE __MIDL_itf_shgina_0000_v0_0_s_ifspec;
  90. #ifndef __SHGINALib_LIBRARY_DEFINED__
  91. #define __SHGINALib_LIBRARY_DEFINED__
  92. /* library SHGINALib */
  93. /* [version][lcid][helpstring][uuid] */
  94. typedef
  95. enum ILM_GUEST_FLAGS
  96. { ILM_GUEST_ACCOUNT = 0,
  97. ILM_GUEST_INTERACTIVE_LOGON = 0x1,
  98. ILM_GUEST_NETWORK_LOGON = 0x2
  99. } ILM_GUEST_FLAGS;
  100. EXTERN_C const IID LIBID_SHGINALib;
  101. #ifndef __ILogonUser_INTERFACE_DEFINED__
  102. #define __ILogonUser_INTERFACE_DEFINED__
  103. /* interface ILogonUser */
  104. /* [oleautomation][helpstring][hidden][dual][uuid][object] */
  105. EXTERN_C const IID IID_ILogonUser;
  106. #if defined(__cplusplus) && !defined(CINTERFACE)
  107. MIDL_INTERFACE("60664CAF-AF0D-1003-A300-5C7D25FF22A0")
  108. ILogonUser : public IDispatch
  109. {
  110. public:
  111. virtual /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_setting(
  112. /* [in] */ BSTR bstrName,
  113. /* [retval][out] */ VARIANT *pvarVal) = 0;
  114. virtual /* [helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE put_setting(
  115. /* [in] */ BSTR bstrName,
  116. /* [in] */ VARIANT varVal) = 0;
  117. virtual /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_isLoggedOn(
  118. /* [retval][out] */ VARIANT_BOOL *pbLoggedIn) = 0;
  119. virtual /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_passwordRequired(
  120. /* [retval][out] */ VARIANT_BOOL *pbPasswordRequired) = 0;
  121. virtual /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_interactiveLogonAllowed(
  122. /* [retval][out] */ VARIANT_BOOL *pbInteractiveLogonAllowed) = 0;
  123. virtual /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_isProfilePrivate(
  124. /* [retval][out] */ VARIANT_BOOL *pbPrivate) = 0;
  125. virtual /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_isPasswordResetAvailable(
  126. /* [retval][out] */ VARIANT_BOOL *pbResetAvailable) = 0;
  127. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE logon(
  128. /* [in] */ BSTR pstrPassword,
  129. /* [retval][out] */ VARIANT_BOOL *pbRet) = 0;
  130. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE logoff(
  131. /* [retval][out] */ VARIANT_BOOL *pbRet) = 0;
  132. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE changePassword(
  133. /* [in] */ VARIANT varNewPassword,
  134. /* [in] */ VARIANT varOldPassword,
  135. /* [retval][out] */ VARIANT_BOOL *pbRet) = 0;
  136. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE makeProfilePrivate(
  137. /* [in] */ VARIANT_BOOL bPrivate) = 0;
  138. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE getMailAccountInfo(
  139. /* [in] */ UINT uiAccountIndex,
  140. /* [out] */ VARIANT *pvarAccountName,
  141. /* [out] */ UINT *pcUnreadMessages) = 0;
  142. };
  143. #else /* C style interface */
  144. typedef struct ILogonUserVtbl
  145. {
  146. BEGIN_INTERFACE
  147. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  148. ILogonUser * This,
  149. /* [in] */ REFIID riid,
  150. /* [iid_is][out] */ void **ppvObject);
  151. ULONG ( STDMETHODCALLTYPE *AddRef )(
  152. ILogonUser * This);
  153. ULONG ( STDMETHODCALLTYPE *Release )(
  154. ILogonUser * This);
  155. HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
  156. ILogonUser * This,
  157. /* [out] */ UINT *pctinfo);
  158. HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
  159. ILogonUser * This,
  160. /* [in] */ UINT iTInfo,
  161. /* [in] */ LCID lcid,
  162. /* [out] */ ITypeInfo **ppTInfo);
  163. HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
  164. ILogonUser * This,
  165. /* [in] */ REFIID riid,
  166. /* [size_is][in] */ LPOLESTR *rgszNames,
  167. /* [in] */ UINT cNames,
  168. /* [in] */ LCID lcid,
  169. /* [size_is][out] */ DISPID *rgDispId);
  170. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
  171. ILogonUser * This,
  172. /* [in] */ DISPID dispIdMember,
  173. /* [in] */ REFIID riid,
  174. /* [in] */ LCID lcid,
  175. /* [in] */ WORD wFlags,
  176. /* [out][in] */ DISPPARAMS *pDispParams,
  177. /* [out] */ VARIANT *pVarResult,
  178. /* [out] */ EXCEPINFO *pExcepInfo,
  179. /* [out] */ UINT *puArgErr);
  180. /* [helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_setting )(
  181. ILogonUser * This,
  182. /* [in] */ BSTR bstrName,
  183. /* [retval][out] */ VARIANT *pvarVal);
  184. /* [helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_setting )(
  185. ILogonUser * This,
  186. /* [in] */ BSTR bstrName,
  187. /* [in] */ VARIANT varVal);
  188. /* [helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_isLoggedOn )(
  189. ILogonUser * This,
  190. /* [retval][out] */ VARIANT_BOOL *pbLoggedIn);
  191. /* [helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_passwordRequired )(
  192. ILogonUser * This,
  193. /* [retval][out] */ VARIANT_BOOL *pbPasswordRequired);
  194. /* [helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_interactiveLogonAllowed )(
  195. ILogonUser * This,
  196. /* [retval][out] */ VARIANT_BOOL *pbInteractiveLogonAllowed);
  197. /* [helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_isProfilePrivate )(
  198. ILogonUser * This,
  199. /* [retval][out] */ VARIANT_BOOL *pbPrivate);
  200. /* [helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_isPasswordResetAvailable )(
  201. ILogonUser * This,
  202. /* [retval][out] */ VARIANT_BOOL *pbResetAvailable);
  203. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *logon )(
  204. ILogonUser * This,
  205. /* [in] */ BSTR pstrPassword,
  206. /* [retval][out] */ VARIANT_BOOL *pbRet);
  207. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *logoff )(
  208. ILogonUser * This,
  209. /* [retval][out] */ VARIANT_BOOL *pbRet);
  210. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *changePassword )(
  211. ILogonUser * This,
  212. /* [in] */ VARIANT varNewPassword,
  213. /* [in] */ VARIANT varOldPassword,
  214. /* [retval][out] */ VARIANT_BOOL *pbRet);
  215. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *makeProfilePrivate )(
  216. ILogonUser * This,
  217. /* [in] */ VARIANT_BOOL bPrivate);
  218. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *getMailAccountInfo )(
  219. ILogonUser * This,
  220. /* [in] */ UINT uiAccountIndex,
  221. /* [out] */ VARIANT *pvarAccountName,
  222. /* [out] */ UINT *pcUnreadMessages);
  223. END_INTERFACE
  224. } ILogonUserVtbl;
  225. interface ILogonUser
  226. {
  227. CONST_VTBL struct ILogonUserVtbl *lpVtbl;
  228. };
  229. #ifdef COBJMACROS
  230. #define ILogonUser_QueryInterface(This,riid,ppvObject) \
  231. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  232. #define ILogonUser_AddRef(This) \
  233. (This)->lpVtbl -> AddRef(This)
  234. #define ILogonUser_Release(This) \
  235. (This)->lpVtbl -> Release(This)
  236. #define ILogonUser_GetTypeInfoCount(This,pctinfo) \
  237. (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  238. #define ILogonUser_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
  239. (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  240. #define ILogonUser_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
  241. (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  242. #define ILogonUser_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
  243. (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  244. #define ILogonUser_get_setting(This,bstrName,pvarVal) \
  245. (This)->lpVtbl -> get_setting(This,bstrName,pvarVal)
  246. #define ILogonUser_put_setting(This,bstrName,varVal) \
  247. (This)->lpVtbl -> put_setting(This,bstrName,varVal)
  248. #define ILogonUser_get_isLoggedOn(This,pbLoggedIn) \
  249. (This)->lpVtbl -> get_isLoggedOn(This,pbLoggedIn)
  250. #define ILogonUser_get_passwordRequired(This,pbPasswordRequired) \
  251. (This)->lpVtbl -> get_passwordRequired(This,pbPasswordRequired)
  252. #define ILogonUser_get_interactiveLogonAllowed(This,pbInteractiveLogonAllowed) \
  253. (This)->lpVtbl -> get_interactiveLogonAllowed(This,pbInteractiveLogonAllowed)
  254. #define ILogonUser_get_isProfilePrivate(This,pbPrivate) \
  255. (This)->lpVtbl -> get_isProfilePrivate(This,pbPrivate)
  256. #define ILogonUser_get_isPasswordResetAvailable(This,pbResetAvailable) \
  257. (This)->lpVtbl -> get_isPasswordResetAvailable(This,pbResetAvailable)
  258. #define ILogonUser_logon(This,pstrPassword,pbRet) \
  259. (This)->lpVtbl -> logon(This,pstrPassword,pbRet)
  260. #define ILogonUser_logoff(This,pbRet) \
  261. (This)->lpVtbl -> logoff(This,pbRet)
  262. #define ILogonUser_changePassword(This,varNewPassword,varOldPassword,pbRet) \
  263. (This)->lpVtbl -> changePassword(This,varNewPassword,varOldPassword,pbRet)
  264. #define ILogonUser_makeProfilePrivate(This,bPrivate) \
  265. (This)->lpVtbl -> makeProfilePrivate(This,bPrivate)
  266. #define ILogonUser_getMailAccountInfo(This,uiAccountIndex,pvarAccountName,pcUnreadMessages) \
  267. (This)->lpVtbl -> getMailAccountInfo(This,uiAccountIndex,pvarAccountName,pcUnreadMessages)
  268. #endif /* COBJMACROS */
  269. #endif /* C style interface */
  270. /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE ILogonUser_get_setting_Proxy(
  271. ILogonUser * This,
  272. /* [in] */ BSTR bstrName,
  273. /* [retval][out] */ VARIANT *pvarVal);
  274. void __RPC_STUB ILogonUser_get_setting_Stub(
  275. IRpcStubBuffer *This,
  276. IRpcChannelBuffer *_pRpcChannelBuffer,
  277. PRPC_MESSAGE _pRpcMessage,
  278. DWORD *_pdwStubPhase);
  279. /* [helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE ILogonUser_put_setting_Proxy(
  280. ILogonUser * This,
  281. /* [in] */ BSTR bstrName,
  282. /* [in] */ VARIANT varVal);
  283. void __RPC_STUB ILogonUser_put_setting_Stub(
  284. IRpcStubBuffer *This,
  285. IRpcChannelBuffer *_pRpcChannelBuffer,
  286. PRPC_MESSAGE _pRpcMessage,
  287. DWORD *_pdwStubPhase);
  288. /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE ILogonUser_get_isLoggedOn_Proxy(
  289. ILogonUser * This,
  290. /* [retval][out] */ VARIANT_BOOL *pbLoggedIn);
  291. void __RPC_STUB ILogonUser_get_isLoggedOn_Stub(
  292. IRpcStubBuffer *This,
  293. IRpcChannelBuffer *_pRpcChannelBuffer,
  294. PRPC_MESSAGE _pRpcMessage,
  295. DWORD *_pdwStubPhase);
  296. /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE ILogonUser_get_passwordRequired_Proxy(
  297. ILogonUser * This,
  298. /* [retval][out] */ VARIANT_BOOL *pbPasswordRequired);
  299. void __RPC_STUB ILogonUser_get_passwordRequired_Stub(
  300. IRpcStubBuffer *This,
  301. IRpcChannelBuffer *_pRpcChannelBuffer,
  302. PRPC_MESSAGE _pRpcMessage,
  303. DWORD *_pdwStubPhase);
  304. /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE ILogonUser_get_interactiveLogonAllowed_Proxy(
  305. ILogonUser * This,
  306. /* [retval][out] */ VARIANT_BOOL *pbInteractiveLogonAllowed);
  307. void __RPC_STUB ILogonUser_get_interactiveLogonAllowed_Stub(
  308. IRpcStubBuffer *This,
  309. IRpcChannelBuffer *_pRpcChannelBuffer,
  310. PRPC_MESSAGE _pRpcMessage,
  311. DWORD *_pdwStubPhase);
  312. /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE ILogonUser_get_isProfilePrivate_Proxy(
  313. ILogonUser * This,
  314. /* [retval][out] */ VARIANT_BOOL *pbPrivate);
  315. void __RPC_STUB ILogonUser_get_isProfilePrivate_Stub(
  316. IRpcStubBuffer *This,
  317. IRpcChannelBuffer *_pRpcChannelBuffer,
  318. PRPC_MESSAGE _pRpcMessage,
  319. DWORD *_pdwStubPhase);
  320. /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE ILogonUser_get_isPasswordResetAvailable_Proxy(
  321. ILogonUser * This,
  322. /* [retval][out] */ VARIANT_BOOL *pbResetAvailable);
  323. void __RPC_STUB ILogonUser_get_isPasswordResetAvailable_Stub(
  324. IRpcStubBuffer *This,
  325. IRpcChannelBuffer *_pRpcChannelBuffer,
  326. PRPC_MESSAGE _pRpcMessage,
  327. DWORD *_pdwStubPhase);
  328. /* [helpstring] */ HRESULT STDMETHODCALLTYPE ILogonUser_logon_Proxy(
  329. ILogonUser * This,
  330. /* [in] */ BSTR pstrPassword,
  331. /* [retval][out] */ VARIANT_BOOL *pbRet);
  332. void __RPC_STUB ILogonUser_logon_Stub(
  333. IRpcStubBuffer *This,
  334. IRpcChannelBuffer *_pRpcChannelBuffer,
  335. PRPC_MESSAGE _pRpcMessage,
  336. DWORD *_pdwStubPhase);
  337. /* [helpstring] */ HRESULT STDMETHODCALLTYPE ILogonUser_logoff_Proxy(
  338. ILogonUser * This,
  339. /* [retval][out] */ VARIANT_BOOL *pbRet);
  340. void __RPC_STUB ILogonUser_logoff_Stub(
  341. IRpcStubBuffer *This,
  342. IRpcChannelBuffer *_pRpcChannelBuffer,
  343. PRPC_MESSAGE _pRpcMessage,
  344. DWORD *_pdwStubPhase);
  345. /* [helpstring] */ HRESULT STDMETHODCALLTYPE ILogonUser_changePassword_Proxy(
  346. ILogonUser * This,
  347. /* [in] */ VARIANT varNewPassword,
  348. /* [in] */ VARIANT varOldPassword,
  349. /* [retval][out] */ VARIANT_BOOL *pbRet);
  350. void __RPC_STUB ILogonUser_changePassword_Stub(
  351. IRpcStubBuffer *This,
  352. IRpcChannelBuffer *_pRpcChannelBuffer,
  353. PRPC_MESSAGE _pRpcMessage,
  354. DWORD *_pdwStubPhase);
  355. /* [helpstring] */ HRESULT STDMETHODCALLTYPE ILogonUser_makeProfilePrivate_Proxy(
  356. ILogonUser * This,
  357. /* [in] */ VARIANT_BOOL bPrivate);
  358. void __RPC_STUB ILogonUser_makeProfilePrivate_Stub(
  359. IRpcStubBuffer *This,
  360. IRpcChannelBuffer *_pRpcChannelBuffer,
  361. PRPC_MESSAGE _pRpcMessage,
  362. DWORD *_pdwStubPhase);
  363. /* [helpstring] */ HRESULT STDMETHODCALLTYPE ILogonUser_getMailAccountInfo_Proxy(
  364. ILogonUser * This,
  365. /* [in] */ UINT uiAccountIndex,
  366. /* [out] */ VARIANT *pvarAccountName,
  367. /* [out] */ UINT *pcUnreadMessages);
  368. void __RPC_STUB ILogonUser_getMailAccountInfo_Stub(
  369. IRpcStubBuffer *This,
  370. IRpcChannelBuffer *_pRpcChannelBuffer,
  371. PRPC_MESSAGE _pRpcMessage,
  372. DWORD *_pdwStubPhase);
  373. #endif /* __ILogonUser_INTERFACE_DEFINED__ */
  374. EXTERN_C const CLSID CLSID_ShellLogonUser;
  375. #ifdef __cplusplus
  376. class DECLSPEC_UUID("60664CAF-AF0D-0003-A300-5C7D25FF22A0")
  377. ShellLogonUser;
  378. #endif
  379. #ifndef __ILogonEnumUsers_INTERFACE_DEFINED__
  380. #define __ILogonEnumUsers_INTERFACE_DEFINED__
  381. /* interface ILogonEnumUsers */
  382. /* [oleautomation][helpstring][hidden][dual][uuid][object] */
  383. EXTERN_C const IID IID_ILogonEnumUsers;
  384. #if defined(__cplusplus) && !defined(CINTERFACE)
  385. MIDL_INTERFACE("60664CAF-AF0D-1004-A300-5C7D25FF22A0")
  386. ILogonEnumUsers : public IDispatch
  387. {
  388. public:
  389. virtual /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_Domain(
  390. /* [retval][out] */ BSTR *pbstr) = 0;
  391. virtual /* [helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE put_Domain(
  392. /* [in] */ BSTR bstr) = 0;
  393. virtual /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_EnumFlags(
  394. /* [retval][out] */ ILUEORDER *porder) = 0;
  395. virtual /* [helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE put_EnumFlags(
  396. /* [in] */ ILUEORDER order) = 0;
  397. virtual /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_length(
  398. /* [retval][out] */ UINT *pcUsers) = 0;
  399. virtual /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_currentUser(
  400. /* [retval][out] */ ILogonUser **ppLogonUserInfo) = 0;
  401. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE item(
  402. /* [in] */ VARIANT varUserId,
  403. /* [retval][out] */ ILogonUser **ppLogonUserInfo) = 0;
  404. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE _NewEnum(
  405. /* [retval][out] */ IUnknown **retval) = 0;
  406. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE create(
  407. /* [in] */ BSTR bstrLoginName,
  408. /* [retval][out] */ ILogonUser **ppLogonUser) = 0;
  409. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE remove(
  410. /* [in] */ VARIANT varUserId,
  411. /* [optional][in] */ VARIANT varBackupPath,
  412. /* [retval][out] */ VARIANT_BOOL *pbSuccess) = 0;
  413. };
  414. #else /* C style interface */
  415. typedef struct ILogonEnumUsersVtbl
  416. {
  417. BEGIN_INTERFACE
  418. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  419. ILogonEnumUsers * This,
  420. /* [in] */ REFIID riid,
  421. /* [iid_is][out] */ void **ppvObject);
  422. ULONG ( STDMETHODCALLTYPE *AddRef )(
  423. ILogonEnumUsers * This);
  424. ULONG ( STDMETHODCALLTYPE *Release )(
  425. ILogonEnumUsers * This);
  426. HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
  427. ILogonEnumUsers * This,
  428. /* [out] */ UINT *pctinfo);
  429. HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
  430. ILogonEnumUsers * This,
  431. /* [in] */ UINT iTInfo,
  432. /* [in] */ LCID lcid,
  433. /* [out] */ ITypeInfo **ppTInfo);
  434. HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
  435. ILogonEnumUsers * This,
  436. /* [in] */ REFIID riid,
  437. /* [size_is][in] */ LPOLESTR *rgszNames,
  438. /* [in] */ UINT cNames,
  439. /* [in] */ LCID lcid,
  440. /* [size_is][out] */ DISPID *rgDispId);
  441. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
  442. ILogonEnumUsers * This,
  443. /* [in] */ DISPID dispIdMember,
  444. /* [in] */ REFIID riid,
  445. /* [in] */ LCID lcid,
  446. /* [in] */ WORD wFlags,
  447. /* [out][in] */ DISPPARAMS *pDispParams,
  448. /* [out] */ VARIANT *pVarResult,
  449. /* [out] */ EXCEPINFO *pExcepInfo,
  450. /* [out] */ UINT *puArgErr);
  451. /* [helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Domain )(
  452. ILogonEnumUsers * This,
  453. /* [retval][out] */ BSTR *pbstr);
  454. /* [helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Domain )(
  455. ILogonEnumUsers * This,
  456. /* [in] */ BSTR bstr);
  457. /* [helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_EnumFlags )(
  458. ILogonEnumUsers * This,
  459. /* [retval][out] */ ILUEORDER *porder);
  460. /* [helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_EnumFlags )(
  461. ILogonEnumUsers * This,
  462. /* [in] */ ILUEORDER order);
  463. /* [helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_length )(
  464. ILogonEnumUsers * This,
  465. /* [retval][out] */ UINT *pcUsers);
  466. /* [helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_currentUser )(
  467. ILogonEnumUsers * This,
  468. /* [retval][out] */ ILogonUser **ppLogonUserInfo);
  469. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *item )(
  470. ILogonEnumUsers * This,
  471. /* [in] */ VARIANT varUserId,
  472. /* [retval][out] */ ILogonUser **ppLogonUserInfo);
  473. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *_NewEnum )(
  474. ILogonEnumUsers * This,
  475. /* [retval][out] */ IUnknown **retval);
  476. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *create )(
  477. ILogonEnumUsers * This,
  478. /* [in] */ BSTR bstrLoginName,
  479. /* [retval][out] */ ILogonUser **ppLogonUser);
  480. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *remove )(
  481. ILogonEnumUsers * This,
  482. /* [in] */ VARIANT varUserId,
  483. /* [optional][in] */ VARIANT varBackupPath,
  484. /* [retval][out] */ VARIANT_BOOL *pbSuccess);
  485. END_INTERFACE
  486. } ILogonEnumUsersVtbl;
  487. interface ILogonEnumUsers
  488. {
  489. CONST_VTBL struct ILogonEnumUsersVtbl *lpVtbl;
  490. };
  491. #ifdef COBJMACROS
  492. #define ILogonEnumUsers_QueryInterface(This,riid,ppvObject) \
  493. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  494. #define ILogonEnumUsers_AddRef(This) \
  495. (This)->lpVtbl -> AddRef(This)
  496. #define ILogonEnumUsers_Release(This) \
  497. (This)->lpVtbl -> Release(This)
  498. #define ILogonEnumUsers_GetTypeInfoCount(This,pctinfo) \
  499. (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  500. #define ILogonEnumUsers_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
  501. (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  502. #define ILogonEnumUsers_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
  503. (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  504. #define ILogonEnumUsers_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
  505. (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  506. #define ILogonEnumUsers_get_Domain(This,pbstr) \
  507. (This)->lpVtbl -> get_Domain(This,pbstr)
  508. #define ILogonEnumUsers_put_Domain(This,bstr) \
  509. (This)->lpVtbl -> put_Domain(This,bstr)
  510. #define ILogonEnumUsers_get_EnumFlags(This,porder) \
  511. (This)->lpVtbl -> get_EnumFlags(This,porder)
  512. #define ILogonEnumUsers_put_EnumFlags(This,order) \
  513. (This)->lpVtbl -> put_EnumFlags(This,order)
  514. #define ILogonEnumUsers_get_length(This,pcUsers) \
  515. (This)->lpVtbl -> get_length(This,pcUsers)
  516. #define ILogonEnumUsers_get_currentUser(This,ppLogonUserInfo) \
  517. (This)->lpVtbl -> get_currentUser(This,ppLogonUserInfo)
  518. #define ILogonEnumUsers_item(This,varUserId,ppLogonUserInfo) \
  519. (This)->lpVtbl -> item(This,varUserId,ppLogonUserInfo)
  520. #define ILogonEnumUsers__NewEnum(This,retval) \
  521. (This)->lpVtbl -> _NewEnum(This,retval)
  522. #define ILogonEnumUsers_create(This,bstrLoginName,ppLogonUser) \
  523. (This)->lpVtbl -> create(This,bstrLoginName,ppLogonUser)
  524. #define ILogonEnumUsers_remove(This,varUserId,varBackupPath,pbSuccess) \
  525. (This)->lpVtbl -> remove(This,varUserId,varBackupPath,pbSuccess)
  526. #endif /* COBJMACROS */
  527. #endif /* C style interface */
  528. /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE ILogonEnumUsers_get_Domain_Proxy(
  529. ILogonEnumUsers * This,
  530. /* [retval][out] */ BSTR *pbstr);
  531. void __RPC_STUB ILogonEnumUsers_get_Domain_Stub(
  532. IRpcStubBuffer *This,
  533. IRpcChannelBuffer *_pRpcChannelBuffer,
  534. PRPC_MESSAGE _pRpcMessage,
  535. DWORD *_pdwStubPhase);
  536. /* [helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE ILogonEnumUsers_put_Domain_Proxy(
  537. ILogonEnumUsers * This,
  538. /* [in] */ BSTR bstr);
  539. void __RPC_STUB ILogonEnumUsers_put_Domain_Stub(
  540. IRpcStubBuffer *This,
  541. IRpcChannelBuffer *_pRpcChannelBuffer,
  542. PRPC_MESSAGE _pRpcMessage,
  543. DWORD *_pdwStubPhase);
  544. /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE ILogonEnumUsers_get_EnumFlags_Proxy(
  545. ILogonEnumUsers * This,
  546. /* [retval][out] */ ILUEORDER *porder);
  547. void __RPC_STUB ILogonEnumUsers_get_EnumFlags_Stub(
  548. IRpcStubBuffer *This,
  549. IRpcChannelBuffer *_pRpcChannelBuffer,
  550. PRPC_MESSAGE _pRpcMessage,
  551. DWORD *_pdwStubPhase);
  552. /* [helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE ILogonEnumUsers_put_EnumFlags_Proxy(
  553. ILogonEnumUsers * This,
  554. /* [in] */ ILUEORDER order);
  555. void __RPC_STUB ILogonEnumUsers_put_EnumFlags_Stub(
  556. IRpcStubBuffer *This,
  557. IRpcChannelBuffer *_pRpcChannelBuffer,
  558. PRPC_MESSAGE _pRpcMessage,
  559. DWORD *_pdwStubPhase);
  560. /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE ILogonEnumUsers_get_length_Proxy(
  561. ILogonEnumUsers * This,
  562. /* [retval][out] */ UINT *pcUsers);
  563. void __RPC_STUB ILogonEnumUsers_get_length_Stub(
  564. IRpcStubBuffer *This,
  565. IRpcChannelBuffer *_pRpcChannelBuffer,
  566. PRPC_MESSAGE _pRpcMessage,
  567. DWORD *_pdwStubPhase);
  568. /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE ILogonEnumUsers_get_currentUser_Proxy(
  569. ILogonEnumUsers * This,
  570. /* [retval][out] */ ILogonUser **ppLogonUserInfo);
  571. void __RPC_STUB ILogonEnumUsers_get_currentUser_Stub(
  572. IRpcStubBuffer *This,
  573. IRpcChannelBuffer *_pRpcChannelBuffer,
  574. PRPC_MESSAGE _pRpcMessage,
  575. DWORD *_pdwStubPhase);
  576. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ILogonEnumUsers_item_Proxy(
  577. ILogonEnumUsers * This,
  578. /* [in] */ VARIANT varUserId,
  579. /* [retval][out] */ ILogonUser **ppLogonUserInfo);
  580. void __RPC_STUB ILogonEnumUsers_item_Stub(
  581. IRpcStubBuffer *This,
  582. IRpcChannelBuffer *_pRpcChannelBuffer,
  583. PRPC_MESSAGE _pRpcMessage,
  584. DWORD *_pdwStubPhase);
  585. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ILogonEnumUsers__NewEnum_Proxy(
  586. ILogonEnumUsers * This,
  587. /* [retval][out] */ IUnknown **retval);
  588. void __RPC_STUB ILogonEnumUsers__NewEnum_Stub(
  589. IRpcStubBuffer *This,
  590. IRpcChannelBuffer *_pRpcChannelBuffer,
  591. PRPC_MESSAGE _pRpcMessage,
  592. DWORD *_pdwStubPhase);
  593. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ILogonEnumUsers_create_Proxy(
  594. ILogonEnumUsers * This,
  595. /* [in] */ BSTR bstrLoginName,
  596. /* [retval][out] */ ILogonUser **ppLogonUser);
  597. void __RPC_STUB ILogonEnumUsers_create_Stub(
  598. IRpcStubBuffer *This,
  599. IRpcChannelBuffer *_pRpcChannelBuffer,
  600. PRPC_MESSAGE _pRpcMessage,
  601. DWORD *_pdwStubPhase);
  602. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ILogonEnumUsers_remove_Proxy(
  603. ILogonEnumUsers * This,
  604. /* [in] */ VARIANT varUserId,
  605. /* [optional][in] */ VARIANT varBackupPath,
  606. /* [retval][out] */ VARIANT_BOOL *pbSuccess);
  607. void __RPC_STUB ILogonEnumUsers_remove_Stub(
  608. IRpcStubBuffer *This,
  609. IRpcChannelBuffer *_pRpcChannelBuffer,
  610. PRPC_MESSAGE _pRpcMessage,
  611. DWORD *_pdwStubPhase);
  612. #endif /* __ILogonEnumUsers_INTERFACE_DEFINED__ */
  613. EXTERN_C const CLSID CLSID_ShellLogonEnumUsers;
  614. #ifdef __cplusplus
  615. class DECLSPEC_UUID("60664CAF-AF0D-0004-A300-5C7D25FF22A0")
  616. ShellLogonEnumUsers;
  617. #endif
  618. #ifndef __ILocalMachine_INTERFACE_DEFINED__
  619. #define __ILocalMachine_INTERFACE_DEFINED__
  620. /* interface ILocalMachine */
  621. /* [oleautomation][helpstring][hidden][dual][uuid][object] */
  622. EXTERN_C const IID IID_ILocalMachine;
  623. #if defined(__cplusplus) && !defined(CINTERFACE)
  624. MIDL_INTERFACE("60664CAF-AF0D-1005-A300-5C7D25FF22A0")
  625. ILocalMachine : public IDispatch
  626. {
  627. public:
  628. virtual /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_MachineName(
  629. /* [retval][out] */ VARIANT *pvarVal) = 0;
  630. virtual /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_isGuestEnabled(
  631. /* [in] */ ILM_GUEST_FLAGS flags,
  632. /* [retval][out] */ VARIANT_BOOL *pbEnabled) = 0;
  633. virtual /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_isFriendlyUIEnabled(
  634. /* [retval][out] */ VARIANT_BOOL *pbEnabled) = 0;
  635. virtual /* [helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE put_isFriendlyUIEnabled(
  636. /* [in] */ VARIANT_BOOL bEnabled) = 0;
  637. virtual /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_isMultipleUsersEnabled(
  638. /* [retval][out] */ VARIANT_BOOL *pbEnabled) = 0;
  639. virtual /* [helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE put_isMultipleUsersEnabled(
  640. /* [in] */ VARIANT_BOOL bEnabled) = 0;
  641. virtual /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_isRemoteConnectionsEnabled(
  642. /* [retval][out] */ VARIANT_BOOL *pbEnabled) = 0;
  643. virtual /* [helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE put_isRemoteConnectionsEnabled(
  644. /* [in] */ VARIANT_BOOL bEnabled) = 0;
  645. virtual /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_AccountName(
  646. /* [in] */ VARIANT varAccount,
  647. /* [retval][out] */ VARIANT *pvarVal) = 0;
  648. virtual /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_isUndockEnabled(
  649. /* [retval][out] */ VARIANT_BOOL *pbEnabled) = 0;
  650. virtual /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_isShutdownAllowed(
  651. /* [retval][out] */ VARIANT_BOOL *pbEnabled) = 0;
  652. virtual /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_isGuestAccessMode(
  653. /* [retval][out] */ VARIANT_BOOL *pbForceGuest) = 0;
  654. virtual /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_isOfflineFilesEnabled(
  655. /* [retval][out] */ VARIANT_BOOL *pbEnabled) = 0;
  656. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE TurnOffComputer( void) = 0;
  657. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SignalUIHostFailure( void) = 0;
  658. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AllowExternalCredentials( void) = 0;
  659. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE RequestExternalCredentials( void) = 0;
  660. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE LogonWithExternalCredentials(
  661. /* [in] */ BSTR pstrUsername,
  662. /* [in] */ BSTR pstrDomain,
  663. /* [in] */ BSTR pstrPassword,
  664. /* [retval][out] */ VARIANT_BOOL *pbRet) = 0;
  665. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE InitiateInteractiveLogon(
  666. /* [in] */ BSTR pstrUsername,
  667. /* [in] */ BSTR pstrDomain,
  668. /* [in] */ BSTR pstrPassword,
  669. /* [in] */ DWORD dwTimeout,
  670. /* [retval][out] */ VARIANT_BOOL *pbRet) = 0;
  671. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE UndockComputer( void) = 0;
  672. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE EnableGuest(
  673. ILM_GUEST_FLAGS flags) = 0;
  674. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE DisableGuest(
  675. ILM_GUEST_FLAGS flags) = 0;
  676. };
  677. #else /* C style interface */
  678. typedef struct ILocalMachineVtbl
  679. {
  680. BEGIN_INTERFACE
  681. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  682. ILocalMachine * This,
  683. /* [in] */ REFIID riid,
  684. /* [iid_is][out] */ void **ppvObject);
  685. ULONG ( STDMETHODCALLTYPE *AddRef )(
  686. ILocalMachine * This);
  687. ULONG ( STDMETHODCALLTYPE *Release )(
  688. ILocalMachine * This);
  689. HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
  690. ILocalMachine * This,
  691. /* [out] */ UINT *pctinfo);
  692. HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
  693. ILocalMachine * This,
  694. /* [in] */ UINT iTInfo,
  695. /* [in] */ LCID lcid,
  696. /* [out] */ ITypeInfo **ppTInfo);
  697. HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
  698. ILocalMachine * This,
  699. /* [in] */ REFIID riid,
  700. /* [size_is][in] */ LPOLESTR *rgszNames,
  701. /* [in] */ UINT cNames,
  702. /* [in] */ LCID lcid,
  703. /* [size_is][out] */ DISPID *rgDispId);
  704. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
  705. ILocalMachine * This,
  706. /* [in] */ DISPID dispIdMember,
  707. /* [in] */ REFIID riid,
  708. /* [in] */ LCID lcid,
  709. /* [in] */ WORD wFlags,
  710. /* [out][in] */ DISPPARAMS *pDispParams,
  711. /* [out] */ VARIANT *pVarResult,
  712. /* [out] */ EXCEPINFO *pExcepInfo,
  713. /* [out] */ UINT *puArgErr);
  714. /* [helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_MachineName )(
  715. ILocalMachine * This,
  716. /* [retval][out] */ VARIANT *pvarVal);
  717. /* [helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_isGuestEnabled )(
  718. ILocalMachine * This,
  719. /* [in] */ ILM_GUEST_FLAGS flags,
  720. /* [retval][out] */ VARIANT_BOOL *pbEnabled);
  721. /* [helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_isFriendlyUIEnabled )(
  722. ILocalMachine * This,
  723. /* [retval][out] */ VARIANT_BOOL *pbEnabled);
  724. /* [helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_isFriendlyUIEnabled )(
  725. ILocalMachine * This,
  726. /* [in] */ VARIANT_BOOL bEnabled);
  727. /* [helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_isMultipleUsersEnabled )(
  728. ILocalMachine * This,
  729. /* [retval][out] */ VARIANT_BOOL *pbEnabled);
  730. /* [helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_isMultipleUsersEnabled )(
  731. ILocalMachine * This,
  732. /* [in] */ VARIANT_BOOL bEnabled);
  733. /* [helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_isRemoteConnectionsEnabled )(
  734. ILocalMachine * This,
  735. /* [retval][out] */ VARIANT_BOOL *pbEnabled);
  736. /* [helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_isRemoteConnectionsEnabled )(
  737. ILocalMachine * This,
  738. /* [in] */ VARIANT_BOOL bEnabled);
  739. /* [helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AccountName )(
  740. ILocalMachine * This,
  741. /* [in] */ VARIANT varAccount,
  742. /* [retval][out] */ VARIANT *pvarVal);
  743. /* [helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_isUndockEnabled )(
  744. ILocalMachine * This,
  745. /* [retval][out] */ VARIANT_BOOL *pbEnabled);
  746. /* [helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_isShutdownAllowed )(
  747. ILocalMachine * This,
  748. /* [retval][out] */ VARIANT_BOOL *pbEnabled);
  749. /* [helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_isGuestAccessMode )(
  750. ILocalMachine * This,
  751. /* [retval][out] */ VARIANT_BOOL *pbForceGuest);
  752. /* [helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_isOfflineFilesEnabled )(
  753. ILocalMachine * This,
  754. /* [retval][out] */ VARIANT_BOOL *pbEnabled);
  755. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *TurnOffComputer )(
  756. ILocalMachine * This);
  757. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SignalUIHostFailure )(
  758. ILocalMachine * This);
  759. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AllowExternalCredentials )(
  760. ILocalMachine * This);
  761. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *RequestExternalCredentials )(
  762. ILocalMachine * This);
  763. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *LogonWithExternalCredentials )(
  764. ILocalMachine * This,
  765. /* [in] */ BSTR pstrUsername,
  766. /* [in] */ BSTR pstrDomain,
  767. /* [in] */ BSTR pstrPassword,
  768. /* [retval][out] */ VARIANT_BOOL *pbRet);
  769. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *InitiateInteractiveLogon )(
  770. ILocalMachine * This,
  771. /* [in] */ BSTR pstrUsername,
  772. /* [in] */ BSTR pstrDomain,
  773. /* [in] */ BSTR pstrPassword,
  774. /* [in] */ DWORD dwTimeout,
  775. /* [retval][out] */ VARIANT_BOOL *pbRet);
  776. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *UndockComputer )(
  777. ILocalMachine * This);
  778. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *EnableGuest )(
  779. ILocalMachine * This,
  780. ILM_GUEST_FLAGS flags);
  781. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *DisableGuest )(
  782. ILocalMachine * This,
  783. ILM_GUEST_FLAGS flags);
  784. END_INTERFACE
  785. } ILocalMachineVtbl;
  786. interface ILocalMachine
  787. {
  788. CONST_VTBL struct ILocalMachineVtbl *lpVtbl;
  789. };
  790. #ifdef COBJMACROS
  791. #define ILocalMachine_QueryInterface(This,riid,ppvObject) \
  792. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  793. #define ILocalMachine_AddRef(This) \
  794. (This)->lpVtbl -> AddRef(This)
  795. #define ILocalMachine_Release(This) \
  796. (This)->lpVtbl -> Release(This)
  797. #define ILocalMachine_GetTypeInfoCount(This,pctinfo) \
  798. (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  799. #define ILocalMachine_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
  800. (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  801. #define ILocalMachine_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
  802. (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  803. #define ILocalMachine_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
  804. (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  805. #define ILocalMachine_get_MachineName(This,pvarVal) \
  806. (This)->lpVtbl -> get_MachineName(This,pvarVal)
  807. #define ILocalMachine_get_isGuestEnabled(This,flags,pbEnabled) \
  808. (This)->lpVtbl -> get_isGuestEnabled(This,flags,pbEnabled)
  809. #define ILocalMachine_get_isFriendlyUIEnabled(This,pbEnabled) \
  810. (This)->lpVtbl -> get_isFriendlyUIEnabled(This,pbEnabled)
  811. #define ILocalMachine_put_isFriendlyUIEnabled(This,bEnabled) \
  812. (This)->lpVtbl -> put_isFriendlyUIEnabled(This,bEnabled)
  813. #define ILocalMachine_get_isMultipleUsersEnabled(This,pbEnabled) \
  814. (This)->lpVtbl -> get_isMultipleUsersEnabled(This,pbEnabled)
  815. #define ILocalMachine_put_isMultipleUsersEnabled(This,bEnabled) \
  816. (This)->lpVtbl -> put_isMultipleUsersEnabled(This,bEnabled)
  817. #define ILocalMachine_get_isRemoteConnectionsEnabled(This,pbEnabled) \
  818. (This)->lpVtbl -> get_isRemoteConnectionsEnabled(This,pbEnabled)
  819. #define ILocalMachine_put_isRemoteConnectionsEnabled(This,bEnabled) \
  820. (This)->lpVtbl -> put_isRemoteConnectionsEnabled(This,bEnabled)
  821. #define ILocalMachine_get_AccountName(This,varAccount,pvarVal) \
  822. (This)->lpVtbl -> get_AccountName(This,varAccount,pvarVal)
  823. #define ILocalMachine_get_isUndockEnabled(This,pbEnabled) \
  824. (This)->lpVtbl -> get_isUndockEnabled(This,pbEnabled)
  825. #define ILocalMachine_get_isShutdownAllowed(This,pbEnabled) \
  826. (This)->lpVtbl -> get_isShutdownAllowed(This,pbEnabled)
  827. #define ILocalMachine_get_isGuestAccessMode(This,pbForceGuest) \
  828. (This)->lpVtbl -> get_isGuestAccessMode(This,pbForceGuest)
  829. #define ILocalMachine_get_isOfflineFilesEnabled(This,pbEnabled) \
  830. (This)->lpVtbl -> get_isOfflineFilesEnabled(This,pbEnabled)
  831. #define ILocalMachine_TurnOffComputer(This) \
  832. (This)->lpVtbl -> TurnOffComputer(This)
  833. #define ILocalMachine_SignalUIHostFailure(This) \
  834. (This)->lpVtbl -> SignalUIHostFailure(This)
  835. #define ILocalMachine_AllowExternalCredentials(This) \
  836. (This)->lpVtbl -> AllowExternalCredentials(This)
  837. #define ILocalMachine_RequestExternalCredentials(This) \
  838. (This)->lpVtbl -> RequestExternalCredentials(This)
  839. #define ILocalMachine_LogonWithExternalCredentials(This,pstrUsername,pstrDomain,pstrPassword,pbRet) \
  840. (This)->lpVtbl -> LogonWithExternalCredentials(This,pstrUsername,pstrDomain,pstrPassword,pbRet)
  841. #define ILocalMachine_InitiateInteractiveLogon(This,pstrUsername,pstrDomain,pstrPassword,dwTimeout,pbRet) \
  842. (This)->lpVtbl -> InitiateInteractiveLogon(This,pstrUsername,pstrDomain,pstrPassword,dwTimeout,pbRet)
  843. #define ILocalMachine_UndockComputer(This) \
  844. (This)->lpVtbl -> UndockComputer(This)
  845. #define ILocalMachine_EnableGuest(This,flags) \
  846. (This)->lpVtbl -> EnableGuest(This,flags)
  847. #define ILocalMachine_DisableGuest(This,flags) \
  848. (This)->lpVtbl -> DisableGuest(This,flags)
  849. #endif /* COBJMACROS */
  850. #endif /* C style interface */
  851. /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE ILocalMachine_get_MachineName_Proxy(
  852. ILocalMachine * This,
  853. /* [retval][out] */ VARIANT *pvarVal);
  854. void __RPC_STUB ILocalMachine_get_MachineName_Stub(
  855. IRpcStubBuffer *This,
  856. IRpcChannelBuffer *_pRpcChannelBuffer,
  857. PRPC_MESSAGE _pRpcMessage,
  858. DWORD *_pdwStubPhase);
  859. /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE ILocalMachine_get_isGuestEnabled_Proxy(
  860. ILocalMachine * This,
  861. /* [in] */ ILM_GUEST_FLAGS flags,
  862. /* [retval][out] */ VARIANT_BOOL *pbEnabled);
  863. void __RPC_STUB ILocalMachine_get_isGuestEnabled_Stub(
  864. IRpcStubBuffer *This,
  865. IRpcChannelBuffer *_pRpcChannelBuffer,
  866. PRPC_MESSAGE _pRpcMessage,
  867. DWORD *_pdwStubPhase);
  868. /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE ILocalMachine_get_isFriendlyUIEnabled_Proxy(
  869. ILocalMachine * This,
  870. /* [retval][out] */ VARIANT_BOOL *pbEnabled);
  871. void __RPC_STUB ILocalMachine_get_isFriendlyUIEnabled_Stub(
  872. IRpcStubBuffer *This,
  873. IRpcChannelBuffer *_pRpcChannelBuffer,
  874. PRPC_MESSAGE _pRpcMessage,
  875. DWORD *_pdwStubPhase);
  876. /* [helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE ILocalMachine_put_isFriendlyUIEnabled_Proxy(
  877. ILocalMachine * This,
  878. /* [in] */ VARIANT_BOOL bEnabled);
  879. void __RPC_STUB ILocalMachine_put_isFriendlyUIEnabled_Stub(
  880. IRpcStubBuffer *This,
  881. IRpcChannelBuffer *_pRpcChannelBuffer,
  882. PRPC_MESSAGE _pRpcMessage,
  883. DWORD *_pdwStubPhase);
  884. /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE ILocalMachine_get_isMultipleUsersEnabled_Proxy(
  885. ILocalMachine * This,
  886. /* [retval][out] */ VARIANT_BOOL *pbEnabled);
  887. void __RPC_STUB ILocalMachine_get_isMultipleUsersEnabled_Stub(
  888. IRpcStubBuffer *This,
  889. IRpcChannelBuffer *_pRpcChannelBuffer,
  890. PRPC_MESSAGE _pRpcMessage,
  891. DWORD *_pdwStubPhase);
  892. /* [helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE ILocalMachine_put_isMultipleUsersEnabled_Proxy(
  893. ILocalMachine * This,
  894. /* [in] */ VARIANT_BOOL bEnabled);
  895. void __RPC_STUB ILocalMachine_put_isMultipleUsersEnabled_Stub(
  896. IRpcStubBuffer *This,
  897. IRpcChannelBuffer *_pRpcChannelBuffer,
  898. PRPC_MESSAGE _pRpcMessage,
  899. DWORD *_pdwStubPhase);
  900. /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE ILocalMachine_get_isRemoteConnectionsEnabled_Proxy(
  901. ILocalMachine * This,
  902. /* [retval][out] */ VARIANT_BOOL *pbEnabled);
  903. void __RPC_STUB ILocalMachine_get_isRemoteConnectionsEnabled_Stub(
  904. IRpcStubBuffer *This,
  905. IRpcChannelBuffer *_pRpcChannelBuffer,
  906. PRPC_MESSAGE _pRpcMessage,
  907. DWORD *_pdwStubPhase);
  908. /* [helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE ILocalMachine_put_isRemoteConnectionsEnabled_Proxy(
  909. ILocalMachine * This,
  910. /* [in] */ VARIANT_BOOL bEnabled);
  911. void __RPC_STUB ILocalMachine_put_isRemoteConnectionsEnabled_Stub(
  912. IRpcStubBuffer *This,
  913. IRpcChannelBuffer *_pRpcChannelBuffer,
  914. PRPC_MESSAGE _pRpcMessage,
  915. DWORD *_pdwStubPhase);
  916. /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE ILocalMachine_get_AccountName_Proxy(
  917. ILocalMachine * This,
  918. /* [in] */ VARIANT varAccount,
  919. /* [retval][out] */ VARIANT *pvarVal);
  920. void __RPC_STUB ILocalMachine_get_AccountName_Stub(
  921. IRpcStubBuffer *This,
  922. IRpcChannelBuffer *_pRpcChannelBuffer,
  923. PRPC_MESSAGE _pRpcMessage,
  924. DWORD *_pdwStubPhase);
  925. /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE ILocalMachine_get_isUndockEnabled_Proxy(
  926. ILocalMachine * This,
  927. /* [retval][out] */ VARIANT_BOOL *pbEnabled);
  928. void __RPC_STUB ILocalMachine_get_isUndockEnabled_Stub(
  929. IRpcStubBuffer *This,
  930. IRpcChannelBuffer *_pRpcChannelBuffer,
  931. PRPC_MESSAGE _pRpcMessage,
  932. DWORD *_pdwStubPhase);
  933. /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE ILocalMachine_get_isShutdownAllowed_Proxy(
  934. ILocalMachine * This,
  935. /* [retval][out] */ VARIANT_BOOL *pbEnabled);
  936. void __RPC_STUB ILocalMachine_get_isShutdownAllowed_Stub(
  937. IRpcStubBuffer *This,
  938. IRpcChannelBuffer *_pRpcChannelBuffer,
  939. PRPC_MESSAGE _pRpcMessage,
  940. DWORD *_pdwStubPhase);
  941. /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE ILocalMachine_get_isGuestAccessMode_Proxy(
  942. ILocalMachine * This,
  943. /* [retval][out] */ VARIANT_BOOL *pbForceGuest);
  944. void __RPC_STUB ILocalMachine_get_isGuestAccessMode_Stub(
  945. IRpcStubBuffer *This,
  946. IRpcChannelBuffer *_pRpcChannelBuffer,
  947. PRPC_MESSAGE _pRpcMessage,
  948. DWORD *_pdwStubPhase);
  949. /* [helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE ILocalMachine_get_isOfflineFilesEnabled_Proxy(
  950. ILocalMachine * This,
  951. /* [retval][out] */ VARIANT_BOOL *pbEnabled);
  952. void __RPC_STUB ILocalMachine_get_isOfflineFilesEnabled_Stub(
  953. IRpcStubBuffer *This,
  954. IRpcChannelBuffer *_pRpcChannelBuffer,
  955. PRPC_MESSAGE _pRpcMessage,
  956. DWORD *_pdwStubPhase);
  957. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ILocalMachine_TurnOffComputer_Proxy(
  958. ILocalMachine * This);
  959. void __RPC_STUB ILocalMachine_TurnOffComputer_Stub(
  960. IRpcStubBuffer *This,
  961. IRpcChannelBuffer *_pRpcChannelBuffer,
  962. PRPC_MESSAGE _pRpcMessage,
  963. DWORD *_pdwStubPhase);
  964. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ILocalMachine_SignalUIHostFailure_Proxy(
  965. ILocalMachine * This);
  966. void __RPC_STUB ILocalMachine_SignalUIHostFailure_Stub(
  967. IRpcStubBuffer *This,
  968. IRpcChannelBuffer *_pRpcChannelBuffer,
  969. PRPC_MESSAGE _pRpcMessage,
  970. DWORD *_pdwStubPhase);
  971. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ILocalMachine_AllowExternalCredentials_Proxy(
  972. ILocalMachine * This);
  973. void __RPC_STUB ILocalMachine_AllowExternalCredentials_Stub(
  974. IRpcStubBuffer *This,
  975. IRpcChannelBuffer *_pRpcChannelBuffer,
  976. PRPC_MESSAGE _pRpcMessage,
  977. DWORD *_pdwStubPhase);
  978. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ILocalMachine_RequestExternalCredentials_Proxy(
  979. ILocalMachine * This);
  980. void __RPC_STUB ILocalMachine_RequestExternalCredentials_Stub(
  981. IRpcStubBuffer *This,
  982. IRpcChannelBuffer *_pRpcChannelBuffer,
  983. PRPC_MESSAGE _pRpcMessage,
  984. DWORD *_pdwStubPhase);
  985. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ILocalMachine_LogonWithExternalCredentials_Proxy(
  986. ILocalMachine * This,
  987. /* [in] */ BSTR pstrUsername,
  988. /* [in] */ BSTR pstrDomain,
  989. /* [in] */ BSTR pstrPassword,
  990. /* [retval][out] */ VARIANT_BOOL *pbRet);
  991. void __RPC_STUB ILocalMachine_LogonWithExternalCredentials_Stub(
  992. IRpcStubBuffer *This,
  993. IRpcChannelBuffer *_pRpcChannelBuffer,
  994. PRPC_MESSAGE _pRpcMessage,
  995. DWORD *_pdwStubPhase);
  996. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ILocalMachine_InitiateInteractiveLogon_Proxy(
  997. ILocalMachine * This,
  998. /* [in] */ BSTR pstrUsername,
  999. /* [in] */ BSTR pstrDomain,
  1000. /* [in] */ BSTR pstrPassword,
  1001. /* [in] */ DWORD dwTimeout,
  1002. /* [retval][out] */ VARIANT_BOOL *pbRet);
  1003. void __RPC_STUB ILocalMachine_InitiateInteractiveLogon_Stub(
  1004. IRpcStubBuffer *This,
  1005. IRpcChannelBuffer *_pRpcChannelBuffer,
  1006. PRPC_MESSAGE _pRpcMessage,
  1007. DWORD *_pdwStubPhase);
  1008. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ILocalMachine_UndockComputer_Proxy(
  1009. ILocalMachine * This);
  1010. void __RPC_STUB ILocalMachine_UndockComputer_Stub(
  1011. IRpcStubBuffer *This,
  1012. IRpcChannelBuffer *_pRpcChannelBuffer,
  1013. PRPC_MESSAGE _pRpcMessage,
  1014. DWORD *_pdwStubPhase);
  1015. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ILocalMachine_EnableGuest_Proxy(
  1016. ILocalMachine * This,
  1017. ILM_GUEST_FLAGS flags);
  1018. void __RPC_STUB ILocalMachine_EnableGuest_Stub(
  1019. IRpcStubBuffer *This,
  1020. IRpcChannelBuffer *_pRpcChannelBuffer,
  1021. PRPC_MESSAGE _pRpcMessage,
  1022. DWORD *_pdwStubPhase);
  1023. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ILocalMachine_DisableGuest_Proxy(
  1024. ILocalMachine * This,
  1025. ILM_GUEST_FLAGS flags);
  1026. void __RPC_STUB ILocalMachine_DisableGuest_Stub(
  1027. IRpcStubBuffer *This,
  1028. IRpcChannelBuffer *_pRpcChannelBuffer,
  1029. PRPC_MESSAGE _pRpcMessage,
  1030. DWORD *_pdwStubPhase);
  1031. #endif /* __ILocalMachine_INTERFACE_DEFINED__ */
  1032. EXTERN_C const CLSID CLSID_ShellLocalMachine;
  1033. #ifdef __cplusplus
  1034. class DECLSPEC_UUID("60664CAF-AF0D-0005-A300-5C7D25FF22A0")
  1035. ShellLocalMachine;
  1036. #endif
  1037. #ifndef __ILogonStatusHost_INTERFACE_DEFINED__
  1038. #define __ILogonStatusHost_INTERFACE_DEFINED__
  1039. /* interface ILogonStatusHost */
  1040. /* [oleautomation][helpstring][hidden][dual][uuid][object] */
  1041. EXTERN_C const IID IID_ILogonStatusHost;
  1042. #if defined(__cplusplus) && !defined(CINTERFACE)
  1043. MIDL_INTERFACE("60664CAF-AF0D-1007-A300-5C7D25FF22A0")
  1044. ILogonStatusHost : public IDispatch
  1045. {
  1046. public:
  1047. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Initialize(
  1048. /* [in] */ HINSTANCE hInstance,
  1049. /* [in] */ HWND hwndHost) = 0;
  1050. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE WindowProcedureHelper(
  1051. /* [in] */ HWND hwnd,
  1052. /* [in] */ UINT uMsg,
  1053. /* [in] */ VARIANT wParam,
  1054. /* [in] */ VARIANT lParam) = 0;
  1055. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE UnInitialize( void) = 0;
  1056. };
  1057. #else /* C style interface */
  1058. typedef struct ILogonStatusHostVtbl
  1059. {
  1060. BEGIN_INTERFACE
  1061. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1062. ILogonStatusHost * This,
  1063. /* [in] */ REFIID riid,
  1064. /* [iid_is][out] */ void **ppvObject);
  1065. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1066. ILogonStatusHost * This);
  1067. ULONG ( STDMETHODCALLTYPE *Release )(
  1068. ILogonStatusHost * This);
  1069. HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
  1070. ILogonStatusHost * This,
  1071. /* [out] */ UINT *pctinfo);
  1072. HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
  1073. ILogonStatusHost * This,
  1074. /* [in] */ UINT iTInfo,
  1075. /* [in] */ LCID lcid,
  1076. /* [out] */ ITypeInfo **ppTInfo);
  1077. HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
  1078. ILogonStatusHost * This,
  1079. /* [in] */ REFIID riid,
  1080. /* [size_is][in] */ LPOLESTR *rgszNames,
  1081. /* [in] */ UINT cNames,
  1082. /* [in] */ LCID lcid,
  1083. /* [size_is][out] */ DISPID *rgDispId);
  1084. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
  1085. ILogonStatusHost * This,
  1086. /* [in] */ DISPID dispIdMember,
  1087. /* [in] */ REFIID riid,
  1088. /* [in] */ LCID lcid,
  1089. /* [in] */ WORD wFlags,
  1090. /* [out][in] */ DISPPARAMS *pDispParams,
  1091. /* [out] */ VARIANT *pVarResult,
  1092. /* [out] */ EXCEPINFO *pExcepInfo,
  1093. /* [out] */ UINT *puArgErr);
  1094. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Initialize )(
  1095. ILogonStatusHost * This,
  1096. /* [in] */ HINSTANCE hInstance,
  1097. /* [in] */ HWND hwndHost);
  1098. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *WindowProcedureHelper )(
  1099. ILogonStatusHost * This,
  1100. /* [in] */ HWND hwnd,
  1101. /* [in] */ UINT uMsg,
  1102. /* [in] */ VARIANT wParam,
  1103. /* [in] */ VARIANT lParam);
  1104. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *UnInitialize )(
  1105. ILogonStatusHost * This);
  1106. END_INTERFACE
  1107. } ILogonStatusHostVtbl;
  1108. interface ILogonStatusHost
  1109. {
  1110. CONST_VTBL struct ILogonStatusHostVtbl *lpVtbl;
  1111. };
  1112. #ifdef COBJMACROS
  1113. #define ILogonStatusHost_QueryInterface(This,riid,ppvObject) \
  1114. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1115. #define ILogonStatusHost_AddRef(This) \
  1116. (This)->lpVtbl -> AddRef(This)
  1117. #define ILogonStatusHost_Release(This) \
  1118. (This)->lpVtbl -> Release(This)
  1119. #define ILogonStatusHost_GetTypeInfoCount(This,pctinfo) \
  1120. (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1121. #define ILogonStatusHost_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
  1122. (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1123. #define ILogonStatusHost_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
  1124. (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1125. #define ILogonStatusHost_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
  1126. (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1127. #define ILogonStatusHost_Initialize(This,hInstance,hwndHost) \
  1128. (This)->lpVtbl -> Initialize(This,hInstance,hwndHost)
  1129. #define ILogonStatusHost_WindowProcedureHelper(This,hwnd,uMsg,wParam,lParam) \
  1130. (This)->lpVtbl -> WindowProcedureHelper(This,hwnd,uMsg,wParam,lParam)
  1131. #define ILogonStatusHost_UnInitialize(This) \
  1132. (This)->lpVtbl -> UnInitialize(This)
  1133. #endif /* COBJMACROS */
  1134. #endif /* C style interface */
  1135. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ILogonStatusHost_Initialize_Proxy(
  1136. ILogonStatusHost * This,
  1137. /* [in] */ HINSTANCE hInstance,
  1138. /* [in] */ HWND hwndHost);
  1139. void __RPC_STUB ILogonStatusHost_Initialize_Stub(
  1140. IRpcStubBuffer *This,
  1141. IRpcChannelBuffer *_pRpcChannelBuffer,
  1142. PRPC_MESSAGE _pRpcMessage,
  1143. DWORD *_pdwStubPhase);
  1144. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ILogonStatusHost_WindowProcedureHelper_Proxy(
  1145. ILogonStatusHost * This,
  1146. /* [in] */ HWND hwnd,
  1147. /* [in] */ UINT uMsg,
  1148. /* [in] */ VARIANT wParam,
  1149. /* [in] */ VARIANT lParam);
  1150. void __RPC_STUB ILogonStatusHost_WindowProcedureHelper_Stub(
  1151. IRpcStubBuffer *This,
  1152. IRpcChannelBuffer *_pRpcChannelBuffer,
  1153. PRPC_MESSAGE _pRpcMessage,
  1154. DWORD *_pdwStubPhase);
  1155. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ILogonStatusHost_UnInitialize_Proxy(
  1156. ILogonStatusHost * This);
  1157. void __RPC_STUB ILogonStatusHost_UnInitialize_Stub(
  1158. IRpcStubBuffer *This,
  1159. IRpcChannelBuffer *_pRpcChannelBuffer,
  1160. PRPC_MESSAGE _pRpcMessage,
  1161. DWORD *_pdwStubPhase);
  1162. #endif /* __ILogonStatusHost_INTERFACE_DEFINED__ */
  1163. EXTERN_C const CLSID CLSID_ShellLogonStatusHost;
  1164. #ifdef __cplusplus
  1165. class DECLSPEC_UUID("60664CAF-AF0D-0007-A300-5C7D25FF22A0")
  1166. ShellLogonStatusHost;
  1167. #endif
  1168. #endif /* __SHGINALib_LIBRARY_DEFINED__ */
  1169. /* Additional Prototypes for ALL interfaces */
  1170. /* end of Additional Prototypes */
  1171. #ifdef __cplusplus
  1172. }
  1173. #endif
  1174. #endif