StructDemo_p.c
上传用户:weisheen
上传日期:2022-07-09
资源大小:19390k
文件大小:13k
源码类别:

ActiveX/DCOM/ATL

开发平台:

Visual C++

  1. /* this ALWAYS GENERATED file contains the proxy stub code */
  2. /* File created by MIDL compiler version 5.01.0164 */
  3. /* at Fri Feb 26 15:14:52 2010
  4.  */
  5. /* Compiler settings for D:VCday11StructDemoStructDemo.idl:
  6.     Oicf (OptLev=i2), W1, Zp8, env=Win32, ms_ext, c_ext
  7.     error checks: allocation ref bounds_check enum stub_data 
  8. */
  9. //@@MIDL_FILE_HEADING(  )
  10. #define USE_STUBLESS_PROXY
  11. /* verify that the <rpcproxy.h> version is high enough to compile this file*/
  12. #ifndef __REDQ_RPCPROXY_H_VERSION__
  13. #define __REQUIRED_RPCPROXY_H_VERSION__ 440
  14. #endif
  15. #include "rpcproxy.h"
  16. #ifndef __RPCPROXY_H_VERSION__
  17. #error this stub requires an updated version of <rpcproxy.h>
  18. #endif // __RPCPROXY_H_VERSION__
  19. #include "StructDemo.h"
  20. #define TYPE_FORMAT_STRING_SIZE   71                                
  21. #define PROC_FORMAT_STRING_SIZE   109                               
  22. typedef struct _MIDL_TYPE_FORMAT_STRING
  23.     {
  24.     short          Pad;
  25.     unsigned char  Format[ TYPE_FORMAT_STRING_SIZE ];
  26.     } MIDL_TYPE_FORMAT_STRING;
  27. typedef struct _MIDL_PROC_FORMAT_STRING
  28.     {
  29.     short          Pad;
  30.     unsigned char  Format[ PROC_FORMAT_STRING_SIZE ];
  31.     } MIDL_PROC_FORMAT_STRING;
  32. extern const MIDL_TYPE_FORMAT_STRING __MIDL_TypeFormatString;
  33. extern const MIDL_PROC_FORMAT_STRING __MIDL_ProcFormatString;
  34. /* Standard interface: __MIDL_itf_StructDemo_0000, ver. 0.0,
  35.    GUID={0x00000000,0x0000,0x0000,{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}} */
  36. /* Object interface: IUnknown, ver. 0.0,
  37.    GUID={0x00000000,0x0000,0x0000,{0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46}} */
  38. /* Object interface: IDispatch, ver. 0.0,
  39.    GUID={0x00020400,0x0000,0x0000,{0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46}} */
  40. /* Object interface: IMyStruct, ver. 0.0,
  41.    GUID={0x4FB1A9EF,0xDBC7,0x498F,{0x82,0x4D,0x1F,0xEA,0xCA,0x15,0xE5,0xA9}} */
  42. extern const MIDL_STUB_DESC Object_StubDesc;
  43. extern const MIDL_SERVER_INFO IMyStruct_ServerInfo;
  44. #pragma code_seg(".orpc")
  45. extern const USER_MARSHAL_ROUTINE_QUADRUPLE UserMarshalRoutines[1];
  46. static const MIDL_STUB_DESC Object_StubDesc = 
  47.     {
  48.     0,
  49.     NdrOleAllocate,
  50.     NdrOleFree,
  51.     0,
  52.     0,
  53.     0,
  54.     0,
  55.     0,
  56.     __MIDL_TypeFormatString.Format,
  57.     1, /* -error bounds_check flag */
  58.     0x20000, /* Ndr library version */
  59.     0,
  60.     0x50100a4, /* MIDL Version 5.1.164 */
  61.     0,
  62.     UserMarshalRoutines,
  63.     0,  /* notify & notify_flag routine table */
  64.     1,  /* Flags */
  65.     0,  /* Reserved3 */
  66.     0,  /* Reserved4 */
  67.     0   /* Reserved5 */
  68.     };
  69. static const unsigned short IMyStruct_FormatStringOffsetTable[] = 
  70.     {
  71.     (unsigned short) -1,
  72.     (unsigned short) -1,
  73.     (unsigned short) -1,
  74.     (unsigned short) -1,
  75.     0,
  76.     34,
  77.     68
  78.     };
  79. static const MIDL_SERVER_INFO IMyStruct_ServerInfo = 
  80.     {
  81.     &Object_StubDesc,
  82.     0,
  83.     __MIDL_ProcFormatString.Format,
  84.     &IMyStruct_FormatStringOffsetTable[-3],
  85.     0,
  86.     0,
  87.     0,
  88.     0
  89.     };
  90. static const MIDL_STUBLESS_PROXY_INFO IMyStruct_ProxyInfo =
  91.     {
  92.     &Object_StubDesc,
  93.     __MIDL_ProcFormatString.Format,
  94.     &IMyStruct_FormatStringOffsetTable[-3],
  95.     0,
  96.     0,
  97.     0
  98.     };
  99. CINTERFACE_PROXY_VTABLE(10) _IMyStructProxyVtbl = 
  100. {
  101.     &IMyStruct_ProxyInfo,
  102.     &IID_IMyStruct,
  103.     IUnknown_QueryInterface_Proxy,
  104.     IUnknown_AddRef_Proxy,
  105.     IUnknown_Release_Proxy ,
  106.     0 /* (void *)-1 /* IDispatch::GetTypeInfoCount */ ,
  107.     0 /* (void *)-1 /* IDispatch::GetTypeInfo */ ,
  108.     0 /* (void *)-1 /* IDispatch::GetIDsOfNames */ ,
  109.     0 /* IDispatch_Invoke_Proxy */ ,
  110.     (void *)-1 /* IMyStruct::GetPersonById */ ,
  111.     (void *)-1 /* IMyStruct::GetAllPerson */ ,
  112.     (void *)-1 /* IMyStruct::SavePerson */
  113. };
  114. static const PRPC_STUB_FUNCTION IMyStruct_table[] =
  115. {
  116.     STUB_FORWARDING_FUNCTION,
  117.     STUB_FORWARDING_FUNCTION,
  118.     STUB_FORWARDING_FUNCTION,
  119.     STUB_FORWARDING_FUNCTION,
  120.     NdrStubCall2,
  121.     NdrStubCall2,
  122.     NdrStubCall2
  123. };
  124. CInterfaceStubVtbl _IMyStructStubVtbl =
  125. {
  126.     &IID_IMyStruct,
  127.     &IMyStruct_ServerInfo,
  128.     10,
  129.     &IMyStruct_table[-3],
  130.     CStdStubBuffer_DELEGATING_METHODS
  131. };
  132. #pragma data_seg(".rdata")
  133. static const USER_MARSHAL_ROUTINE_QUADRUPLE UserMarshalRoutines[1] = 
  134.         {
  135.             
  136.             {
  137.             BSTR_UserSize
  138.             ,BSTR_UserMarshal
  139.             ,BSTR_UserUnmarshal
  140.             ,BSTR_UserFree
  141.             }
  142.         };
  143. #if !defined(__RPC_WIN32__)
  144. #error  Invalid build platform for this stub.
  145. #endif
  146. #if !(TARGET_IS_NT40_OR_LATER)
  147. #error You need a Windows NT 4.0 or later to run this stub because it uses these features:
  148. #error   -Oif or -Oicf, [wire_marshal] or [user_marshal] attribute, more than 32 methods in the interface.
  149. #error However, your C/C++ compilation flags indicate you intend to run this app on earlier systems.
  150. #error This app will die there with the RPC_X_WRONG_STUB_VERSION error.
  151. #endif
  152. static const MIDL_PROC_FORMAT_STRING __MIDL_ProcFormatString =
  153.     {
  154.         0,
  155.         {
  156. /* Procedure GetPersonById */
  157. 0x33, /* FC_AUTO_HANDLE */
  158. 0x6c, /* Old Flags:  object, Oi2 */
  159. /*  2 */ NdrFcLong( 0x0 ), /* 0 */
  160. /*  6 */ NdrFcShort( 0x7 ), /* 7 */
  161. #ifndef _ALPHA_
  162. /*  8 */ NdrFcShort( 0x10 ), /* x86, MIPS, PPC Stack size/offset = 16 */
  163. #else
  164. NdrFcShort( 0x20 ), /* Alpha Stack size/offset = 32 */
  165. #endif
  166. /* 10 */ NdrFcShort( 0x8 ), /* 8 */
  167. /* 12 */ NdrFcShort( 0x8 ), /* 8 */
  168. /* 14 */ 0x5, /* Oi2 Flags:  srv must size, has return, */
  169. 0x3, /* 3 */
  170. /* Parameter id */
  171. /* 16 */ NdrFcShort( 0x48 ), /* Flags:  in, base type, */
  172. #ifndef _ALPHA_
  173. /* 18 */ NdrFcShort( 0x4 ), /* x86, MIPS, PPC Stack size/offset = 4 */
  174. #else
  175. NdrFcShort( 0x8 ), /* Alpha Stack size/offset = 8 */
  176. #endif
  177. /* 20 */ 0x8, /* FC_LONG */
  178. 0x0, /* 0 */
  179. /* Parameter Result */
  180. /* 22 */ NdrFcShort( 0x2013 ), /* Flags:  must size, must free, out, srv alloc size=8 */
  181. #ifndef _ALPHA_
  182. /* 24 */ NdrFcShort( 0x8 ), /* x86, MIPS, PPC Stack size/offset = 8 */
  183. #else
  184. NdrFcShort( 0x10 ), /* Alpha Stack size/offset = 16 */
  185. #endif
  186. /* 26 */ NdrFcShort( 0x2 ), /* Type Offset=2 */
  187. /* Return value */
  188. /* 28 */ NdrFcShort( 0x70 ), /* Flags:  out, return, base type, */
  189. #ifndef _ALPHA_
  190. /* 30 */ NdrFcShort( 0xc ), /* x86, MIPS, PPC Stack size/offset = 12 */
  191. #else
  192. NdrFcShort( 0x18 ), /* Alpha Stack size/offset = 24 */
  193. #endif
  194. /* 32 */ 0x8, /* FC_LONG */
  195. 0x0, /* 0 */
  196. /* Procedure GetAllPerson */
  197. /* 34 */ 0x33, /* FC_AUTO_HANDLE */
  198. 0x6c, /* Old Flags:  object, Oi2 */
  199. /* 36 */ NdrFcLong( 0x0 ), /* 0 */
  200. /* 40 */ NdrFcShort( 0x8 ), /* 8 */
  201. #ifndef _ALPHA_
  202. /* 42 */ NdrFcShort( 0x10 ), /* x86, MIPS, PPC Stack size/offset = 16 */
  203. #else
  204. NdrFcShort( 0x20 ), /* Alpha Stack size/offset = 32 */
  205. #endif
  206. /* 44 */ NdrFcShort( 0x0 ), /* 0 */
  207. /* 46 */ NdrFcShort( 0x10 ), /* 16 */
  208. /* 48 */ 0x5, /* Oi2 Flags:  srv must size, has return, */
  209. 0x3, /* 3 */
  210. /* Parameter number */
  211. /* 50 */ NdrFcShort( 0x2150 ), /* Flags:  out, base type, simple ref, srv alloc size=8 */
  212. #ifndef _ALPHA_
  213. /* 52 */ NdrFcShort( 0x4 ), /* x86, MIPS, PPC Stack size/offset = 4 */
  214. #else
  215. NdrFcShort( 0x8 ), /* Alpha Stack size/offset = 8 */
  216. #endif
  217. /* 54 */ 0x8, /* FC_LONG */
  218. 0x0, /* 0 */
  219. /* Parameter Result */
  220. /* 56 */ NdrFcShort( 0x2013 ), /* Flags:  must size, must free, out, srv alloc size=8 */
  221. #ifndef _ALPHA_
  222. /* 58 */ NdrFcShort( 0x8 ), /* x86, MIPS, PPC Stack size/offset = 8 */
  223. #else
  224. NdrFcShort( 0x10 ), /* Alpha Stack size/offset = 16 */
  225. #endif
  226. /* 60 */ NdrFcShort( 0x2 ), /* Type Offset=2 */
  227. /* Return value */
  228. /* 62 */ NdrFcShort( 0x70 ), /* Flags:  out, return, base type, */
  229. #ifndef _ALPHA_
  230. /* 64 */ NdrFcShort( 0xc ), /* x86, MIPS, PPC Stack size/offset = 12 */
  231. #else
  232. NdrFcShort( 0x18 ), /* Alpha Stack size/offset = 24 */
  233. #endif
  234. /* 66 */ 0x8, /* FC_LONG */
  235. 0x0, /* 0 */
  236. /* Procedure SavePerson */
  237. /* 68 */ 0x33, /* FC_AUTO_HANDLE */
  238. 0x6c, /* Old Flags:  object, Oi2 */
  239. /* 70 */ NdrFcLong( 0x0 ), /* 0 */
  240. /* 74 */ NdrFcShort( 0x9 ), /* 9 */
  241. #ifndef _ALPHA_
  242. /* 76 */ NdrFcShort( 0x14 ), /* x86, MIPS, PPC Stack size/offset = 20 */
  243. #else
  244. NdrFcShort( 0x28 ), /* Alpha Stack size/offset = 40 */
  245. #endif
  246. /* 78 */ NdrFcShort( 0x8 ), /* 8 */
  247. /* 80 */ NdrFcShort( 0x10 ), /* 16 */
  248. /* 82 */ 0x6, /* Oi2 Flags:  clt must size, has return, */
  249. 0x4, /* 4 */
  250. /* Parameter number */
  251. /* 84 */ NdrFcShort( 0x48 ), /* Flags:  in, base type, */
  252. #ifndef _ALPHA_
  253. /* 86 */ NdrFcShort( 0x4 ), /* x86, MIPS, PPC Stack size/offset = 4 */
  254. #else
  255. NdrFcShort( 0x8 ), /* Alpha Stack size/offset = 8 */
  256. #endif
  257. /* 88 */ 0x8, /* FC_LONG */
  258. 0x0, /* 0 */
  259. /* Parameter Result */
  260. /* 90 */ NdrFcShort( 0x10b ), /* Flags:  must size, must free, in, simple ref, */
  261. #ifndef _ALPHA_
  262. /* 92 */ NdrFcShort( 0x8 ), /* x86, MIPS, PPC Stack size/offset = 8 */
  263. #else
  264. NdrFcShort( 0x10 ), /* Alpha Stack size/offset = 16 */
  265. #endif
  266. /* 94 */ NdrFcShort( 0x2c ), /* Type Offset=44 */
  267. /* Parameter pResult */
  268. /* 96 */ NdrFcShort( 0x2150 ), /* Flags:  out, base type, simple ref, srv alloc size=8 */
  269. #ifndef _ALPHA_
  270. /* 98 */ NdrFcShort( 0xc ), /* x86, MIPS, PPC Stack size/offset = 12 */
  271. #else
  272. NdrFcShort( 0x18 ), /* Alpha Stack size/offset = 24 */
  273. #endif
  274. /* 100 */ 0x8, /* FC_LONG */
  275. 0x0, /* 0 */
  276. /* Return value */
  277. /* 102 */ NdrFcShort( 0x70 ), /* Flags:  out, return, base type, */
  278. #ifndef _ALPHA_
  279. /* 104 */ NdrFcShort( 0x10 ), /* x86, MIPS, PPC Stack size/offset = 16 */
  280. #else
  281. NdrFcShort( 0x20 ), /* Alpha Stack size/offset = 32 */
  282. #endif
  283. /* 106 */ 0x8, /* FC_LONG */
  284. 0x0, /* 0 */
  285. 0x0
  286.         }
  287.     };
  288. static const MIDL_TYPE_FORMAT_STRING __MIDL_TypeFormatString =
  289.     {
  290.         0,
  291.         {
  292. NdrFcShort( 0x0 ), /* 0 */
  293. /*  2 */
  294. 0x11, 0x14, /* FC_RP [alloced_on_stack] */
  295. /*  4 */ NdrFcShort( 0x2 ), /* Offset= 2 (6) */
  296. /*  6 */
  297. 0x13, 0x0, /* FC_OP */
  298. /*  8 */ NdrFcShort( 0x24 ), /* Offset= 36 (44) */
  299. /* 10 */
  300. 0x13, 0x0, /* FC_OP */
  301. /* 12 */ NdrFcShort( 0xc ), /* Offset= 12 (24) */
  302. /* 14 */
  303. 0x1b, /* FC_CARRAY */
  304. 0x1, /* 1 */
  305. /* 16 */ NdrFcShort( 0x2 ), /* 2 */
  306. /* 18 */ 0x9, /* Corr desc: FC_ULONG */
  307. 0x0, /*  */
  308. /* 20 */ NdrFcShort( 0xfffc ), /* -4 */
  309. /* 22 */ 0x6, /* FC_SHORT */
  310. 0x5b, /* FC_END */
  311. /* 24 */
  312. 0x17, /* FC_CSTRUCT */
  313. 0x3, /* 3 */
  314. /* 26 */ NdrFcShort( 0x8 ), /* 8 */
  315. /* 28 */ NdrFcShort( 0xfffffff2 ), /* Offset= -14 (14) */
  316. /* 30 */ 0x8, /* FC_LONG */
  317. 0x8, /* FC_LONG */
  318. /* 32 */ 0x5c, /* FC_PAD */
  319. 0x5b, /* FC_END */
  320. /* 34 */ 0xb4, /* FC_USER_MARSHAL */
  321. 0x83, /* 131 */
  322. /* 36 */ NdrFcShort( 0x0 ), /* 0 */
  323. /* 38 */ NdrFcShort( 0x4 ), /* 4 */
  324. /* 40 */ NdrFcShort( 0x0 ), /* 0 */
  325. /* 42 */ NdrFcShort( 0xffffffe0 ), /* Offset= -32 (10) */
  326. /* 44 */
  327. 0x1a, /* FC_BOGUS_STRUCT */
  328. 0x3, /* 3 */
  329. /* 46 */ NdrFcShort( 0xc ), /* 12 */
  330. /* 48 */ NdrFcShort( 0x0 ), /* 0 */
  331. /* 50 */ NdrFcShort( 0x0 ), /* Offset= 0 (50) */
  332. /* 52 */ 0x4c, /* FC_EMBEDDED_COMPLEX */
  333. 0x0, /* 0 */
  334. /* 54 */ NdrFcShort( 0xffffffec ), /* Offset= -20 (34) */
  335. /* 56 */ 0x8, /* FC_LONG */
  336. 0x4c, /* FC_EMBEDDED_COMPLEX */
  337. /* 58 */ 0x0, /* 0 */
  338. NdrFcShort( 0xffffffe7 ), /* Offset= -25 (34) */
  339. 0x5b, /* FC_END */
  340. /* 62 */
  341. 0x11, 0xc, /* FC_RP [alloced_on_stack] [simple_pointer] */
  342. /* 64 */ 0x8, /* FC_LONG */
  343. 0x5c, /* FC_PAD */
  344. /* 66 */
  345. 0x11, 0x0, /* FC_RP */
  346. /* 68 */ NdrFcShort( 0xffffffe8 ), /* Offset= -24 (44) */
  347. 0x0
  348.         }
  349.     };
  350. const CInterfaceProxyVtbl * _StructDemo_ProxyVtblList[] = 
  351. {
  352.     ( CInterfaceProxyVtbl *) &_IMyStructProxyVtbl,
  353.     0
  354. };
  355. const CInterfaceStubVtbl * _StructDemo_StubVtblList[] = 
  356. {
  357.     ( CInterfaceStubVtbl *) &_IMyStructStubVtbl,
  358.     0
  359. };
  360. PCInterfaceName const _StructDemo_InterfaceNamesList[] = 
  361. {
  362.     "IMyStruct",
  363.     0
  364. };
  365. const IID *  _StructDemo_BaseIIDList[] = 
  366. {
  367.     &IID_IDispatch,
  368.     0
  369. };
  370. #define _StructDemo_CHECK_IID(n) IID_GENERIC_CHECK_IID( _StructDemo, pIID, n)
  371. int __stdcall _StructDemo_IID_Lookup( const IID * pIID, int * pIndex )
  372. {
  373.     
  374.     if(!_StructDemo_CHECK_IID(0))
  375.         {
  376.         *pIndex = 0;
  377.         return 1;
  378.         }
  379.     return 0;
  380. }
  381. const ExtendedProxyFileInfo StructDemo_ProxyFileInfo = 
  382. {
  383.     (PCInterfaceProxyVtblList *) & _StructDemo_ProxyVtblList,
  384.     (PCInterfaceStubVtblList *) & _StructDemo_StubVtblList,
  385.     (const PCInterfaceName * ) & _StructDemo_InterfaceNamesList,
  386.     (const IID ** ) & _StructDemo_BaseIIDList,
  387.     & _StructDemo_IID_Lookup, 
  388.     1,
  389.     2,
  390.     0, /* table of [async_uuid] interfaces */
  391.     0, /* Filler1 */
  392.     0, /* Filler2 */
  393.     0  /* Filler3 */
  394. };