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.

524 lines
14 KiB

  1. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  2. /* File created by MIDL compiler version 6.00.0361 */
  3. /* Compiler settings for vrsscan.idl:
  4. Oicf, W1, Zp8, env=Win32 (32b run)
  5. protocol : dce , ms_ext, c_ext, robust
  6. error checks: allocation ref bounds_check enum stub_data
  7. VC __declspec() decoration level:
  8. __declspec(uuid()), __declspec(selectany), __declspec(novtable)
  9. DECLSPEC_UUID(), MIDL_INTERFACE()
  10. */
  11. //@@MIDL_FILE_HEADING( )
  12. #pragma warning( disable: 4049 ) /* more than 64k source lines */
  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__ 475
  16. #endif
  17. #include "rpc.h"
  18. #include "rpcndr.h"
  19. #ifndef __RPCNDR_H_VERSION__
  20. #error this stub requires an updated version of <rpcndr.h>
  21. #endif // __RPCNDR_H_VERSION__
  22. #ifndef __vrsscan_h__
  23. #define __vrsscan_h__
  24. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  25. #pragma once
  26. #endif
  27. /* Forward Declarations */
  28. #ifndef __IVirusScanner_FWD_DEFINED__
  29. #define __IVirusScanner_FWD_DEFINED__
  30. typedef interface IVirusScanner IVirusScanner;
  31. #endif /* __IVirusScanner_FWD_DEFINED__ */
  32. #ifndef __IRegisterVirusScanEngine_FWD_DEFINED__
  33. #define __IRegisterVirusScanEngine_FWD_DEFINED__
  34. typedef interface IRegisterVirusScanEngine IRegisterVirusScanEngine;
  35. #endif /* __IRegisterVirusScanEngine_FWD_DEFINED__ */
  36. #ifndef __IVirusScanEngine_FWD_DEFINED__
  37. #define __IVirusScanEngine_FWD_DEFINED__
  38. typedef interface IVirusScanEngine IVirusScanEngine;
  39. #endif /* __IVirusScanEngine_FWD_DEFINED__ */
  40. #ifndef __VirusScan_FWD_DEFINED__
  41. #define __VirusScan_FWD_DEFINED__
  42. #ifdef __cplusplus
  43. typedef class VirusScan VirusScan;
  44. #else
  45. typedef struct VirusScan VirusScan;
  46. #endif /* __cplusplus */
  47. #endif /* __VirusScan_FWD_DEFINED__ */
  48. /* header files for imported files */
  49. #include "objidl.h"
  50. #include "oleidl.h"
  51. #ifdef __cplusplus
  52. extern "C"{
  53. #endif
  54. void * __RPC_USER MIDL_user_allocate(size_t);
  55. void __RPC_USER MIDL_user_free( void * );
  56. /* interface __MIDL_itf_vrsscan_0000 */
  57. /* [local] */
  58. extern RPC_IF_HANDLE __MIDL_itf_vrsscan_0000_v0_0_c_ifspec;
  59. extern RPC_IF_HANDLE __MIDL_itf_vrsscan_0000_v0_0_s_ifspec;
  60. #ifndef __VIRUSSCAN_LIBRARY_DEFINED__
  61. #define __VIRUSSCAN_LIBRARY_DEFINED__
  62. /* library VIRUSSCAN */
  63. /* [version][lcid][helpstring][uuid] */
  64. // Virus Scan Error codes
  65. #define VSCAN_E_NOPROVIDERS _HRESULT_TYPEDEF_(0x800D1001)
  66. #define VSCAN_E_CHECKPARTIAL _HRESULT_TYPEDEF_(0x800D1002)
  67. #define VSCAN_E_CHECKFAIL _HRESULT_TYPEDEF_(0x800D1003)
  68. #define VSCAN_E_DELETEFAIL _HRESULT_TYPEDEF_(0x800D1004)
  69. // Virus Scanner Capabilities flags
  70. #define VSC_LIKESISTREAM 0x00000001
  71. #define VSC_LIKESFILE 0x00000002
  72. #define VSC_LIKESHGLOBAL 0x00000004
  73. #define VSC_HASMOREINFO 0x00000008
  74. // Virus Scan Engine Error codes
  75. #define VSE_E_UNSUPPORTEDINPUTTYPE _HRESULT_TYPEDEF_(0x800D2001)
  76. #define VSE_E_CHECKFAIL _HRESULT_TYPEDEF_(0x800D2002)
  77. #define MAX_DESCRIPTION ( 128 )
  78. #define MAX_URL_LENGTH ( 2048 )
  79. typedef struct _tagVIRUSINFO
  80. {
  81. DWORD cbSize;
  82. WCHAR wszVendorDescription[ 128 ];
  83. HICON hVendorIcon;
  84. WCHAR wszVendorContactInfo[ 2048 ];
  85. WCHAR wszVirusName[ 128 ];
  86. WCHAR wszVirusDescription[ 128 ];
  87. } VIRUSINFO;
  88. typedef /* [unique] */ VIRUSINFO *LPVIRUSINFO;
  89. #define SFV_DONTDOUI 0x00000002
  90. #define SFV_DELETE 0x00000004
  91. #define SFV_WANTVENDORICON 0x00000008
  92. #define SFV_ENGINE_DOUI 0x00010000
  93. #define REGISTERSCANNER_REREGISTER 1
  94. EXTERN_C const IID LIBID_VIRUSSCAN;
  95. #ifndef __IVirusScanner_INTERFACE_DEFINED__
  96. #define __IVirusScanner_INTERFACE_DEFINED__
  97. /* interface IVirusScanner */
  98. /* [uuid][object][local] */
  99. EXTERN_C const IID IID_IVirusScanner;
  100. #if defined(__cplusplus) && !defined(CINTERFACE)
  101. MIDL_INTERFACE("4589BEE0-B4B1-11CF-AAFA-00AA00B6015C")
  102. IVirusScanner : public IUnknown
  103. {
  104. public:
  105. virtual HRESULT STDMETHODCALLTYPE ScanForVirus(
  106. /* [in] */ HWND hWnd,
  107. /* [in] */ STGMEDIUM *pstgMedium,
  108. /* [in] */ LPWSTR pwszItemDescription,
  109. /* [in] */ DWORD dwFlags,
  110. /* [out][in] */ LPVIRUSINFO pVirusInfo) = 0;
  111. };
  112. #else /* C style interface */
  113. typedef struct IVirusScannerVtbl
  114. {
  115. BEGIN_INTERFACE
  116. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  117. IVirusScanner * This,
  118. /* [in] */ REFIID riid,
  119. /* [iid_is][out] */ void **ppvObject);
  120. ULONG ( STDMETHODCALLTYPE *AddRef )(
  121. IVirusScanner * This);
  122. ULONG ( STDMETHODCALLTYPE *Release )(
  123. IVirusScanner * This);
  124. HRESULT ( STDMETHODCALLTYPE *ScanForVirus )(
  125. IVirusScanner * This,
  126. /* [in] */ HWND hWnd,
  127. /* [in] */ STGMEDIUM *pstgMedium,
  128. /* [in] */ LPWSTR pwszItemDescription,
  129. /* [in] */ DWORD dwFlags,
  130. /* [out][in] */ LPVIRUSINFO pVirusInfo);
  131. END_INTERFACE
  132. } IVirusScannerVtbl;
  133. interface IVirusScanner
  134. {
  135. CONST_VTBL struct IVirusScannerVtbl *lpVtbl;
  136. };
  137. #ifdef COBJMACROS
  138. #define IVirusScanner_QueryInterface(This,riid,ppvObject) \
  139. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  140. #define IVirusScanner_AddRef(This) \
  141. (This)->lpVtbl -> AddRef(This)
  142. #define IVirusScanner_Release(This) \
  143. (This)->lpVtbl -> Release(This)
  144. #define IVirusScanner_ScanForVirus(This,hWnd,pstgMedium,pwszItemDescription,dwFlags,pVirusInfo) \
  145. (This)->lpVtbl -> ScanForVirus(This,hWnd,pstgMedium,pwszItemDescription,dwFlags,pVirusInfo)
  146. #endif /* COBJMACROS */
  147. #endif /* C style interface */
  148. HRESULT STDMETHODCALLTYPE IVirusScanner_ScanForVirus_Proxy(
  149. IVirusScanner * This,
  150. /* [in] */ HWND hWnd,
  151. /* [in] */ STGMEDIUM *pstgMedium,
  152. /* [in] */ LPWSTR pwszItemDescription,
  153. /* [in] */ DWORD dwFlags,
  154. /* [out][in] */ LPVIRUSINFO pVirusInfo);
  155. void __RPC_STUB IVirusScanner_ScanForVirus_Stub(
  156. IRpcStubBuffer *This,
  157. IRpcChannelBuffer *_pRpcChannelBuffer,
  158. PRPC_MESSAGE _pRpcMessage,
  159. DWORD *_pdwStubPhase);
  160. #endif /* __IVirusScanner_INTERFACE_DEFINED__ */
  161. #ifndef __IRegisterVirusScanEngine_INTERFACE_DEFINED__
  162. #define __IRegisterVirusScanEngine_INTERFACE_DEFINED__
  163. /* interface IRegisterVirusScanEngine */
  164. /* [uuid][object][local] */
  165. EXTERN_C const IID IID_IRegisterVirusScanEngine;
  166. #if defined(__cplusplus) && !defined(CINTERFACE)
  167. MIDL_INTERFACE("0825E060-B961-11CF-AAFA-00AA00B6015C")
  168. IRegisterVirusScanEngine : public IUnknown
  169. {
  170. public:
  171. virtual HRESULT STDMETHODCALLTYPE RegisterScanEngine(
  172. /* [in] */ REFCLSID rclsid,
  173. /* [in] */ LPWSTR pwszDescription,
  174. /* [in] */ DWORD dwFlags,
  175. /* [in] */ DWORD dwReserved,
  176. /* [out][in] */ DWORD *pdwCookie) = 0;
  177. virtual HRESULT STDMETHODCALLTYPE UnRegisterScanEngine(
  178. /* [in] */ REFCLSID rclsid,
  179. /* [in] */ LPWSTR pwszDescription,
  180. /* [in] */ DWORD dwFlags,
  181. /* [in] */ DWORD dwReserved,
  182. /* [in] */ DWORD dwCookie) = 0;
  183. };
  184. #else /* C style interface */
  185. typedef struct IRegisterVirusScanEngineVtbl
  186. {
  187. BEGIN_INTERFACE
  188. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  189. IRegisterVirusScanEngine * This,
  190. /* [in] */ REFIID riid,
  191. /* [iid_is][out] */ void **ppvObject);
  192. ULONG ( STDMETHODCALLTYPE *AddRef )(
  193. IRegisterVirusScanEngine * This);
  194. ULONG ( STDMETHODCALLTYPE *Release )(
  195. IRegisterVirusScanEngine * This);
  196. HRESULT ( STDMETHODCALLTYPE *RegisterScanEngine )(
  197. IRegisterVirusScanEngine * This,
  198. /* [in] */ REFCLSID rclsid,
  199. /* [in] */ LPWSTR pwszDescription,
  200. /* [in] */ DWORD dwFlags,
  201. /* [in] */ DWORD dwReserved,
  202. /* [out][in] */ DWORD *pdwCookie);
  203. HRESULT ( STDMETHODCALLTYPE *UnRegisterScanEngine )(
  204. IRegisterVirusScanEngine * This,
  205. /* [in] */ REFCLSID rclsid,
  206. /* [in] */ LPWSTR pwszDescription,
  207. /* [in] */ DWORD dwFlags,
  208. /* [in] */ DWORD dwReserved,
  209. /* [in] */ DWORD dwCookie);
  210. END_INTERFACE
  211. } IRegisterVirusScanEngineVtbl;
  212. interface IRegisterVirusScanEngine
  213. {
  214. CONST_VTBL struct IRegisterVirusScanEngineVtbl *lpVtbl;
  215. };
  216. #ifdef COBJMACROS
  217. #define IRegisterVirusScanEngine_QueryInterface(This,riid,ppvObject) \
  218. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  219. #define IRegisterVirusScanEngine_AddRef(This) \
  220. (This)->lpVtbl -> AddRef(This)
  221. #define IRegisterVirusScanEngine_Release(This) \
  222. (This)->lpVtbl -> Release(This)
  223. #define IRegisterVirusScanEngine_RegisterScanEngine(This,rclsid,pwszDescription,dwFlags,dwReserved,pdwCookie) \
  224. (This)->lpVtbl -> RegisterScanEngine(This,rclsid,pwszDescription,dwFlags,dwReserved,pdwCookie)
  225. #define IRegisterVirusScanEngine_UnRegisterScanEngine(This,rclsid,pwszDescription,dwFlags,dwReserved,dwCookie) \
  226. (This)->lpVtbl -> UnRegisterScanEngine(This,rclsid,pwszDescription,dwFlags,dwReserved,dwCookie)
  227. #endif /* COBJMACROS */
  228. #endif /* C style interface */
  229. HRESULT STDMETHODCALLTYPE IRegisterVirusScanEngine_RegisterScanEngine_Proxy(
  230. IRegisterVirusScanEngine * This,
  231. /* [in] */ REFCLSID rclsid,
  232. /* [in] */ LPWSTR pwszDescription,
  233. /* [in] */ DWORD dwFlags,
  234. /* [in] */ DWORD dwReserved,
  235. /* [out][in] */ DWORD *pdwCookie);
  236. void __RPC_STUB IRegisterVirusScanEngine_RegisterScanEngine_Stub(
  237. IRpcStubBuffer *This,
  238. IRpcChannelBuffer *_pRpcChannelBuffer,
  239. PRPC_MESSAGE _pRpcMessage,
  240. DWORD *_pdwStubPhase);
  241. HRESULT STDMETHODCALLTYPE IRegisterVirusScanEngine_UnRegisterScanEngine_Proxy(
  242. IRegisterVirusScanEngine * This,
  243. /* [in] */ REFCLSID rclsid,
  244. /* [in] */ LPWSTR pwszDescription,
  245. /* [in] */ DWORD dwFlags,
  246. /* [in] */ DWORD dwReserved,
  247. /* [in] */ DWORD dwCookie);
  248. void __RPC_STUB IRegisterVirusScanEngine_UnRegisterScanEngine_Stub(
  249. IRpcStubBuffer *This,
  250. IRpcChannelBuffer *_pRpcChannelBuffer,
  251. PRPC_MESSAGE _pRpcMessage,
  252. DWORD *_pdwStubPhase);
  253. #endif /* __IRegisterVirusScanEngine_INTERFACE_DEFINED__ */
  254. #ifndef __IVirusScanEngine_INTERFACE_DEFINED__
  255. #define __IVirusScanEngine_INTERFACE_DEFINED__
  256. /* interface IVirusScanEngine */
  257. /* [uuid][object][local] */
  258. EXTERN_C const IID IID_IVirusScanEngine;
  259. #if defined(__cplusplus) && !defined(CINTERFACE)
  260. MIDL_INTERFACE("083DB180-B4A8-11CF-AAFA-00AA00B6015C")
  261. IVirusScanEngine : public IUnknown
  262. {
  263. public:
  264. virtual HRESULT STDMETHODCALLTYPE ScanForVirus(
  265. /* [in] */ HWND hWnd,
  266. /* [in] */ STGMEDIUM *pstgMedium,
  267. /* [in] */ LPWSTR pwszItemDescription,
  268. /* [in] */ DWORD dwFlags,
  269. /* [in] */ DWORD dwReserved,
  270. /* [out][in] */ LPVIRUSINFO pVirusInfo) = 0;
  271. virtual HRESULT STDMETHODCALLTYPE DisplayCustomInfo( void) = 0;
  272. };
  273. #else /* C style interface */
  274. typedef struct IVirusScanEngineVtbl
  275. {
  276. BEGIN_INTERFACE
  277. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  278. IVirusScanEngine * This,
  279. /* [in] */ REFIID riid,
  280. /* [iid_is][out] */ void **ppvObject);
  281. ULONG ( STDMETHODCALLTYPE *AddRef )(
  282. IVirusScanEngine * This);
  283. ULONG ( STDMETHODCALLTYPE *Release )(
  284. IVirusScanEngine * This);
  285. HRESULT ( STDMETHODCALLTYPE *ScanForVirus )(
  286. IVirusScanEngine * This,
  287. /* [in] */ HWND hWnd,
  288. /* [in] */ STGMEDIUM *pstgMedium,
  289. /* [in] */ LPWSTR pwszItemDescription,
  290. /* [in] */ DWORD dwFlags,
  291. /* [in] */ DWORD dwReserved,
  292. /* [out][in] */ LPVIRUSINFO pVirusInfo);
  293. HRESULT ( STDMETHODCALLTYPE *DisplayCustomInfo )(
  294. IVirusScanEngine * This);
  295. END_INTERFACE
  296. } IVirusScanEngineVtbl;
  297. interface IVirusScanEngine
  298. {
  299. CONST_VTBL struct IVirusScanEngineVtbl *lpVtbl;
  300. };
  301. #ifdef COBJMACROS
  302. #define IVirusScanEngine_QueryInterface(This,riid,ppvObject) \
  303. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  304. #define IVirusScanEngine_AddRef(This) \
  305. (This)->lpVtbl -> AddRef(This)
  306. #define IVirusScanEngine_Release(This) \
  307. (This)->lpVtbl -> Release(This)
  308. #define IVirusScanEngine_ScanForVirus(This,hWnd,pstgMedium,pwszItemDescription,dwFlags,dwReserved,pVirusInfo) \
  309. (This)->lpVtbl -> ScanForVirus(This,hWnd,pstgMedium,pwszItemDescription,dwFlags,dwReserved,pVirusInfo)
  310. #define IVirusScanEngine_DisplayCustomInfo(This) \
  311. (This)->lpVtbl -> DisplayCustomInfo(This)
  312. #endif /* COBJMACROS */
  313. #endif /* C style interface */
  314. HRESULT STDMETHODCALLTYPE IVirusScanEngine_ScanForVirus_Proxy(
  315. IVirusScanEngine * This,
  316. /* [in] */ HWND hWnd,
  317. /* [in] */ STGMEDIUM *pstgMedium,
  318. /* [in] */ LPWSTR pwszItemDescription,
  319. /* [in] */ DWORD dwFlags,
  320. /* [in] */ DWORD dwReserved,
  321. /* [out][in] */ LPVIRUSINFO pVirusInfo);
  322. void __RPC_STUB IVirusScanEngine_ScanForVirus_Stub(
  323. IRpcStubBuffer *This,
  324. IRpcChannelBuffer *_pRpcChannelBuffer,
  325. PRPC_MESSAGE _pRpcMessage,
  326. DWORD *_pdwStubPhase);
  327. HRESULT STDMETHODCALLTYPE IVirusScanEngine_DisplayCustomInfo_Proxy(
  328. IVirusScanEngine * This);
  329. void __RPC_STUB IVirusScanEngine_DisplayCustomInfo_Stub(
  330. IRpcStubBuffer *This,
  331. IRpcChannelBuffer *_pRpcChannelBuffer,
  332. PRPC_MESSAGE _pRpcMessage,
  333. DWORD *_pdwStubPhase);
  334. #endif /* __IVirusScanEngine_INTERFACE_DEFINED__ */
  335. EXTERN_C const CLSID CLSID_VirusScan;
  336. #ifdef __cplusplus
  337. class DECLSPEC_UUID("E88E5DE0-BD3E-11CF-AAFA-00AA00B6015C")
  338. VirusScan;
  339. #endif
  340. #endif /* __VIRUSSCAN_LIBRARY_DEFINED__ */
  341. /* Additional Prototypes for ALL interfaces */
  342. /* end of Additional Prototypes */
  343. #ifdef __cplusplus
  344. }
  345. #endif
  346. #endif