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.

2253 lines
70 KiB

  1. #pragma warning( disable: 4049 ) /* more than 64k source lines */
  2. #pragma warning( disable: 4100 ) /* unreferenced arguments in x86 call */
  3. #pragma warning( disable: 4211 ) /* redefine extent to static */
  4. #pragma warning( disable: 4232 ) /* dllimport identity*/
  5. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  6. /* File created by MIDL compiler version 6.00.0359 */
  7. /* Compiler settings for fusenet.idl:
  8. Oicf, W1, Zp8, env=Win32 (32b run)
  9. protocol : dce , ms_ext, c_ext, robust
  10. error checks: allocation ref bounds_check enum stub_data
  11. VC __declspec() decoration level:
  12. __declspec(uuid()), __declspec(selectany), __declspec(novtable)
  13. DECLSPEC_UUID(), MIDL_INTERFACE()
  14. */
  15. //@@MIDL_FILE_HEADING( )
  16. /* verify that the <rpcndr.h> version is high enough to compile this file*/
  17. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  18. #define __REQUIRED_RPCNDR_H_VERSION__ 475
  19. #endif
  20. #include "rpc.h"
  21. #include "rpcndr.h"
  22. #ifndef __RPCNDR_H_VERSION__
  23. #error this stub requires an updated version of <rpcndr.h>
  24. #endif // __RPCNDR_H_VERSION__
  25. #ifndef COM_NO_WINDOWS_H
  26. #include "windows.h"
  27. #include "ole2.h"
  28. #endif /*COM_NO_WINDOWS_H*/
  29. #ifndef __fusenet_h__
  30. #define __fusenet_h__
  31. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  32. #pragma once
  33. #endif
  34. /* Forward Declarations */
  35. #ifndef __IAssemblyIdentity_FWD_DEFINED__
  36. #define __IAssemblyIdentity_FWD_DEFINED__
  37. typedef interface IAssemblyIdentity IAssemblyIdentity;
  38. #endif /* __IAssemblyIdentity_FWD_DEFINED__ */
  39. #ifndef __IManifestInfo_FWD_DEFINED__
  40. #define __IManifestInfo_FWD_DEFINED__
  41. typedef interface IManifestInfo IManifestInfo;
  42. #endif /* __IManifestInfo_FWD_DEFINED__ */
  43. #ifndef __IManifestData_FWD_DEFINED__
  44. #define __IManifestData_FWD_DEFINED__
  45. typedef interface IManifestData IManifestData;
  46. #endif /* __IManifestData_FWD_DEFINED__ */
  47. #ifndef __IPatchingUtil_FWD_DEFINED__
  48. #define __IPatchingUtil_FWD_DEFINED__
  49. typedef interface IPatchingUtil IPatchingUtil;
  50. #endif /* __IPatchingUtil_FWD_DEFINED__ */
  51. #ifndef __IAssemblyManifestImport_FWD_DEFINED__
  52. #define __IAssemblyManifestImport_FWD_DEFINED__
  53. typedef interface IAssemblyManifestImport IAssemblyManifestImport;
  54. #endif /* __IAssemblyManifestImport_FWD_DEFINED__ */
  55. #ifndef __IAssemblyManifestEmit_FWD_DEFINED__
  56. #define __IAssemblyManifestEmit_FWD_DEFINED__
  57. typedef interface IAssemblyManifestEmit IAssemblyManifestEmit;
  58. #endif /* __IAssemblyManifestEmit_FWD_DEFINED__ */
  59. #ifndef __IAssemblyCacheImport_FWD_DEFINED__
  60. #define __IAssemblyCacheImport_FWD_DEFINED__
  61. typedef interface IAssemblyCacheImport IAssemblyCacheImport;
  62. #endif /* __IAssemblyCacheImport_FWD_DEFINED__ */
  63. #ifndef __IAssemblyCacheEmit_FWD_DEFINED__
  64. #define __IAssemblyCacheEmit_FWD_DEFINED__
  65. typedef interface IAssemblyCacheEmit IAssemblyCacheEmit;
  66. #endif /* __IAssemblyCacheEmit_FWD_DEFINED__ */
  67. #ifndef __IAssemblyCacheEnum_FWD_DEFINED__
  68. #define __IAssemblyCacheEnum_FWD_DEFINED__
  69. typedef interface IAssemblyCacheEnum IAssemblyCacheEnum;
  70. #endif /* __IAssemblyCacheEnum_FWD_DEFINED__ */
  71. #ifndef __IAssemblyBindSink_FWD_DEFINED__
  72. #define __IAssemblyBindSink_FWD_DEFINED__
  73. typedef interface IAssemblyBindSink IAssemblyBindSink;
  74. #endif /* __IAssemblyBindSink_FWD_DEFINED__ */
  75. #ifndef __IAssemblyDownload_FWD_DEFINED__
  76. #define __IAssemblyDownload_FWD_DEFINED__
  77. typedef interface IAssemblyDownload IAssemblyDownload;
  78. #endif /* __IAssemblyDownload_FWD_DEFINED__ */
  79. /* header files for imported files */
  80. #include "objidl.h"
  81. #include "oleidl.h"
  82. #include "bits.h"
  83. #ifdef __cplusplus
  84. extern "C"{
  85. #endif
  86. void * __RPC_USER MIDL_user_allocate(size_t);
  87. void __RPC_USER MIDL_user_free( void * );
  88. /* interface __MIDL_itf_fusenet_0000 */
  89. /* [local] */
  90. //=--------------------------------------------------------------------------=
  91. // fusenet.h
  92. //=--------------------------------------------------------------------------=
  93. // (C) Copyright 1995-2001 Microsoft Corporation. All Rights Reserved.
  94. //
  95. // THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF
  96. // ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO
  97. // THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
  98. // PARTICULAR PURPOSE.
  99. //=--------------------------------------------------------------------------=
  100. #pragma comment(lib,"uuid.lib")
  101. //---------------------------------------------------------------------------=
  102. // Fusenet Interfaces.
  103. class CDebugLog;
  104. #include <fusion.h>
  105. EXTERN_C const IID IID_IAssemblyIdentity;
  106. EXTERN_C const IID IID_IAssemblyManifestImport;
  107. EXTERN_C const IID IID_IAssemblyManifestEmit;
  108. EXTERN_C const IID IID_IAssemblyCacheImport;
  109. EXTERN_C const IID IID_IAssemblyCacheEmit;
  110. EXTERN_C const IID IID_IAssemblyCacheEnum;
  111. EXTERN_C const IID IID_IAssemblyDownload;
  112. EXTERN_C const IID IID_IManifestInfo;
  113. EXTERN_C const IID IID_IManifestData;
  114. EXTERN_C const IID IID_IPatchingInfo;
  115. extern RPC_IF_HANDLE __MIDL_itf_fusenet_0000_v0_0_c_ifspec;
  116. extern RPC_IF_HANDLE __MIDL_itf_fusenet_0000_v0_0_s_ifspec;
  117. #ifndef __IAssemblyIdentity_INTERFACE_DEFINED__
  118. #define __IAssemblyIdentity_INTERFACE_DEFINED__
  119. /* interface IAssemblyIdentity */
  120. /* [unique][uuid][object][local] */
  121. typedef /* [unique] */ IAssemblyIdentity *LPASSEMBLY_IDENTITY;
  122. typedef /* [public] */
  123. enum __MIDL_IAssemblyIdentity_0001
  124. { ASMID_DISPLAYNAME_NOMANGLING = 0,
  125. ASMID_DISPLAYNAME_WILDCARDED = ASMID_DISPLAYNAME_NOMANGLING + 1,
  126. ASMID_DISPLAYNAME_MAX = ASMID_DISPLAYNAME_WILDCARDED + 1
  127. } ASMID_DISPLAYNAME_FLAGS;
  128. EXTERN_C const IID IID_IAssemblyIdentity;
  129. #if defined(__cplusplus) && !defined(CINTERFACE)
  130. MIDL_INTERFACE("aaa1257d-a56c-4383-9b4a-c868eda7ca42")
  131. IAssemblyIdentity : public IUnknown
  132. {
  133. public:
  134. virtual HRESULT STDMETHODCALLTYPE SetAttribute(
  135. /* [in] */ LPCOLESTR pwzName,
  136. /* [in] */ LPCOLESTR pwzValue,
  137. /* [in] */ DWORD ccValue) = 0;
  138. virtual HRESULT STDMETHODCALLTYPE GetAttribute(
  139. /* [in] */ LPCOLESTR pwzName,
  140. /* [out] */ LPOLESTR *ppwzValue,
  141. /* [out] */ LPDWORD pccValue) = 0;
  142. virtual HRESULT STDMETHODCALLTYPE GetDisplayName(
  143. /* [in] */ DWORD dwFlags,
  144. /* [out] */ LPOLESTR *ppwzDisplayName,
  145. /* [out] */ LPDWORD pccDisplayName) = 0;
  146. virtual HRESULT STDMETHODCALLTYPE GetCLRDisplayName(
  147. /* [in] */ DWORD dwFlags,
  148. /* [out] */ LPOLESTR *ppwzDisplayName,
  149. /* [out] */ LPDWORD pccDisplayName) = 0;
  150. virtual HRESULT STDMETHODCALLTYPE IsEqual(
  151. /* [in] */ IAssemblyIdentity *pAssemblyId) = 0;
  152. };
  153. #else /* C style interface */
  154. typedef struct IAssemblyIdentityVtbl
  155. {
  156. BEGIN_INTERFACE
  157. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  158. IAssemblyIdentity * This,
  159. /* [in] */ REFIID riid,
  160. /* [iid_is][out] */ void **ppvObject);
  161. ULONG ( STDMETHODCALLTYPE *AddRef )(
  162. IAssemblyIdentity * This);
  163. ULONG ( STDMETHODCALLTYPE *Release )(
  164. IAssemblyIdentity * This);
  165. HRESULT ( STDMETHODCALLTYPE *SetAttribute )(
  166. IAssemblyIdentity * This,
  167. /* [in] */ LPCOLESTR pwzName,
  168. /* [in] */ LPCOLESTR pwzValue,
  169. /* [in] */ DWORD ccValue);
  170. HRESULT ( STDMETHODCALLTYPE *GetAttribute )(
  171. IAssemblyIdentity * This,
  172. /* [in] */ LPCOLESTR pwzName,
  173. /* [out] */ LPOLESTR *ppwzValue,
  174. /* [out] */ LPDWORD pccValue);
  175. HRESULT ( STDMETHODCALLTYPE *GetDisplayName )(
  176. IAssemblyIdentity * This,
  177. /* [in] */ DWORD dwFlags,
  178. /* [out] */ LPOLESTR *ppwzDisplayName,
  179. /* [out] */ LPDWORD pccDisplayName);
  180. HRESULT ( STDMETHODCALLTYPE *GetCLRDisplayName )(
  181. IAssemblyIdentity * This,
  182. /* [in] */ DWORD dwFlags,
  183. /* [out] */ LPOLESTR *ppwzDisplayName,
  184. /* [out] */ LPDWORD pccDisplayName);
  185. HRESULT ( STDMETHODCALLTYPE *IsEqual )(
  186. IAssemblyIdentity * This,
  187. /* [in] */ IAssemblyIdentity *pAssemblyId);
  188. END_INTERFACE
  189. } IAssemblyIdentityVtbl;
  190. interface IAssemblyIdentity
  191. {
  192. CONST_VTBL struct IAssemblyIdentityVtbl *lpVtbl;
  193. };
  194. #ifdef COBJMACROS
  195. #define IAssemblyIdentity_QueryInterface(This,riid,ppvObject) \
  196. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  197. #define IAssemblyIdentity_AddRef(This) \
  198. (This)->lpVtbl -> AddRef(This)
  199. #define IAssemblyIdentity_Release(This) \
  200. (This)->lpVtbl -> Release(This)
  201. #define IAssemblyIdentity_SetAttribute(This,pwzName,pwzValue,ccValue) \
  202. (This)->lpVtbl -> SetAttribute(This,pwzName,pwzValue,ccValue)
  203. #define IAssemblyIdentity_GetAttribute(This,pwzName,ppwzValue,pccValue) \
  204. (This)->lpVtbl -> GetAttribute(This,pwzName,ppwzValue,pccValue)
  205. #define IAssemblyIdentity_GetDisplayName(This,dwFlags,ppwzDisplayName,pccDisplayName) \
  206. (This)->lpVtbl -> GetDisplayName(This,dwFlags,ppwzDisplayName,pccDisplayName)
  207. #define IAssemblyIdentity_GetCLRDisplayName(This,dwFlags,ppwzDisplayName,pccDisplayName) \
  208. (This)->lpVtbl -> GetCLRDisplayName(This,dwFlags,ppwzDisplayName,pccDisplayName)
  209. #define IAssemblyIdentity_IsEqual(This,pAssemblyId) \
  210. (This)->lpVtbl -> IsEqual(This,pAssemblyId)
  211. #endif /* COBJMACROS */
  212. #endif /* C style interface */
  213. HRESULT STDMETHODCALLTYPE IAssemblyIdentity_SetAttribute_Proxy(
  214. IAssemblyIdentity * This,
  215. /* [in] */ LPCOLESTR pwzName,
  216. /* [in] */ LPCOLESTR pwzValue,
  217. /* [in] */ DWORD ccValue);
  218. void __RPC_STUB IAssemblyIdentity_SetAttribute_Stub(
  219. IRpcStubBuffer *This,
  220. IRpcChannelBuffer *_pRpcChannelBuffer,
  221. PRPC_MESSAGE _pRpcMessage,
  222. DWORD *_pdwStubPhase);
  223. HRESULT STDMETHODCALLTYPE IAssemblyIdentity_GetAttribute_Proxy(
  224. IAssemblyIdentity * This,
  225. /* [in] */ LPCOLESTR pwzName,
  226. /* [out] */ LPOLESTR *ppwzValue,
  227. /* [out] */ LPDWORD pccValue);
  228. void __RPC_STUB IAssemblyIdentity_GetAttribute_Stub(
  229. IRpcStubBuffer *This,
  230. IRpcChannelBuffer *_pRpcChannelBuffer,
  231. PRPC_MESSAGE _pRpcMessage,
  232. DWORD *_pdwStubPhase);
  233. HRESULT STDMETHODCALLTYPE IAssemblyIdentity_GetDisplayName_Proxy(
  234. IAssemblyIdentity * This,
  235. /* [in] */ DWORD dwFlags,
  236. /* [out] */ LPOLESTR *ppwzDisplayName,
  237. /* [out] */ LPDWORD pccDisplayName);
  238. void __RPC_STUB IAssemblyIdentity_GetDisplayName_Stub(
  239. IRpcStubBuffer *This,
  240. IRpcChannelBuffer *_pRpcChannelBuffer,
  241. PRPC_MESSAGE _pRpcMessage,
  242. DWORD *_pdwStubPhase);
  243. HRESULT STDMETHODCALLTYPE IAssemblyIdentity_GetCLRDisplayName_Proxy(
  244. IAssemblyIdentity * This,
  245. /* [in] */ DWORD dwFlags,
  246. /* [out] */ LPOLESTR *ppwzDisplayName,
  247. /* [out] */ LPDWORD pccDisplayName);
  248. void __RPC_STUB IAssemblyIdentity_GetCLRDisplayName_Stub(
  249. IRpcStubBuffer *This,
  250. IRpcChannelBuffer *_pRpcChannelBuffer,
  251. PRPC_MESSAGE _pRpcMessage,
  252. DWORD *_pdwStubPhase);
  253. HRESULT STDMETHODCALLTYPE IAssemblyIdentity_IsEqual_Proxy(
  254. IAssemblyIdentity * This,
  255. /* [in] */ IAssemblyIdentity *pAssemblyId);
  256. void __RPC_STUB IAssemblyIdentity_IsEqual_Stub(
  257. IRpcStubBuffer *This,
  258. IRpcChannelBuffer *_pRpcChannelBuffer,
  259. PRPC_MESSAGE _pRpcMessage,
  260. DWORD *_pdwStubPhase);
  261. #endif /* __IAssemblyIdentity_INTERFACE_DEFINED__ */
  262. #ifndef __IManifestInfo_INTERFACE_DEFINED__
  263. #define __IManifestInfo_INTERFACE_DEFINED__
  264. /* interface IManifestInfo */
  265. /* [unique][uuid][object][local] */
  266. typedef /* [unique] */ IManifestInfo *LPMANIFEST_INFO;
  267. enum __MIDL_IManifestInfo_0001
  268. { MAN_INFO_ASM_FILE_NAME = 0,
  269. MAN_INFO_ASM_FILE_HASH = MAN_INFO_ASM_FILE_NAME + 1,
  270. MAN_INFO_ASM_FILE_SIZE = MAN_INFO_ASM_FILE_HASH + 1,
  271. MAN_INFO_ASM_FILE_MAX = MAN_INFO_ASM_FILE_SIZE + 1
  272. } ;
  273. enum __MIDL_IManifestInfo_0002
  274. { MAN_INFO_APPLICATION_FRIENDLYNAME = 0,
  275. MAN_INFO_APPLICATION_ENTRYPOINT = MAN_INFO_APPLICATION_FRIENDLYNAME + 1,
  276. MAN_INFO_APPLICATION_ENTRYIMAGETYPE = MAN_INFO_APPLICATION_ENTRYPOINT + 1,
  277. MAN_INFO_APPLICATION_ICONFILE = MAN_INFO_APPLICATION_ENTRYIMAGETYPE + 1,
  278. MAN_INFO_APPLICATION_ICONINDEX = MAN_INFO_APPLICATION_ICONFILE + 1,
  279. MAN_INFO_APPLICATION_SHOWCOMMAND = MAN_INFO_APPLICATION_ICONINDEX + 1,
  280. MAN_INFO_APPLICATION_HOTKEY = MAN_INFO_APPLICATION_SHOWCOMMAND + 1,
  281. MAN_INFO_APPLICATION_ASSEMBLYNAME = MAN_INFO_APPLICATION_HOTKEY + 1,
  282. MAN_INFO_APPLICATION_ASSEMBLYCLASS = MAN_INFO_APPLICATION_ASSEMBLYNAME + 1,
  283. MAN_INFO_APPLICATION_ASSEMBLYMETHOD = MAN_INFO_APPLICATION_ASSEMBLYCLASS + 1,
  284. MAN_INFO_APPLICATION_ASSEMBLYARGS = MAN_INFO_APPLICATION_ASSEMBLYMETHOD + 1,
  285. MAN_INFO_APPLICATION_MAX = MAN_INFO_APPLICATION_ASSEMBLYARGS + 1
  286. } ;
  287. enum __MIDL_IManifestInfo_0003
  288. { MAN_INFO_SUBSCRIPTION_SYNCHRONIZE_INTERVAL = 0,
  289. MAN_INFO_SUBSCRIPTION_INTERVAL_UNIT = MAN_INFO_SUBSCRIPTION_SYNCHRONIZE_INTERVAL + 1,
  290. MAN_INFO_SUBSCRIPTION_SYNCHRONIZE_EVENT = MAN_INFO_SUBSCRIPTION_INTERVAL_UNIT + 1,
  291. MAN_INFO_SUBSCRIPTION_EVENT_DEMAND_CONNECTION = MAN_INFO_SUBSCRIPTION_SYNCHRONIZE_EVENT + 1,
  292. MAN_INFO_SUBSCRIPTION_MAX = MAN_INFO_SUBSCRIPTION_EVENT_DEMAND_CONNECTION + 1
  293. } ;
  294. enum __MIDL_IManifestInfo_0004
  295. { MAN_INFO_DEPENDENT_ASM_CODEBASE = 0,
  296. MAN_INFO_DEPENDENT_ASM_TYPE = MAN_INFO_DEPENDENT_ASM_CODEBASE + 1,
  297. MAN_INFO_DEPENDENT_ASM_ID = MAN_INFO_DEPENDENT_ASM_TYPE + 1,
  298. MAN_INFO_DEPENDANT_ASM_MAX = MAN_INFO_DEPENDENT_ASM_ID + 1
  299. } ;
  300. enum __MIDL_IManifestInfo_0005
  301. { MAN_INFO_SOURCE_ASM_ID = 0,
  302. MAN_INFO_SOURCE_ASM_PATCH_UTIL = MAN_INFO_SOURCE_ASM_ID + 1,
  303. MAN_INFO_SOURCE_ASM_DIR = MAN_INFO_SOURCE_ASM_PATCH_UTIL + 1,
  304. MAN_INFO_SOURCE_ASM_INSTALL_DIR = MAN_INFO_SOURCE_ASM_DIR + 1,
  305. MAN_INFO_SOURCE_ASM_TEMP_DIR = MAN_INFO_SOURCE_ASM_INSTALL_DIR + 1,
  306. MAN_INFO_SOURCE_ASM_MAX = MAN_INFO_SOURCE_ASM_TEMP_DIR + 1
  307. } ;
  308. enum __MIDL_IManifestInfo_0006
  309. { MAN_INFO_PATCH_INFO_SOURCE = 0,
  310. MAN_INFO_PATCH_INFO_TARGET = MAN_INFO_PATCH_INFO_SOURCE + 1,
  311. MAN_INFO_PATCH_INFO_PATCH = MAN_INFO_PATCH_INFO_TARGET + 1,
  312. MAN_INFO_PATCH_INFO_MAX = MAN_INFO_PATCH_INFO_PATCH + 1
  313. } ;
  314. typedef /* [public] */
  315. enum __MIDL_IManifestInfo_0007
  316. { MAN_INFO_FILE = 0,
  317. MAN_INFO_APPLICATION = MAN_INFO_FILE + 1,
  318. MAN_INFO_SUBSCRIPTION = MAN_INFO_APPLICATION + 1,
  319. MAN_INFO_DEPENDTANT_ASM = MAN_INFO_SUBSCRIPTION + 1,
  320. MAN_INFO_SOURCE_ASM = MAN_INFO_DEPENDTANT_ASM + 1,
  321. MAN_INFO_PATCH_INFO = MAN_INFO_SOURCE_ASM + 1,
  322. MAN_INFO_MAX = MAN_INFO_PATCH_INFO + 1
  323. } MAN_INFO;
  324. typedef /* [public] */
  325. enum __MIDL_IManifestInfo_0008
  326. { MAN_INFO_FLAG_UNDEF = 0,
  327. MAN_INFO_FLAG_IUNKNOWN_PTR = MAN_INFO_FLAG_UNDEF + 1,
  328. MAN_INFO_FLAG_LPWSTR = MAN_INFO_FLAG_IUNKNOWN_PTR + 1,
  329. MAN_INFO_FLAG_DWORD = MAN_INFO_FLAG_LPWSTR + 1,
  330. MAN_INFO_FLAG_ENUM = MAN_INFO_FLAG_DWORD + 1,
  331. MAN_INFO_FLAG_BOOL = MAN_INFO_FLAG_ENUM + 1,
  332. MAN_INFO_FLAG_MAX = MAN_INFO_FLAG_BOOL + 1
  333. } MAN_INFO_FLAGS;
  334. enum __MIDL_IManifestInfo_0009
  335. { MAX_MAN_INFO_PROPERTIES = MAN_INFO_APPLICATION_MAX
  336. } ;
  337. EXTERN_C const IID IID_IManifestInfo;
  338. #if defined(__cplusplus) && !defined(CINTERFACE)
  339. MIDL_INTERFACE("b9309cc3-e522-4d58-b5c7-dee5b1763114")
  340. IManifestInfo : public IUnknown
  341. {
  342. public:
  343. virtual HRESULT STDMETHODCALLTYPE Set(
  344. /* [in] */ DWORD PropertyId,
  345. /* [in] */ LPVOID pvProperty,
  346. /* [in] */ DWORD cbProperty,
  347. /* [in] */ DWORD type) = 0;
  348. virtual HRESULT STDMETHODCALLTYPE Get(
  349. /* [in] */ DWORD dwPropertyId,
  350. /* [out] */ LPVOID *pvProperty,
  351. /* [out] */ DWORD *pcbProperty,
  352. /* [out] */ DWORD *pType) = 0;
  353. virtual HRESULT STDMETHODCALLTYPE IsEqual(
  354. /* [in] */ IManifestInfo *pManifestInfo) = 0;
  355. virtual HRESULT STDMETHODCALLTYPE GetType(
  356. /* [out] */ DWORD *pdwType) = 0;
  357. };
  358. #else /* C style interface */
  359. typedef struct IManifestInfoVtbl
  360. {
  361. BEGIN_INTERFACE
  362. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  363. IManifestInfo * This,
  364. /* [in] */ REFIID riid,
  365. /* [iid_is][out] */ void **ppvObject);
  366. ULONG ( STDMETHODCALLTYPE *AddRef )(
  367. IManifestInfo * This);
  368. ULONG ( STDMETHODCALLTYPE *Release )(
  369. IManifestInfo * This);
  370. HRESULT ( STDMETHODCALLTYPE *Set )(
  371. IManifestInfo * This,
  372. /* [in] */ DWORD PropertyId,
  373. /* [in] */ LPVOID pvProperty,
  374. /* [in] */ DWORD cbProperty,
  375. /* [in] */ DWORD type);
  376. HRESULT ( STDMETHODCALLTYPE *Get )(
  377. IManifestInfo * This,
  378. /* [in] */ DWORD dwPropertyId,
  379. /* [out] */ LPVOID *pvProperty,
  380. /* [out] */ DWORD *pcbProperty,
  381. /* [out] */ DWORD *pType);
  382. HRESULT ( STDMETHODCALLTYPE *IsEqual )(
  383. IManifestInfo * This,
  384. /* [in] */ IManifestInfo *pManifestInfo);
  385. HRESULT ( STDMETHODCALLTYPE *GetType )(
  386. IManifestInfo * This,
  387. /* [out] */ DWORD *pdwType);
  388. END_INTERFACE
  389. } IManifestInfoVtbl;
  390. interface IManifestInfo
  391. {
  392. CONST_VTBL struct IManifestInfoVtbl *lpVtbl;
  393. };
  394. #ifdef COBJMACROS
  395. #define IManifestInfo_QueryInterface(This,riid,ppvObject) \
  396. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  397. #define IManifestInfo_AddRef(This) \
  398. (This)->lpVtbl -> AddRef(This)
  399. #define IManifestInfo_Release(This) \
  400. (This)->lpVtbl -> Release(This)
  401. #define IManifestInfo_Set(This,PropertyId,pvProperty,cbProperty,type) \
  402. (This)->lpVtbl -> Set(This,PropertyId,pvProperty,cbProperty,type)
  403. #define IManifestInfo_Get(This,dwPropertyId,pvProperty,pcbProperty,pType) \
  404. (This)->lpVtbl -> Get(This,dwPropertyId,pvProperty,pcbProperty,pType)
  405. #define IManifestInfo_IsEqual(This,pManifestInfo) \
  406. (This)->lpVtbl -> IsEqual(This,pManifestInfo)
  407. #define IManifestInfo_GetType(This,pdwType) \
  408. (This)->lpVtbl -> GetType(This,pdwType)
  409. #endif /* COBJMACROS */
  410. #endif /* C style interface */
  411. HRESULT STDMETHODCALLTYPE IManifestInfo_Set_Proxy(
  412. IManifestInfo * This,
  413. /* [in] */ DWORD PropertyId,
  414. /* [in] */ LPVOID pvProperty,
  415. /* [in] */ DWORD cbProperty,
  416. /* [in] */ DWORD type);
  417. void __RPC_STUB IManifestInfo_Set_Stub(
  418. IRpcStubBuffer *This,
  419. IRpcChannelBuffer *_pRpcChannelBuffer,
  420. PRPC_MESSAGE _pRpcMessage,
  421. DWORD *_pdwStubPhase);
  422. HRESULT STDMETHODCALLTYPE IManifestInfo_Get_Proxy(
  423. IManifestInfo * This,
  424. /* [in] */ DWORD dwPropertyId,
  425. /* [out] */ LPVOID *pvProperty,
  426. /* [out] */ DWORD *pcbProperty,
  427. /* [out] */ DWORD *pType);
  428. void __RPC_STUB IManifestInfo_Get_Stub(
  429. IRpcStubBuffer *This,
  430. IRpcChannelBuffer *_pRpcChannelBuffer,
  431. PRPC_MESSAGE _pRpcMessage,
  432. DWORD *_pdwStubPhase);
  433. HRESULT STDMETHODCALLTYPE IManifestInfo_IsEqual_Proxy(
  434. IManifestInfo * This,
  435. /* [in] */ IManifestInfo *pManifestInfo);
  436. void __RPC_STUB IManifestInfo_IsEqual_Stub(
  437. IRpcStubBuffer *This,
  438. IRpcChannelBuffer *_pRpcChannelBuffer,
  439. PRPC_MESSAGE _pRpcMessage,
  440. DWORD *_pdwStubPhase);
  441. HRESULT STDMETHODCALLTYPE IManifestInfo_GetType_Proxy(
  442. IManifestInfo * This,
  443. /* [out] */ DWORD *pdwType);
  444. void __RPC_STUB IManifestInfo_GetType_Stub(
  445. IRpcStubBuffer *This,
  446. IRpcChannelBuffer *_pRpcChannelBuffer,
  447. PRPC_MESSAGE _pRpcMessage,
  448. DWORD *_pdwStubPhase);
  449. #endif /* __IManifestInfo_INTERFACE_DEFINED__ */
  450. #ifndef __IManifestData_INTERFACE_DEFINED__
  451. #define __IManifestData_INTERFACE_DEFINED__
  452. /* interface IManifestData */
  453. /* [unique][uuid][object][local] */
  454. typedef /* [unique] */ IManifestData *LPMANIFEST_DATA;
  455. typedef /* [public] */
  456. enum __MIDL_IManifestData_0001
  457. { MAN_DATA_TYPE_UNDEF = 0,
  458. MAN_DATA_TYPE_LPWSTR = MAN_DATA_TYPE_UNDEF + 1,
  459. MAN_DATA_TYPE_DWORD = MAN_DATA_TYPE_LPWSTR + 1,
  460. MAN_DATA_TYPE_ENUM = MAN_DATA_TYPE_DWORD + 1,
  461. MAN_DATA_TYPE_BOOL = MAN_DATA_TYPE_ENUM + 1,
  462. MAN_DATA_TYPE_IUNKNOWN_PTR = MAN_DATA_TYPE_BOOL + 1,
  463. MAN_DATA_TYPE_MAX = MAN_DATA_TYPE_IUNKNOWN_PTR + 1
  464. } MAN_DATA_TYPES;
  465. EXTERN_C const IID IID_IManifestData;
  466. #if defined(__cplusplus) && !defined(CINTERFACE)
  467. MIDL_INTERFACE("8a423759-b438-4fdd-92cd-e09fed4830ef")
  468. IManifestData : public IUnknown
  469. {
  470. public:
  471. virtual HRESULT STDMETHODCALLTYPE Set(
  472. /* [in] */ LPCWSTR pwzPropertyId,
  473. /* [in] */ LPVOID pvProperty,
  474. /* [in] */ DWORD cbProperty,
  475. /* [in] */ DWORD dwType) = 0;
  476. virtual HRESULT STDMETHODCALLTYPE Get(
  477. /* [in] */ LPCWSTR pwzPropertyId,
  478. /* [out] */ LPVOID *ppvProperty,
  479. /* [out] */ DWORD *pcbProperty,
  480. /* [out] */ DWORD *pdwType) = 0;
  481. virtual HRESULT STDMETHODCALLTYPE GetType(
  482. /* [out] */ LPWSTR *ppwzType) = 0;
  483. };
  484. #else /* C style interface */
  485. typedef struct IManifestDataVtbl
  486. {
  487. BEGIN_INTERFACE
  488. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  489. IManifestData * This,
  490. /* [in] */ REFIID riid,
  491. /* [iid_is][out] */ void **ppvObject);
  492. ULONG ( STDMETHODCALLTYPE *AddRef )(
  493. IManifestData * This);
  494. ULONG ( STDMETHODCALLTYPE *Release )(
  495. IManifestData * This);
  496. HRESULT ( STDMETHODCALLTYPE *Set )(
  497. IManifestData * This,
  498. /* [in] */ LPCWSTR pwzPropertyId,
  499. /* [in] */ LPVOID pvProperty,
  500. /* [in] */ DWORD cbProperty,
  501. /* [in] */ DWORD dwType);
  502. HRESULT ( STDMETHODCALLTYPE *Get )(
  503. IManifestData * This,
  504. /* [in] */ LPCWSTR pwzPropertyId,
  505. /* [out] */ LPVOID *ppvProperty,
  506. /* [out] */ DWORD *pcbProperty,
  507. /* [out] */ DWORD *pdwType);
  508. HRESULT ( STDMETHODCALLTYPE *GetType )(
  509. IManifestData * This,
  510. /* [out] */ LPWSTR *ppwzType);
  511. END_INTERFACE
  512. } IManifestDataVtbl;
  513. interface IManifestData
  514. {
  515. CONST_VTBL struct IManifestDataVtbl *lpVtbl;
  516. };
  517. #ifdef COBJMACROS
  518. #define IManifestData_QueryInterface(This,riid,ppvObject) \
  519. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  520. #define IManifestData_AddRef(This) \
  521. (This)->lpVtbl -> AddRef(This)
  522. #define IManifestData_Release(This) \
  523. (This)->lpVtbl -> Release(This)
  524. #define IManifestData_Set(This,pwzPropertyId,pvProperty,cbProperty,dwType) \
  525. (This)->lpVtbl -> Set(This,pwzPropertyId,pvProperty,cbProperty,dwType)
  526. #define IManifestData_Get(This,pwzPropertyId,ppvProperty,pcbProperty,pdwType) \
  527. (This)->lpVtbl -> Get(This,pwzPropertyId,ppvProperty,pcbProperty,pdwType)
  528. #define IManifestData_GetType(This,ppwzType) \
  529. (This)->lpVtbl -> GetType(This,ppwzType)
  530. #endif /* COBJMACROS */
  531. #endif /* C style interface */
  532. HRESULT STDMETHODCALLTYPE IManifestData_Set_Proxy(
  533. IManifestData * This,
  534. /* [in] */ LPCWSTR pwzPropertyId,
  535. /* [in] */ LPVOID pvProperty,
  536. /* [in] */ DWORD cbProperty,
  537. /* [in] */ DWORD dwType);
  538. void __RPC_STUB IManifestData_Set_Stub(
  539. IRpcStubBuffer *This,
  540. IRpcChannelBuffer *_pRpcChannelBuffer,
  541. PRPC_MESSAGE _pRpcMessage,
  542. DWORD *_pdwStubPhase);
  543. HRESULT STDMETHODCALLTYPE IManifestData_Get_Proxy(
  544. IManifestData * This,
  545. /* [in] */ LPCWSTR pwzPropertyId,
  546. /* [out] */ LPVOID *ppvProperty,
  547. /* [out] */ DWORD *pcbProperty,
  548. /* [out] */ DWORD *pdwType);
  549. void __RPC_STUB IManifestData_Get_Stub(
  550. IRpcStubBuffer *This,
  551. IRpcChannelBuffer *_pRpcChannelBuffer,
  552. PRPC_MESSAGE _pRpcMessage,
  553. DWORD *_pdwStubPhase);
  554. HRESULT STDMETHODCALLTYPE IManifestData_GetType_Proxy(
  555. IManifestData * This,
  556. /* [out] */ LPWSTR *ppwzType);
  557. void __RPC_STUB IManifestData_GetType_Stub(
  558. IRpcStubBuffer *This,
  559. IRpcChannelBuffer *_pRpcChannelBuffer,
  560. PRPC_MESSAGE _pRpcMessage,
  561. DWORD *_pdwStubPhase);
  562. #endif /* __IManifestData_INTERFACE_DEFINED__ */
  563. #ifndef __IPatchingUtil_INTERFACE_DEFINED__
  564. #define __IPatchingUtil_INTERFACE_DEFINED__
  565. /* interface IPatchingUtil */
  566. /* [unique][uuid][object][local] */
  567. typedef /* [unique] */ IPatchingUtil *LPPATCHING_INTERFACE;
  568. EXTERN_C const IID IID_IPatchingUtil;
  569. #if defined(__cplusplus) && !defined(CINTERFACE)
  570. MIDL_INTERFACE("e460c1ba-e601-48e4-a926-fea8033ab199")
  571. IPatchingUtil : public IUnknown
  572. {
  573. public:
  574. virtual HRESULT STDMETHODCALLTYPE MatchTarget(
  575. /* [in] */ LPWSTR pwzTarget,
  576. /* [out] */ IManifestInfo **ppPatchInfo) = 0;
  577. virtual HRESULT STDMETHODCALLTYPE MatchPatch(
  578. /* [in] */ LPWSTR pwzPatch,
  579. /* [out] */ IManifestInfo **ppPatchInfo) = 0;
  580. };
  581. #else /* C style interface */
  582. typedef struct IPatchingUtilVtbl
  583. {
  584. BEGIN_INTERFACE
  585. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  586. IPatchingUtil * This,
  587. /* [in] */ REFIID riid,
  588. /* [iid_is][out] */ void **ppvObject);
  589. ULONG ( STDMETHODCALLTYPE *AddRef )(
  590. IPatchingUtil * This);
  591. ULONG ( STDMETHODCALLTYPE *Release )(
  592. IPatchingUtil * This);
  593. HRESULT ( STDMETHODCALLTYPE *MatchTarget )(
  594. IPatchingUtil * This,
  595. /* [in] */ LPWSTR pwzTarget,
  596. /* [out] */ IManifestInfo **ppPatchInfo);
  597. HRESULT ( STDMETHODCALLTYPE *MatchPatch )(
  598. IPatchingUtil * This,
  599. /* [in] */ LPWSTR pwzPatch,
  600. /* [out] */ IManifestInfo **ppPatchInfo);
  601. END_INTERFACE
  602. } IPatchingUtilVtbl;
  603. interface IPatchingUtil
  604. {
  605. CONST_VTBL struct IPatchingUtilVtbl *lpVtbl;
  606. };
  607. #ifdef COBJMACROS
  608. #define IPatchingUtil_QueryInterface(This,riid,ppvObject) \
  609. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  610. #define IPatchingUtil_AddRef(This) \
  611. (This)->lpVtbl -> AddRef(This)
  612. #define IPatchingUtil_Release(This) \
  613. (This)->lpVtbl -> Release(This)
  614. #define IPatchingUtil_MatchTarget(This,pwzTarget,ppPatchInfo) \
  615. (This)->lpVtbl -> MatchTarget(This,pwzTarget,ppPatchInfo)
  616. #define IPatchingUtil_MatchPatch(This,pwzPatch,ppPatchInfo) \
  617. (This)->lpVtbl -> MatchPatch(This,pwzPatch,ppPatchInfo)
  618. #endif /* COBJMACROS */
  619. #endif /* C style interface */
  620. HRESULT STDMETHODCALLTYPE IPatchingUtil_MatchTarget_Proxy(
  621. IPatchingUtil * This,
  622. /* [in] */ LPWSTR pwzTarget,
  623. /* [out] */ IManifestInfo **ppPatchInfo);
  624. void __RPC_STUB IPatchingUtil_MatchTarget_Stub(
  625. IRpcStubBuffer *This,
  626. IRpcChannelBuffer *_pRpcChannelBuffer,
  627. PRPC_MESSAGE _pRpcMessage,
  628. DWORD *_pdwStubPhase);
  629. HRESULT STDMETHODCALLTYPE IPatchingUtil_MatchPatch_Proxy(
  630. IPatchingUtil * This,
  631. /* [in] */ LPWSTR pwzPatch,
  632. /* [out] */ IManifestInfo **ppPatchInfo);
  633. void __RPC_STUB IPatchingUtil_MatchPatch_Stub(
  634. IRpcStubBuffer *This,
  635. IRpcChannelBuffer *_pRpcChannelBuffer,
  636. PRPC_MESSAGE _pRpcMessage,
  637. DWORD *_pdwStubPhase);
  638. #endif /* __IPatchingUtil_INTERFACE_DEFINED__ */
  639. #ifndef __IAssemblyManifestImport_INTERFACE_DEFINED__
  640. #define __IAssemblyManifestImport_INTERFACE_DEFINED__
  641. /* interface IAssemblyManifestImport */
  642. /* [unique][uuid][object][local] */
  643. typedef /* [unique] */ IAssemblyManifestImport *LPASSEMBLY_MANIFEST_IMPORT;
  644. typedef /* [public] */
  645. enum __MIDL_IAssemblyManifestImport_0001
  646. { MANIFEST_TYPE_UNKNOWN = 0,
  647. MANIFEST_TYPE_DESKTOP = MANIFEST_TYPE_UNKNOWN + 1,
  648. MANIFEST_TYPE_SUBSCRIPTION = MANIFEST_TYPE_DESKTOP + 1,
  649. MANIFEST_TYPE_APPLICATION = MANIFEST_TYPE_SUBSCRIPTION + 1,
  650. MANIFEST_TYPE_COMPONENT = MANIFEST_TYPE_APPLICATION + 1,
  651. MANIFEST_TYPE_MAX = MANIFEST_TYPE_COMPONENT + 1
  652. } MANIFEST_TYPE;
  653. typedef /* [public] */
  654. enum __MIDL_IAssemblyManifestImport_0002
  655. { DEPENDENT_ASM_INSTALL_TYPE_NORMAL = 0,
  656. DEPENDENT_ASM_INSTALL_TYPE_REQUIRED = DEPENDENT_ASM_INSTALL_TYPE_NORMAL + 1,
  657. DEPENDENT_ASM_INSTALL_TYPE_MAX = DEPENDENT_ASM_INSTALL_TYPE_REQUIRED + 1
  658. } DEPENDENT_ASM_INSTALL_TYPE;
  659. typedef /* [public] */
  660. enum __MIDL_IAssemblyManifestImport_0003
  661. { SUBSCRIPTION_INTERVAL_UNIT_HOURS = 0,
  662. SUBSCRIPTION_INTERVAL_UNIT_MINUTES = SUBSCRIPTION_INTERVAL_UNIT_HOURS + 1,
  663. SUBSCRIPTION_INTERVAL_UNIT_DAYS = SUBSCRIPTION_INTERVAL_UNIT_MINUTES + 1,
  664. SUBSCRIPTION_INTERVAL_UNIT_MAX = SUBSCRIPTION_INTERVAL_UNIT_DAYS + 1
  665. } SUBSCRIPTION_INTERVAL_UNIT;
  666. typedef /* [public] */
  667. enum __MIDL_IAssemblyManifestImport_0004
  668. { SUBSCRIPTION_SYNC_EVENT_NONE = 0,
  669. SUBSCRIPTION_SYNC_EVENT_ON_APP_STARTUP = SUBSCRIPTION_SYNC_EVENT_NONE + 1,
  670. SUBSCRIPTION_SYNC_EVENT_MAX = SUBSCRIPTION_SYNC_EVENT_ON_APP_STARTUP + 1
  671. } SUBSCRIPTION_SYNC_EVENT;
  672. EXTERN_C const IID IID_IAssemblyManifestImport;
  673. #if defined(__cplusplus) && !defined(CINTERFACE)
  674. MIDL_INTERFACE("696fb37f-da64-4175-94e7-fdc8234539c4")
  675. IAssemblyManifestImport : public IUnknown
  676. {
  677. public:
  678. virtual HRESULT STDMETHODCALLTYPE GetAssemblyIdentity(
  679. /* [out] */ IAssemblyIdentity **ppAssemblyId) = 0;
  680. virtual HRESULT STDMETHODCALLTYPE GetManifestApplicationInfo(
  681. /* [out] */ IManifestInfo **ppAppInfo) = 0;
  682. virtual HRESULT STDMETHODCALLTYPE GetSubscriptionInfo(
  683. /* [out] */ IManifestInfo **ppSubsInfo) = 0;
  684. virtual HRESULT STDMETHODCALLTYPE GetNextPlatform(
  685. /* [in] */ DWORD nIndex,
  686. /* [out] */ IManifestData **ppPlatformInfo) = 0;
  687. virtual HRESULT STDMETHODCALLTYPE GetNextFile(
  688. /* [in] */ DWORD nIndex,
  689. /* [out] */ IManifestInfo **ppAssemblyFile) = 0;
  690. virtual HRESULT STDMETHODCALLTYPE QueryFile(
  691. /* [in] */ LPCOLESTR pwzFileName,
  692. /* [out] */ IManifestInfo **ppAssemblyFile) = 0;
  693. virtual HRESULT STDMETHODCALLTYPE GetNextAssembly(
  694. /* [in] */ DWORD nIndex,
  695. /* [out] */ IManifestInfo **ppDependAsm) = 0;
  696. virtual HRESULT STDMETHODCALLTYPE ReportManifestType(
  697. /* [out] */ DWORD *pdwType) = 0;
  698. };
  699. #else /* C style interface */
  700. typedef struct IAssemblyManifestImportVtbl
  701. {
  702. BEGIN_INTERFACE
  703. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  704. IAssemblyManifestImport * This,
  705. /* [in] */ REFIID riid,
  706. /* [iid_is][out] */ void **ppvObject);
  707. ULONG ( STDMETHODCALLTYPE *AddRef )(
  708. IAssemblyManifestImport * This);
  709. ULONG ( STDMETHODCALLTYPE *Release )(
  710. IAssemblyManifestImport * This);
  711. HRESULT ( STDMETHODCALLTYPE *GetAssemblyIdentity )(
  712. IAssemblyManifestImport * This,
  713. /* [out] */ IAssemblyIdentity **ppAssemblyId);
  714. HRESULT ( STDMETHODCALLTYPE *GetManifestApplicationInfo )(
  715. IAssemblyManifestImport * This,
  716. /* [out] */ IManifestInfo **ppAppInfo);
  717. HRESULT ( STDMETHODCALLTYPE *GetSubscriptionInfo )(
  718. IAssemblyManifestImport * This,
  719. /* [out] */ IManifestInfo **ppSubsInfo);
  720. HRESULT ( STDMETHODCALLTYPE *GetNextPlatform )(
  721. IAssemblyManifestImport * This,
  722. /* [in] */ DWORD nIndex,
  723. /* [out] */ IManifestData **ppPlatformInfo);
  724. HRESULT ( STDMETHODCALLTYPE *GetNextFile )(
  725. IAssemblyManifestImport * This,
  726. /* [in] */ DWORD nIndex,
  727. /* [out] */ IManifestInfo **ppAssemblyFile);
  728. HRESULT ( STDMETHODCALLTYPE *QueryFile )(
  729. IAssemblyManifestImport * This,
  730. /* [in] */ LPCOLESTR pwzFileName,
  731. /* [out] */ IManifestInfo **ppAssemblyFile);
  732. HRESULT ( STDMETHODCALLTYPE *GetNextAssembly )(
  733. IAssemblyManifestImport * This,
  734. /* [in] */ DWORD nIndex,
  735. /* [out] */ IManifestInfo **ppDependAsm);
  736. HRESULT ( STDMETHODCALLTYPE *ReportManifestType )(
  737. IAssemblyManifestImport * This,
  738. /* [out] */ DWORD *pdwType);
  739. END_INTERFACE
  740. } IAssemblyManifestImportVtbl;
  741. interface IAssemblyManifestImport
  742. {
  743. CONST_VTBL struct IAssemblyManifestImportVtbl *lpVtbl;
  744. };
  745. #ifdef COBJMACROS
  746. #define IAssemblyManifestImport_QueryInterface(This,riid,ppvObject) \
  747. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  748. #define IAssemblyManifestImport_AddRef(This) \
  749. (This)->lpVtbl -> AddRef(This)
  750. #define IAssemblyManifestImport_Release(This) \
  751. (This)->lpVtbl -> Release(This)
  752. #define IAssemblyManifestImport_GetAssemblyIdentity(This,ppAssemblyId) \
  753. (This)->lpVtbl -> GetAssemblyIdentity(This,ppAssemblyId)
  754. #define IAssemblyManifestImport_GetManifestApplicationInfo(This,ppAppInfo) \
  755. (This)->lpVtbl -> GetManifestApplicationInfo(This,ppAppInfo)
  756. #define IAssemblyManifestImport_GetSubscriptionInfo(This,ppSubsInfo) \
  757. (This)->lpVtbl -> GetSubscriptionInfo(This,ppSubsInfo)
  758. #define IAssemblyManifestImport_GetNextPlatform(This,nIndex,ppPlatformInfo) \
  759. (This)->lpVtbl -> GetNextPlatform(This,nIndex,ppPlatformInfo)
  760. #define IAssemblyManifestImport_GetNextFile(This,nIndex,ppAssemblyFile) \
  761. (This)->lpVtbl -> GetNextFile(This,nIndex,ppAssemblyFile)
  762. #define IAssemblyManifestImport_QueryFile(This,pwzFileName,ppAssemblyFile) \
  763. (This)->lpVtbl -> QueryFile(This,pwzFileName,ppAssemblyFile)
  764. #define IAssemblyManifestImport_GetNextAssembly(This,nIndex,ppDependAsm) \
  765. (This)->lpVtbl -> GetNextAssembly(This,nIndex,ppDependAsm)
  766. #define IAssemblyManifestImport_ReportManifestType(This,pdwType) \
  767. (This)->lpVtbl -> ReportManifestType(This,pdwType)
  768. #endif /* COBJMACROS */
  769. #endif /* C style interface */
  770. HRESULT STDMETHODCALLTYPE IAssemblyManifestImport_GetAssemblyIdentity_Proxy(
  771. IAssemblyManifestImport * This,
  772. /* [out] */ IAssemblyIdentity **ppAssemblyId);
  773. void __RPC_STUB IAssemblyManifestImport_GetAssemblyIdentity_Stub(
  774. IRpcStubBuffer *This,
  775. IRpcChannelBuffer *_pRpcChannelBuffer,
  776. PRPC_MESSAGE _pRpcMessage,
  777. DWORD *_pdwStubPhase);
  778. HRESULT STDMETHODCALLTYPE IAssemblyManifestImport_GetManifestApplicationInfo_Proxy(
  779. IAssemblyManifestImport * This,
  780. /* [out] */ IManifestInfo **ppAppInfo);
  781. void __RPC_STUB IAssemblyManifestImport_GetManifestApplicationInfo_Stub(
  782. IRpcStubBuffer *This,
  783. IRpcChannelBuffer *_pRpcChannelBuffer,
  784. PRPC_MESSAGE _pRpcMessage,
  785. DWORD *_pdwStubPhase);
  786. HRESULT STDMETHODCALLTYPE IAssemblyManifestImport_GetSubscriptionInfo_Proxy(
  787. IAssemblyManifestImport * This,
  788. /* [out] */ IManifestInfo **ppSubsInfo);
  789. void __RPC_STUB IAssemblyManifestImport_GetSubscriptionInfo_Stub(
  790. IRpcStubBuffer *This,
  791. IRpcChannelBuffer *_pRpcChannelBuffer,
  792. PRPC_MESSAGE _pRpcMessage,
  793. DWORD *_pdwStubPhase);
  794. HRESULT STDMETHODCALLTYPE IAssemblyManifestImport_GetNextPlatform_Proxy(
  795. IAssemblyManifestImport * This,
  796. /* [in] */ DWORD nIndex,
  797. /* [out] */ IManifestData **ppPlatformInfo);
  798. void __RPC_STUB IAssemblyManifestImport_GetNextPlatform_Stub(
  799. IRpcStubBuffer *This,
  800. IRpcChannelBuffer *_pRpcChannelBuffer,
  801. PRPC_MESSAGE _pRpcMessage,
  802. DWORD *_pdwStubPhase);
  803. HRESULT STDMETHODCALLTYPE IAssemblyManifestImport_GetNextFile_Proxy(
  804. IAssemblyManifestImport * This,
  805. /* [in] */ DWORD nIndex,
  806. /* [out] */ IManifestInfo **ppAssemblyFile);
  807. void __RPC_STUB IAssemblyManifestImport_GetNextFile_Stub(
  808. IRpcStubBuffer *This,
  809. IRpcChannelBuffer *_pRpcChannelBuffer,
  810. PRPC_MESSAGE _pRpcMessage,
  811. DWORD *_pdwStubPhase);
  812. HRESULT STDMETHODCALLTYPE IAssemblyManifestImport_QueryFile_Proxy(
  813. IAssemblyManifestImport * This,
  814. /* [in] */ LPCOLESTR pwzFileName,
  815. /* [out] */ IManifestInfo **ppAssemblyFile);
  816. void __RPC_STUB IAssemblyManifestImport_QueryFile_Stub(
  817. IRpcStubBuffer *This,
  818. IRpcChannelBuffer *_pRpcChannelBuffer,
  819. PRPC_MESSAGE _pRpcMessage,
  820. DWORD *_pdwStubPhase);
  821. HRESULT STDMETHODCALLTYPE IAssemblyManifestImport_GetNextAssembly_Proxy(
  822. IAssemblyManifestImport * This,
  823. /* [in] */ DWORD nIndex,
  824. /* [out] */ IManifestInfo **ppDependAsm);
  825. void __RPC_STUB IAssemblyManifestImport_GetNextAssembly_Stub(
  826. IRpcStubBuffer *This,
  827. IRpcChannelBuffer *_pRpcChannelBuffer,
  828. PRPC_MESSAGE _pRpcMessage,
  829. DWORD *_pdwStubPhase);
  830. HRESULT STDMETHODCALLTYPE IAssemblyManifestImport_ReportManifestType_Proxy(
  831. IAssemblyManifestImport * This,
  832. /* [out] */ DWORD *pdwType);
  833. void __RPC_STUB IAssemblyManifestImport_ReportManifestType_Stub(
  834. IRpcStubBuffer *This,
  835. IRpcChannelBuffer *_pRpcChannelBuffer,
  836. PRPC_MESSAGE _pRpcMessage,
  837. DWORD *_pdwStubPhase);
  838. #endif /* __IAssemblyManifestImport_INTERFACE_DEFINED__ */
  839. #ifndef __IAssemblyManifestEmit_INTERFACE_DEFINED__
  840. #define __IAssemblyManifestEmit_INTERFACE_DEFINED__
  841. /* interface IAssemblyManifestEmit */
  842. /* [unique][uuid][object][local] */
  843. typedef /* [unique] */ IAssemblyManifestEmit *LPASSEMBLY_MANIFEST_EMIT;
  844. EXTERN_C const IID IID_IAssemblyManifestEmit;
  845. #if defined(__cplusplus) && !defined(CINTERFACE)
  846. MIDL_INTERFACE("f022ef5f-61dc-489b-b321-4d6f2b910890")
  847. IAssemblyManifestEmit : public IUnknown
  848. {
  849. public:
  850. virtual HRESULT STDMETHODCALLTYPE ImportManifestInfo(
  851. /* [in] */ LPASSEMBLY_MANIFEST_IMPORT pManImport) = 0;
  852. virtual HRESULT STDMETHODCALLTYPE SetDependencySubscription(
  853. /* [in] */ LPASSEMBLY_MANIFEST_IMPORT pManImport,
  854. /* [in] */ LPWSTR pwzManifestUrl) = 0;
  855. virtual HRESULT STDMETHODCALLTYPE Commit( void) = 0;
  856. };
  857. #else /* C style interface */
  858. typedef struct IAssemblyManifestEmitVtbl
  859. {
  860. BEGIN_INTERFACE
  861. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  862. IAssemblyManifestEmit * This,
  863. /* [in] */ REFIID riid,
  864. /* [iid_is][out] */ void **ppvObject);
  865. ULONG ( STDMETHODCALLTYPE *AddRef )(
  866. IAssemblyManifestEmit * This);
  867. ULONG ( STDMETHODCALLTYPE *Release )(
  868. IAssemblyManifestEmit * This);
  869. HRESULT ( STDMETHODCALLTYPE *ImportManifestInfo )(
  870. IAssemblyManifestEmit * This,
  871. /* [in] */ LPASSEMBLY_MANIFEST_IMPORT pManImport);
  872. HRESULT ( STDMETHODCALLTYPE *SetDependencySubscription )(
  873. IAssemblyManifestEmit * This,
  874. /* [in] */ LPASSEMBLY_MANIFEST_IMPORT pManImport,
  875. /* [in] */ LPWSTR pwzManifestUrl);
  876. HRESULT ( STDMETHODCALLTYPE *Commit )(
  877. IAssemblyManifestEmit * This);
  878. END_INTERFACE
  879. } IAssemblyManifestEmitVtbl;
  880. interface IAssemblyManifestEmit
  881. {
  882. CONST_VTBL struct IAssemblyManifestEmitVtbl *lpVtbl;
  883. };
  884. #ifdef COBJMACROS
  885. #define IAssemblyManifestEmit_QueryInterface(This,riid,ppvObject) \
  886. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  887. #define IAssemblyManifestEmit_AddRef(This) \
  888. (This)->lpVtbl -> AddRef(This)
  889. #define IAssemblyManifestEmit_Release(This) \
  890. (This)->lpVtbl -> Release(This)
  891. #define IAssemblyManifestEmit_ImportManifestInfo(This,pManImport) \
  892. (This)->lpVtbl -> ImportManifestInfo(This,pManImport)
  893. #define IAssemblyManifestEmit_SetDependencySubscription(This,pManImport,pwzManifestUrl) \
  894. (This)->lpVtbl -> SetDependencySubscription(This,pManImport,pwzManifestUrl)
  895. #define IAssemblyManifestEmit_Commit(This) \
  896. (This)->lpVtbl -> Commit(This)
  897. #endif /* COBJMACROS */
  898. #endif /* C style interface */
  899. HRESULT STDMETHODCALLTYPE IAssemblyManifestEmit_ImportManifestInfo_Proxy(
  900. IAssemblyManifestEmit * This,
  901. /* [in] */ LPASSEMBLY_MANIFEST_IMPORT pManImport);
  902. void __RPC_STUB IAssemblyManifestEmit_ImportManifestInfo_Stub(
  903. IRpcStubBuffer *This,
  904. IRpcChannelBuffer *_pRpcChannelBuffer,
  905. PRPC_MESSAGE _pRpcMessage,
  906. DWORD *_pdwStubPhase);
  907. HRESULT STDMETHODCALLTYPE IAssemblyManifestEmit_SetDependencySubscription_Proxy(
  908. IAssemblyManifestEmit * This,
  909. /* [in] */ LPASSEMBLY_MANIFEST_IMPORT pManImport,
  910. /* [in] */ LPWSTR pwzManifestUrl);
  911. void __RPC_STUB IAssemblyManifestEmit_SetDependencySubscription_Stub(
  912. IRpcStubBuffer *This,
  913. IRpcChannelBuffer *_pRpcChannelBuffer,
  914. PRPC_MESSAGE _pRpcMessage,
  915. DWORD *_pdwStubPhase);
  916. HRESULT STDMETHODCALLTYPE IAssemblyManifestEmit_Commit_Proxy(
  917. IAssemblyManifestEmit * This);
  918. void __RPC_STUB IAssemblyManifestEmit_Commit_Stub(
  919. IRpcStubBuffer *This,
  920. IRpcChannelBuffer *_pRpcChannelBuffer,
  921. PRPC_MESSAGE _pRpcMessage,
  922. DWORD *_pdwStubPhase);
  923. #endif /* __IAssemblyManifestEmit_INTERFACE_DEFINED__ */
  924. #ifndef __IAssemblyCacheImport_INTERFACE_DEFINED__
  925. #define __IAssemblyCacheImport_INTERFACE_DEFINED__
  926. /* interface IAssemblyCacheImport */
  927. /* [unique][uuid][object][local] */
  928. typedef /* [unique] */ IAssemblyCacheImport *LPASSEMBLY_CACHE_IMPORT;
  929. typedef /* [public] */
  930. enum __MIDL_IAssemblyCacheImport_0001
  931. { CACHEIMP_CREATE_NULL = 0,
  932. CACHEIMP_CREATE_RETRIEVE = CACHEIMP_CREATE_NULL + 1,
  933. CACHEIMP_CREATE_RETRIEVE_MAX = CACHEIMP_CREATE_RETRIEVE + 1,
  934. CACHEIMP_CREATE_RESOLVE_REF = CACHEIMP_CREATE_RETRIEVE_MAX + 1,
  935. CACHEIMP_CREATE_RESOLVE_REF_EX = CACHEIMP_CREATE_RESOLVE_REF + 1,
  936. CACHEIMP_CREATE_MAX = CACHEIMP_CREATE_RESOLVE_REF_EX + 1
  937. } CACHEIMP_CREATE_FLAGS;
  938. EXTERN_C const IID IID_IAssemblyCacheImport;
  939. #if defined(__cplusplus) && !defined(CINTERFACE)
  940. MIDL_INTERFACE("c920b164-33e0-4c61-b595-eca4cdb04f12")
  941. IAssemblyCacheImport : public IUnknown
  942. {
  943. public:
  944. virtual HRESULT STDMETHODCALLTYPE GetManifestImport(
  945. /* [out] */ IAssemblyManifestImport **ppManifestImport) = 0;
  946. virtual HRESULT STDMETHODCALLTYPE GetManifestFilePath(
  947. /* [out] */ LPOLESTR *ppwzFilePath,
  948. /* [out][in] */ LPDWORD pccFilePath) = 0;
  949. virtual HRESULT STDMETHODCALLTYPE GetManifestFileDir(
  950. /* [out] */ LPOLESTR *ppwzFileDir,
  951. /* [out][in] */ LPDWORD pccFileDir) = 0;
  952. virtual HRESULT STDMETHODCALLTYPE GetAssemblyIdentity(
  953. /* [out] */ IAssemblyIdentity **ppAssemblyId) = 0;
  954. virtual HRESULT STDMETHODCALLTYPE GetDisplayName(
  955. /* [out] */ LPOLESTR *ppwzDisplayName,
  956. /* [out][in] */ LPDWORD pccDisplayName) = 0;
  957. virtual HRESULT STDMETHODCALLTYPE FindExistMatching(
  958. /* [in] */ IManifestInfo *pAssemblyFileInfo,
  959. /* [out] */ LPOLESTR *ppwzPath) = 0;
  960. };
  961. #else /* C style interface */
  962. typedef struct IAssemblyCacheImportVtbl
  963. {
  964. BEGIN_INTERFACE
  965. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  966. IAssemblyCacheImport * This,
  967. /* [in] */ REFIID riid,
  968. /* [iid_is][out] */ void **ppvObject);
  969. ULONG ( STDMETHODCALLTYPE *AddRef )(
  970. IAssemblyCacheImport * This);
  971. ULONG ( STDMETHODCALLTYPE *Release )(
  972. IAssemblyCacheImport * This);
  973. HRESULT ( STDMETHODCALLTYPE *GetManifestImport )(
  974. IAssemblyCacheImport * This,
  975. /* [out] */ IAssemblyManifestImport **ppManifestImport);
  976. HRESULT ( STDMETHODCALLTYPE *GetManifestFilePath )(
  977. IAssemblyCacheImport * This,
  978. /* [out] */ LPOLESTR *ppwzFilePath,
  979. /* [out][in] */ LPDWORD pccFilePath);
  980. HRESULT ( STDMETHODCALLTYPE *GetManifestFileDir )(
  981. IAssemblyCacheImport * This,
  982. /* [out] */ LPOLESTR *ppwzFileDir,
  983. /* [out][in] */ LPDWORD pccFileDir);
  984. HRESULT ( STDMETHODCALLTYPE *GetAssemblyIdentity )(
  985. IAssemblyCacheImport * This,
  986. /* [out] */ IAssemblyIdentity **ppAssemblyId);
  987. HRESULT ( STDMETHODCALLTYPE *GetDisplayName )(
  988. IAssemblyCacheImport * This,
  989. /* [out] */ LPOLESTR *ppwzDisplayName,
  990. /* [out][in] */ LPDWORD pccDisplayName);
  991. HRESULT ( STDMETHODCALLTYPE *FindExistMatching )(
  992. IAssemblyCacheImport * This,
  993. /* [in] */ IManifestInfo *pAssemblyFileInfo,
  994. /* [out] */ LPOLESTR *ppwzPath);
  995. END_INTERFACE
  996. } IAssemblyCacheImportVtbl;
  997. interface IAssemblyCacheImport
  998. {
  999. CONST_VTBL struct IAssemblyCacheImportVtbl *lpVtbl;
  1000. };
  1001. #ifdef COBJMACROS
  1002. #define IAssemblyCacheImport_QueryInterface(This,riid,ppvObject) \
  1003. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1004. #define IAssemblyCacheImport_AddRef(This) \
  1005. (This)->lpVtbl -> AddRef(This)
  1006. #define IAssemblyCacheImport_Release(This) \
  1007. (This)->lpVtbl -> Release(This)
  1008. #define IAssemblyCacheImport_GetManifestImport(This,ppManifestImport) \
  1009. (This)->lpVtbl -> GetManifestImport(This,ppManifestImport)
  1010. #define IAssemblyCacheImport_GetManifestFilePath(This,ppwzFilePath,pccFilePath) \
  1011. (This)->lpVtbl -> GetManifestFilePath(This,ppwzFilePath,pccFilePath)
  1012. #define IAssemblyCacheImport_GetManifestFileDir(This,ppwzFileDir,pccFileDir) \
  1013. (This)->lpVtbl -> GetManifestFileDir(This,ppwzFileDir,pccFileDir)
  1014. #define IAssemblyCacheImport_GetAssemblyIdentity(This,ppAssemblyId) \
  1015. (This)->lpVtbl -> GetAssemblyIdentity(This,ppAssemblyId)
  1016. #define IAssemblyCacheImport_GetDisplayName(This,ppwzDisplayName,pccDisplayName) \
  1017. (This)->lpVtbl -> GetDisplayName(This,ppwzDisplayName,pccDisplayName)
  1018. #define IAssemblyCacheImport_FindExistMatching(This,pAssemblyFileInfo,ppwzPath) \
  1019. (This)->lpVtbl -> FindExistMatching(This,pAssemblyFileInfo,ppwzPath)
  1020. #endif /* COBJMACROS */
  1021. #endif /* C style interface */
  1022. HRESULT STDMETHODCALLTYPE IAssemblyCacheImport_GetManifestImport_Proxy(
  1023. IAssemblyCacheImport * This,
  1024. /* [out] */ IAssemblyManifestImport **ppManifestImport);
  1025. void __RPC_STUB IAssemblyCacheImport_GetManifestImport_Stub(
  1026. IRpcStubBuffer *This,
  1027. IRpcChannelBuffer *_pRpcChannelBuffer,
  1028. PRPC_MESSAGE _pRpcMessage,
  1029. DWORD *_pdwStubPhase);
  1030. HRESULT STDMETHODCALLTYPE IAssemblyCacheImport_GetManifestFilePath_Proxy(
  1031. IAssemblyCacheImport * This,
  1032. /* [out] */ LPOLESTR *ppwzFilePath,
  1033. /* [out][in] */ LPDWORD pccFilePath);
  1034. void __RPC_STUB IAssemblyCacheImport_GetManifestFilePath_Stub(
  1035. IRpcStubBuffer *This,
  1036. IRpcChannelBuffer *_pRpcChannelBuffer,
  1037. PRPC_MESSAGE _pRpcMessage,
  1038. DWORD *_pdwStubPhase);
  1039. HRESULT STDMETHODCALLTYPE IAssemblyCacheImport_GetManifestFileDir_Proxy(
  1040. IAssemblyCacheImport * This,
  1041. /* [out] */ LPOLESTR *ppwzFileDir,
  1042. /* [out][in] */ LPDWORD pccFileDir);
  1043. void __RPC_STUB IAssemblyCacheImport_GetManifestFileDir_Stub(
  1044. IRpcStubBuffer *This,
  1045. IRpcChannelBuffer *_pRpcChannelBuffer,
  1046. PRPC_MESSAGE _pRpcMessage,
  1047. DWORD *_pdwStubPhase);
  1048. HRESULT STDMETHODCALLTYPE IAssemblyCacheImport_GetAssemblyIdentity_Proxy(
  1049. IAssemblyCacheImport * This,
  1050. /* [out] */ IAssemblyIdentity **ppAssemblyId);
  1051. void __RPC_STUB IAssemblyCacheImport_GetAssemblyIdentity_Stub(
  1052. IRpcStubBuffer *This,
  1053. IRpcChannelBuffer *_pRpcChannelBuffer,
  1054. PRPC_MESSAGE _pRpcMessage,
  1055. DWORD *_pdwStubPhase);
  1056. HRESULT STDMETHODCALLTYPE IAssemblyCacheImport_GetDisplayName_Proxy(
  1057. IAssemblyCacheImport * This,
  1058. /* [out] */ LPOLESTR *ppwzDisplayName,
  1059. /* [out][in] */ LPDWORD pccDisplayName);
  1060. void __RPC_STUB IAssemblyCacheImport_GetDisplayName_Stub(
  1061. IRpcStubBuffer *This,
  1062. IRpcChannelBuffer *_pRpcChannelBuffer,
  1063. PRPC_MESSAGE _pRpcMessage,
  1064. DWORD *_pdwStubPhase);
  1065. HRESULT STDMETHODCALLTYPE IAssemblyCacheImport_FindExistMatching_Proxy(
  1066. IAssemblyCacheImport * This,
  1067. /* [in] */ IManifestInfo *pAssemblyFileInfo,
  1068. /* [out] */ LPOLESTR *ppwzPath);
  1069. void __RPC_STUB IAssemblyCacheImport_FindExistMatching_Stub(
  1070. IRpcStubBuffer *This,
  1071. IRpcChannelBuffer *_pRpcChannelBuffer,
  1072. PRPC_MESSAGE _pRpcMessage,
  1073. DWORD *_pdwStubPhase);
  1074. #endif /* __IAssemblyCacheImport_INTERFACE_DEFINED__ */
  1075. #ifndef __IAssemblyCacheEmit_INTERFACE_DEFINED__
  1076. #define __IAssemblyCacheEmit_INTERFACE_DEFINED__
  1077. /* interface IAssemblyCacheEmit */
  1078. /* [unique][uuid][object][local] */
  1079. typedef /* [unique] */ IAssemblyCacheEmit *LPASSEMBLY_CACHE_EMIT;
  1080. EXTERN_C const IID IID_IAssemblyCacheEmit;
  1081. #if defined(__cplusplus) && !defined(CINTERFACE)
  1082. MIDL_INTERFACE("83d6b9ac-eff9-45a3-8361-7c41df1f9f85")
  1083. IAssemblyCacheEmit : public IUnknown
  1084. {
  1085. public:
  1086. virtual HRESULT STDMETHODCALLTYPE GetManifestImport(
  1087. /* [out] */ IAssemblyManifestImport **ppManifestImport) = 0;
  1088. virtual HRESULT STDMETHODCALLTYPE GetManifestFilePath(
  1089. /* [out] */ LPOLESTR *ppwzFilePath,
  1090. /* [out][in] */ LPDWORD pccFilePath) = 0;
  1091. virtual HRESULT STDMETHODCALLTYPE GetManifestFileDir(
  1092. /* [out] */ LPOLESTR *ppwzFilePath,
  1093. /* [out][in] */ LPDWORD pccFilePath) = 0;
  1094. virtual HRESULT STDMETHODCALLTYPE GetDisplayName(
  1095. /* [out] */ LPOLESTR *ppwzDisplayName,
  1096. /* [out][in] */ LPDWORD pccDisplayName) = 0;
  1097. virtual HRESULT STDMETHODCALLTYPE GetAssemblyIdentity(
  1098. /* [out] */ IAssemblyIdentity **ppAssemblyId) = 0;
  1099. virtual HRESULT STDMETHODCALLTYPE CopyFile(
  1100. /* [in] */ LPOLESTR pwzSourceFilePath,
  1101. /* [in] */ LPOLESTR pwzFileName,
  1102. /* [in] */ DWORD dwFlags) = 0;
  1103. virtual HRESULT STDMETHODCALLTYPE Commit(
  1104. /* [in] */ DWORD dwFlags) = 0;
  1105. };
  1106. #else /* C style interface */
  1107. typedef struct IAssemblyCacheEmitVtbl
  1108. {
  1109. BEGIN_INTERFACE
  1110. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1111. IAssemblyCacheEmit * This,
  1112. /* [in] */ REFIID riid,
  1113. /* [iid_is][out] */ void **ppvObject);
  1114. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1115. IAssemblyCacheEmit * This);
  1116. ULONG ( STDMETHODCALLTYPE *Release )(
  1117. IAssemblyCacheEmit * This);
  1118. HRESULT ( STDMETHODCALLTYPE *GetManifestImport )(
  1119. IAssemblyCacheEmit * This,
  1120. /* [out] */ IAssemblyManifestImport **ppManifestImport);
  1121. HRESULT ( STDMETHODCALLTYPE *GetManifestFilePath )(
  1122. IAssemblyCacheEmit * This,
  1123. /* [out] */ LPOLESTR *ppwzFilePath,
  1124. /* [out][in] */ LPDWORD pccFilePath);
  1125. HRESULT ( STDMETHODCALLTYPE *GetManifestFileDir )(
  1126. IAssemblyCacheEmit * This,
  1127. /* [out] */ LPOLESTR *ppwzFilePath,
  1128. /* [out][in] */ LPDWORD pccFilePath);
  1129. HRESULT ( STDMETHODCALLTYPE *GetDisplayName )(
  1130. IAssemblyCacheEmit * This,
  1131. /* [out] */ LPOLESTR *ppwzDisplayName,
  1132. /* [out][in] */ LPDWORD pccDisplayName);
  1133. HRESULT ( STDMETHODCALLTYPE *GetAssemblyIdentity )(
  1134. IAssemblyCacheEmit * This,
  1135. /* [out] */ IAssemblyIdentity **ppAssemblyId);
  1136. HRESULT ( STDMETHODCALLTYPE *CopyFile )(
  1137. IAssemblyCacheEmit * This,
  1138. /* [in] */ LPOLESTR pwzSourceFilePath,
  1139. /* [in] */ LPOLESTR pwzFileName,
  1140. /* [in] */ DWORD dwFlags);
  1141. HRESULT ( STDMETHODCALLTYPE *Commit )(
  1142. IAssemblyCacheEmit * This,
  1143. /* [in] */ DWORD dwFlags);
  1144. END_INTERFACE
  1145. } IAssemblyCacheEmitVtbl;
  1146. interface IAssemblyCacheEmit
  1147. {
  1148. CONST_VTBL struct IAssemblyCacheEmitVtbl *lpVtbl;
  1149. };
  1150. #ifdef COBJMACROS
  1151. #define IAssemblyCacheEmit_QueryInterface(This,riid,ppvObject) \
  1152. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1153. #define IAssemblyCacheEmit_AddRef(This) \
  1154. (This)->lpVtbl -> AddRef(This)
  1155. #define IAssemblyCacheEmit_Release(This) \
  1156. (This)->lpVtbl -> Release(This)
  1157. #define IAssemblyCacheEmit_GetManifestImport(This,ppManifestImport) \
  1158. (This)->lpVtbl -> GetManifestImport(This,ppManifestImport)
  1159. #define IAssemblyCacheEmit_GetManifestFilePath(This,ppwzFilePath,pccFilePath) \
  1160. (This)->lpVtbl -> GetManifestFilePath(This,ppwzFilePath,pccFilePath)
  1161. #define IAssemblyCacheEmit_GetManifestFileDir(This,ppwzFilePath,pccFilePath) \
  1162. (This)->lpVtbl -> GetManifestFileDir(This,ppwzFilePath,pccFilePath)
  1163. #define IAssemblyCacheEmit_GetDisplayName(This,ppwzDisplayName,pccDisplayName) \
  1164. (This)->lpVtbl -> GetDisplayName(This,ppwzDisplayName,pccDisplayName)
  1165. #define IAssemblyCacheEmit_GetAssemblyIdentity(This,ppAssemblyId) \
  1166. (This)->lpVtbl -> GetAssemblyIdentity(This,ppAssemblyId)
  1167. #define IAssemblyCacheEmit_CopyFile(This,pwzSourceFilePath,pwzFileName,dwFlags) \
  1168. (This)->lpVtbl -> CopyFile(This,pwzSourceFilePath,pwzFileName,dwFlags)
  1169. #define IAssemblyCacheEmit_Commit(This,dwFlags) \
  1170. (This)->lpVtbl -> Commit(This,dwFlags)
  1171. #endif /* COBJMACROS */
  1172. #endif /* C style interface */
  1173. HRESULT STDMETHODCALLTYPE IAssemblyCacheEmit_GetManifestImport_Proxy(
  1174. IAssemblyCacheEmit * This,
  1175. /* [out] */ IAssemblyManifestImport **ppManifestImport);
  1176. void __RPC_STUB IAssemblyCacheEmit_GetManifestImport_Stub(
  1177. IRpcStubBuffer *This,
  1178. IRpcChannelBuffer *_pRpcChannelBuffer,
  1179. PRPC_MESSAGE _pRpcMessage,
  1180. DWORD *_pdwStubPhase);
  1181. HRESULT STDMETHODCALLTYPE IAssemblyCacheEmit_GetManifestFilePath_Proxy(
  1182. IAssemblyCacheEmit * This,
  1183. /* [out] */ LPOLESTR *ppwzFilePath,
  1184. /* [out][in] */ LPDWORD pccFilePath);
  1185. void __RPC_STUB IAssemblyCacheEmit_GetManifestFilePath_Stub(
  1186. IRpcStubBuffer *This,
  1187. IRpcChannelBuffer *_pRpcChannelBuffer,
  1188. PRPC_MESSAGE _pRpcMessage,
  1189. DWORD *_pdwStubPhase);
  1190. HRESULT STDMETHODCALLTYPE IAssemblyCacheEmit_GetManifestFileDir_Proxy(
  1191. IAssemblyCacheEmit * This,
  1192. /* [out] */ LPOLESTR *ppwzFilePath,
  1193. /* [out][in] */ LPDWORD pccFilePath);
  1194. void __RPC_STUB IAssemblyCacheEmit_GetManifestFileDir_Stub(
  1195. IRpcStubBuffer *This,
  1196. IRpcChannelBuffer *_pRpcChannelBuffer,
  1197. PRPC_MESSAGE _pRpcMessage,
  1198. DWORD *_pdwStubPhase);
  1199. HRESULT STDMETHODCALLTYPE IAssemblyCacheEmit_GetDisplayName_Proxy(
  1200. IAssemblyCacheEmit * This,
  1201. /* [out] */ LPOLESTR *ppwzDisplayName,
  1202. /* [out][in] */ LPDWORD pccDisplayName);
  1203. void __RPC_STUB IAssemblyCacheEmit_GetDisplayName_Stub(
  1204. IRpcStubBuffer *This,
  1205. IRpcChannelBuffer *_pRpcChannelBuffer,
  1206. PRPC_MESSAGE _pRpcMessage,
  1207. DWORD *_pdwStubPhase);
  1208. HRESULT STDMETHODCALLTYPE IAssemblyCacheEmit_GetAssemblyIdentity_Proxy(
  1209. IAssemblyCacheEmit * This,
  1210. /* [out] */ IAssemblyIdentity **ppAssemblyId);
  1211. void __RPC_STUB IAssemblyCacheEmit_GetAssemblyIdentity_Stub(
  1212. IRpcStubBuffer *This,
  1213. IRpcChannelBuffer *_pRpcChannelBuffer,
  1214. PRPC_MESSAGE _pRpcMessage,
  1215. DWORD *_pdwStubPhase);
  1216. HRESULT STDMETHODCALLTYPE IAssemblyCacheEmit_CopyFile_Proxy(
  1217. IAssemblyCacheEmit * This,
  1218. /* [in] */ LPOLESTR pwzSourceFilePath,
  1219. /* [in] */ LPOLESTR pwzFileName,
  1220. /* [in] */ DWORD dwFlags);
  1221. void __RPC_STUB IAssemblyCacheEmit_CopyFile_Stub(
  1222. IRpcStubBuffer *This,
  1223. IRpcChannelBuffer *_pRpcChannelBuffer,
  1224. PRPC_MESSAGE _pRpcMessage,
  1225. DWORD *_pdwStubPhase);
  1226. HRESULT STDMETHODCALLTYPE IAssemblyCacheEmit_Commit_Proxy(
  1227. IAssemblyCacheEmit * This,
  1228. /* [in] */ DWORD dwFlags);
  1229. void __RPC_STUB IAssemblyCacheEmit_Commit_Stub(
  1230. IRpcStubBuffer *This,
  1231. IRpcChannelBuffer *_pRpcChannelBuffer,
  1232. PRPC_MESSAGE _pRpcMessage,
  1233. DWORD *_pdwStubPhase);
  1234. #endif /* __IAssemblyCacheEmit_INTERFACE_DEFINED__ */
  1235. #ifndef __IAssemblyCacheEnum_INTERFACE_DEFINED__
  1236. #define __IAssemblyCacheEnum_INTERFACE_DEFINED__
  1237. /* interface IAssemblyCacheEnum */
  1238. /* [unique][uuid][object][local] */
  1239. typedef /* [unique] */ IAssemblyCacheEnum *LPASSEMBLY_CACHE_ENUM;
  1240. typedef /* [public] */
  1241. enum __MIDL_IAssemblyCacheEnum_0001
  1242. { CACHEENUM_RETRIEVE_ALL = 0,
  1243. CACHEENUM_RETRIEVE_VISIBLE = CACHEENUM_RETRIEVE_ALL + 1,
  1244. CACHEENUM_RETRIEVE_MAX = CACHEENUM_RETRIEVE_VISIBLE + 1
  1245. } CACHEENUM_RETRIEVE_FLAGS;
  1246. EXTERN_C const IID IID_IAssemblyCacheEnum;
  1247. #if defined(__cplusplus) && !defined(CINTERFACE)
  1248. MIDL_INTERFACE("48a5b677-f800-494f-b19b-795d30699385")
  1249. IAssemblyCacheEnum : public IUnknown
  1250. {
  1251. public:
  1252. virtual HRESULT STDMETHODCALLTYPE GetNext(
  1253. /* [out] */ IAssemblyCacheImport **ppAsmCache) = 0;
  1254. virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
  1255. virtual HRESULT STDMETHODCALLTYPE GetCount(
  1256. /* [out] */ LPDWORD pdwCount) = 0;
  1257. };
  1258. #else /* C style interface */
  1259. typedef struct IAssemblyCacheEnumVtbl
  1260. {
  1261. BEGIN_INTERFACE
  1262. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1263. IAssemblyCacheEnum * This,
  1264. /* [in] */ REFIID riid,
  1265. /* [iid_is][out] */ void **ppvObject);
  1266. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1267. IAssemblyCacheEnum * This);
  1268. ULONG ( STDMETHODCALLTYPE *Release )(
  1269. IAssemblyCacheEnum * This);
  1270. HRESULT ( STDMETHODCALLTYPE *GetNext )(
  1271. IAssemblyCacheEnum * This,
  1272. /* [out] */ IAssemblyCacheImport **ppAsmCache);
  1273. HRESULT ( STDMETHODCALLTYPE *Reset )(
  1274. IAssemblyCacheEnum * This);
  1275. HRESULT ( STDMETHODCALLTYPE *GetCount )(
  1276. IAssemblyCacheEnum * This,
  1277. /* [out] */ LPDWORD pdwCount);
  1278. END_INTERFACE
  1279. } IAssemblyCacheEnumVtbl;
  1280. interface IAssemblyCacheEnum
  1281. {
  1282. CONST_VTBL struct IAssemblyCacheEnumVtbl *lpVtbl;
  1283. };
  1284. #ifdef COBJMACROS
  1285. #define IAssemblyCacheEnum_QueryInterface(This,riid,ppvObject) \
  1286. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1287. #define IAssemblyCacheEnum_AddRef(This) \
  1288. (This)->lpVtbl -> AddRef(This)
  1289. #define IAssemblyCacheEnum_Release(This) \
  1290. (This)->lpVtbl -> Release(This)
  1291. #define IAssemblyCacheEnum_GetNext(This,ppAsmCache) \
  1292. (This)->lpVtbl -> GetNext(This,ppAsmCache)
  1293. #define IAssemblyCacheEnum_Reset(This) \
  1294. (This)->lpVtbl -> Reset(This)
  1295. #define IAssemblyCacheEnum_GetCount(This,pdwCount) \
  1296. (This)->lpVtbl -> GetCount(This,pdwCount)
  1297. #endif /* COBJMACROS */
  1298. #endif /* C style interface */
  1299. HRESULT STDMETHODCALLTYPE IAssemblyCacheEnum_GetNext_Proxy(
  1300. IAssemblyCacheEnum * This,
  1301. /* [out] */ IAssemblyCacheImport **ppAsmCache);
  1302. void __RPC_STUB IAssemblyCacheEnum_GetNext_Stub(
  1303. IRpcStubBuffer *This,
  1304. IRpcChannelBuffer *_pRpcChannelBuffer,
  1305. PRPC_MESSAGE _pRpcMessage,
  1306. DWORD *_pdwStubPhase);
  1307. HRESULT STDMETHODCALLTYPE IAssemblyCacheEnum_Reset_Proxy(
  1308. IAssemblyCacheEnum * This);
  1309. void __RPC_STUB IAssemblyCacheEnum_Reset_Stub(
  1310. IRpcStubBuffer *This,
  1311. IRpcChannelBuffer *_pRpcChannelBuffer,
  1312. PRPC_MESSAGE _pRpcMessage,
  1313. DWORD *_pdwStubPhase);
  1314. HRESULT STDMETHODCALLTYPE IAssemblyCacheEnum_GetCount_Proxy(
  1315. IAssemblyCacheEnum * This,
  1316. /* [out] */ LPDWORD pdwCount);
  1317. void __RPC_STUB IAssemblyCacheEnum_GetCount_Stub(
  1318. IRpcStubBuffer *This,
  1319. IRpcChannelBuffer *_pRpcChannelBuffer,
  1320. PRPC_MESSAGE _pRpcMessage,
  1321. DWORD *_pdwStubPhase);
  1322. #endif /* __IAssemblyCacheEnum_INTERFACE_DEFINED__ */
  1323. #ifndef __IAssemblyBindSink_INTERFACE_DEFINED__
  1324. #define __IAssemblyBindSink_INTERFACE_DEFINED__
  1325. /* interface IAssemblyBindSink */
  1326. /* [unique][uuid][object][local] */
  1327. typedef /* [unique] */ IAssemblyBindSink *LPASSEMBLY_BIND_SINK;
  1328. typedef /* [public] */
  1329. enum __MIDL_IAssemblyBindSink_0001
  1330. { ASM_NOTIFICATION_START = 0,
  1331. ASM_NOTIFICATION_PROGRESS = ASM_NOTIFICATION_START + 1,
  1332. ASM_NOTIFICATION_ABORT = ASM_NOTIFICATION_PROGRESS + 1,
  1333. ASM_NOTIFICATION_ERROR = ASM_NOTIFICATION_ABORT + 1,
  1334. ASM_NOTIFICATION_SUBSCRIPTION_MANIFEST = ASM_NOTIFICATION_ERROR + 1,
  1335. ASM_NOTIFICATION_APPLICATION_MANIFEST = ASM_NOTIFICATION_SUBSCRIPTION_MANIFEST + 1,
  1336. ASM_NOTIFICATION_DONE = ASM_NOTIFICATION_APPLICATION_MANIFEST + 1
  1337. } ASM_NOTIFICATION;
  1338. EXTERN_C const IID IID_IAssemblyBindSink;
  1339. #if defined(__cplusplus) && !defined(CINTERFACE)
  1340. MIDL_INTERFACE("af0bc960-0b9a-11d3-95ca-00a024a85b51")
  1341. IAssemblyBindSink : public IUnknown
  1342. {
  1343. public:
  1344. virtual HRESULT STDMETHODCALLTYPE OnProgress(
  1345. /* [in] */ DWORD dwNotification,
  1346. /* [in] */ HRESULT hrNotification,
  1347. /* [in] */ LPCWSTR szNotification,
  1348. /* [in] */ DWORD dwProgress,
  1349. /* [in] */ DWORD dwProgressMax,
  1350. /* [in] */ IUnknown *pUnk) = 0;
  1351. };
  1352. #else /* C style interface */
  1353. typedef struct IAssemblyBindSinkVtbl
  1354. {
  1355. BEGIN_INTERFACE
  1356. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1357. IAssemblyBindSink * This,
  1358. /* [in] */ REFIID riid,
  1359. /* [iid_is][out] */ void **ppvObject);
  1360. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1361. IAssemblyBindSink * This);
  1362. ULONG ( STDMETHODCALLTYPE *Release )(
  1363. IAssemblyBindSink * This);
  1364. HRESULT ( STDMETHODCALLTYPE *OnProgress )(
  1365. IAssemblyBindSink * This,
  1366. /* [in] */ DWORD dwNotification,
  1367. /* [in] */ HRESULT hrNotification,
  1368. /* [in] */ LPCWSTR szNotification,
  1369. /* [in] */ DWORD dwProgress,
  1370. /* [in] */ DWORD dwProgressMax,
  1371. /* [in] */ IUnknown *pUnk);
  1372. END_INTERFACE
  1373. } IAssemblyBindSinkVtbl;
  1374. interface IAssemblyBindSink
  1375. {
  1376. CONST_VTBL struct IAssemblyBindSinkVtbl *lpVtbl;
  1377. };
  1378. #ifdef COBJMACROS
  1379. #define IAssemblyBindSink_QueryInterface(This,riid,ppvObject) \
  1380. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1381. #define IAssemblyBindSink_AddRef(This) \
  1382. (This)->lpVtbl -> AddRef(This)
  1383. #define IAssemblyBindSink_Release(This) \
  1384. (This)->lpVtbl -> Release(This)
  1385. #define IAssemblyBindSink_OnProgress(This,dwNotification,hrNotification,szNotification,dwProgress,dwProgressMax,pUnk) \
  1386. (This)->lpVtbl -> OnProgress(This,dwNotification,hrNotification,szNotification,dwProgress,dwProgressMax,pUnk)
  1387. #endif /* COBJMACROS */
  1388. #endif /* C style interface */
  1389. HRESULT STDMETHODCALLTYPE IAssemblyBindSink_OnProgress_Proxy(
  1390. IAssemblyBindSink * This,
  1391. /* [in] */ DWORD dwNotification,
  1392. /* [in] */ HRESULT hrNotification,
  1393. /* [in] */ LPCWSTR szNotification,
  1394. /* [in] */ DWORD dwProgress,
  1395. /* [in] */ DWORD dwProgressMax,
  1396. /* [in] */ IUnknown *pUnk);
  1397. void __RPC_STUB IAssemblyBindSink_OnProgress_Stub(
  1398. IRpcStubBuffer *This,
  1399. IRpcChannelBuffer *_pRpcChannelBuffer,
  1400. PRPC_MESSAGE _pRpcMessage,
  1401. DWORD *_pdwStubPhase);
  1402. #endif /* __IAssemblyBindSink_INTERFACE_DEFINED__ */
  1403. #ifndef __IAssemblyDownload_INTERFACE_DEFINED__
  1404. #define __IAssemblyDownload_INTERFACE_DEFINED__
  1405. /* interface IAssemblyDownload */
  1406. /* [unique][uuid][object][local] */
  1407. typedef /* [unique] */ IAssemblyDownload *LPASSEMBLY_DOWNLOAD;
  1408. typedef /* [public] */
  1409. enum __MIDL_IAssemblyDownload_0001
  1410. { DOWNLOAD_FLAGS_NO_NOTIFICATION = 0,
  1411. DOWNLOAD_FLAGS_PROGRESS_UI = 0x1,
  1412. DOWNLOAD_FLAGS_NOTIFY_BINDSINK = 0x2
  1413. } ASM_DOWNLOAD;
  1414. EXTERN_C const IID IID_IAssemblyDownload;
  1415. #if defined(__cplusplus) && !defined(CINTERFACE)
  1416. MIDL_INTERFACE("8a249b36-6132-4238-8871-a267029382a8")
  1417. IAssemblyDownload : public IBackgroundCopyCallback
  1418. {
  1419. public:
  1420. virtual HRESULT STDMETHODCALLTYPE DownloadManifestAndDependencies(
  1421. /* [in] */ LPWSTR pwzApplicationManifestUrl,
  1422. /* [in] */ IAssemblyBindSink *pBindSink,
  1423. /* [in] */ DWORD dwFlags) = 0;
  1424. virtual HRESULT STDMETHODCALLTYPE CancelDownload( void) = 0;
  1425. };
  1426. #else /* C style interface */
  1427. typedef struct IAssemblyDownloadVtbl
  1428. {
  1429. BEGIN_INTERFACE
  1430. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1431. IAssemblyDownload * This,
  1432. /* [in] */ REFIID riid,
  1433. /* [iid_is][out] */ void **ppvObject);
  1434. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1435. IAssemblyDownload * This);
  1436. ULONG ( STDMETHODCALLTYPE *Release )(
  1437. IAssemblyDownload * This);
  1438. HRESULT ( STDMETHODCALLTYPE *JobTransferred )(
  1439. IAssemblyDownload * This,
  1440. /* [in] */ IBackgroundCopyJob *pJob);
  1441. HRESULT ( STDMETHODCALLTYPE *JobError )(
  1442. IAssemblyDownload * This,
  1443. /* [in] */ IBackgroundCopyJob *pJob,
  1444. /* [in] */ IBackgroundCopyError *pError);
  1445. HRESULT ( STDMETHODCALLTYPE *JobModification )(
  1446. IAssemblyDownload * This,
  1447. /* [in] */ IBackgroundCopyJob *pJob,
  1448. /* [in] */ DWORD dwReserved);
  1449. HRESULT ( STDMETHODCALLTYPE *DownloadManifestAndDependencies )(
  1450. IAssemblyDownload * This,
  1451. /* [in] */ LPWSTR pwzApplicationManifestUrl,
  1452. /* [in] */ IAssemblyBindSink *pBindSink,
  1453. /* [in] */ DWORD dwFlags);
  1454. HRESULT ( STDMETHODCALLTYPE *CancelDownload )(
  1455. IAssemblyDownload * This);
  1456. END_INTERFACE
  1457. } IAssemblyDownloadVtbl;
  1458. interface IAssemblyDownload
  1459. {
  1460. CONST_VTBL struct IAssemblyDownloadVtbl *lpVtbl;
  1461. };
  1462. #ifdef COBJMACROS
  1463. #define IAssemblyDownload_QueryInterface(This,riid,ppvObject) \
  1464. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1465. #define IAssemblyDownload_AddRef(This) \
  1466. (This)->lpVtbl -> AddRef(This)
  1467. #define IAssemblyDownload_Release(This) \
  1468. (This)->lpVtbl -> Release(This)
  1469. #define IAssemblyDownload_JobTransferred(This,pJob) \
  1470. (This)->lpVtbl -> JobTransferred(This,pJob)
  1471. #define IAssemblyDownload_JobError(This,pJob,pError) \
  1472. (This)->lpVtbl -> JobError(This,pJob,pError)
  1473. #define IAssemblyDownload_JobModification(This,pJob,dwReserved) \
  1474. (This)->lpVtbl -> JobModification(This,pJob,dwReserved)
  1475. #define IAssemblyDownload_DownloadManifestAndDependencies(This,pwzApplicationManifestUrl,pBindSink,dwFlags) \
  1476. (This)->lpVtbl -> DownloadManifestAndDependencies(This,pwzApplicationManifestUrl,pBindSink,dwFlags)
  1477. #define IAssemblyDownload_CancelDownload(This) \
  1478. (This)->lpVtbl -> CancelDownload(This)
  1479. #endif /* COBJMACROS */
  1480. #endif /* C style interface */
  1481. HRESULT STDMETHODCALLTYPE IAssemblyDownload_DownloadManifestAndDependencies_Proxy(
  1482. IAssemblyDownload * This,
  1483. /* [in] */ LPWSTR pwzApplicationManifestUrl,
  1484. /* [in] */ IAssemblyBindSink *pBindSink,
  1485. /* [in] */ DWORD dwFlags);
  1486. void __RPC_STUB IAssemblyDownload_DownloadManifestAndDependencies_Stub(
  1487. IRpcStubBuffer *This,
  1488. IRpcChannelBuffer *_pRpcChannelBuffer,
  1489. PRPC_MESSAGE _pRpcMessage,
  1490. DWORD *_pdwStubPhase);
  1491. HRESULT STDMETHODCALLTYPE IAssemblyDownload_CancelDownload_Proxy(
  1492. IAssemblyDownload * This);
  1493. void __RPC_STUB IAssemblyDownload_CancelDownload_Stub(
  1494. IRpcStubBuffer *This,
  1495. IRpcChannelBuffer *_pRpcChannelBuffer,
  1496. PRPC_MESSAGE _pRpcMessage,
  1497. DWORD *_pdwStubPhase);
  1498. #endif /* __IAssemblyDownload_INTERFACE_DEFINED__ */
  1499. /* interface __MIDL_itf_fusenet_0156 */
  1500. /* [local] */
  1501. typedef /* [public][public] */ struct __MIDL___MIDL_itf_fusenet_0156_0001
  1502. {
  1503. LPWSTR pwzName;
  1504. LPWSTR pwzURL;
  1505. } TPLATFORM_INFO;
  1506. typedef TPLATFORM_INFO *LPTPLATFORM_INFO;
  1507. STDAPI CheckPlatformRequirements(LPASSEMBLY_MANIFEST_IMPORT pManifestImport, LPDWORD pdwNumMissingPlatforms, LPTPLATFORM_INFO* pptPlatform);
  1508. STDAPI CheckPlatformRequirementsEx(LPASSEMBLY_MANIFEST_IMPORT pManifestImport, CDebugLog* pDbgLog, LPDWORD pdwNumMissingPlatforms, LPTPLATFORM_INFO* pptPlatform);
  1509. STDAPI CreateFusionAssemblyCacheEx (IAssemblyCache **ppFusionAsmCache);
  1510. STDAPI CreateAssemblyIdentity(LPASSEMBLY_IDENTITY *ppAssemblyId, DWORD dwFlags);
  1511. STDAPI CreateAssemblyIdentityEx(LPASSEMBLY_IDENTITY *ppAssemblyId, DWORD dwFlags, LPWSTR wzDisplayName);
  1512. STDAPI CloneAssemblyIdentity(LPASSEMBLY_IDENTITY pSrcAssemblyId, LPASSEMBLY_IDENTITY *ppDestAssemblyId);
  1513. STDAPI CreateAssemblyManifestImport(LPASSEMBLY_MANIFEST_IMPORT *ppAssemblyManifestImport, LPCOLESTR szPath, CDebugLog *pDbgLog, DWORD dwFlags);
  1514. STDAPI CreateAssemblyManifestEmit(LPASSEMBLY_MANIFEST_EMIT* ppEmit, LPCOLESTR pwzManifestFilePath, MANIFEST_TYPE eType);
  1515. STDAPI CreateAssemblyCacheImport(LPASSEMBLY_CACHE_IMPORT *ppAssemblyCacheImport, LPASSEMBLY_IDENTITY pAssemblyIdentity, DWORD dwFlags);
  1516. STDAPI CreateAssemblyCacheEmit(LPASSEMBLY_CACHE_EMIT *ppAssemblyCacheEmit, LPASSEMBLY_CACHE_EMIT pAssemblyCacheEmit, DWORD dwFlags);
  1517. STDAPI CreateAssemblyDownload(IAssemblyDownload** ppDownload, CDebugLog *pDbgLog, DWORD dwFlags);
  1518. STDAPI CreateManifestInfo(DWORD dwId, LPMANIFEST_INFO* ppManifestInfo);
  1519. STDAPI CreateManifestData(LPCWSTR pwzDataType, LPMANIFEST_DATA* ppManifestData);
  1520. STDAPI CreateAssemblyCacheEnum( LPASSEMBLY_CACHE_ENUM *ppAssemblyCacheEnum, LPASSEMBLY_IDENTITY pAssemblyIdentity, DWORD dwFlags);
  1521. extern RPC_IF_HANDLE __MIDL_itf_fusenet_0156_v0_0_c_ifspec;
  1522. extern RPC_IF_HANDLE __MIDL_itf_fusenet_0156_v0_0_s_ifspec;
  1523. /* Additional Prototypes for ALL interfaces */
  1524. /* end of Additional Prototypes */
  1525. #ifdef __cplusplus
  1526. }
  1527. #endif
  1528. #endif