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

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 13:45:02 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   63                                
  21. #define PROC_FORMAT_STRING_SIZE   35                                
  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.     };
  77. static const MIDL_SERVER_INFO IMyStruct_ServerInfo = 
  78.     {
  79.     &Object_StubDesc,
  80.     0,
  81.     __MIDL_ProcFormatString.Format,
  82.     &IMyStruct_FormatStringOffsetTable[-3],
  83.     0,
  84.     0,
  85.     0,
  86.     0
  87.     };
  88. static const MIDL_STUBLESS_PROXY_INFO IMyStruct_ProxyInfo =
  89.     {
  90.     &Object_StubDesc,
  91.     __MIDL_ProcFormatString.Format,
  92.     &IMyStruct_FormatStringOffsetTable[-3],
  93.     0,
  94.     0,
  95.     0
  96.     };
  97. CINTERFACE_PROXY_VTABLE(8) _IMyStructProxyVtbl = 
  98. {
  99.     &IMyStruct_ProxyInfo,
  100.     &IID_IMyStruct,
  101.     IUnknown_QueryInterface_Proxy,
  102.     IUnknown_AddRef_Proxy,
  103.     IUnknown_Release_Proxy ,
  104.     0 /* (void *)-1 /* IDispatch::GetTypeInfoCount */ ,
  105.     0 /* (void *)-1 /* IDispatch::GetTypeInfo */ ,
  106.     0 /* (void *)-1 /* IDispatch::GetIDsOfNames */ ,
  107.     0 /* IDispatch_Invoke_Proxy */ ,
  108.     (void *)-1 /* IMyStruct::GetPersonById */
  109. };
  110. static const PRPC_STUB_FUNCTION IMyStruct_table[] =
  111. {
  112.     STUB_FORWARDING_FUNCTION,
  113.     STUB_FORWARDING_FUNCTION,
  114.     STUB_FORWARDING_FUNCTION,
  115.     STUB_FORWARDING_FUNCTION,
  116.     NdrStubCall2
  117. };
  118. CInterfaceStubVtbl _IMyStructStubVtbl =
  119. {
  120.     &IID_IMyStruct,
  121.     &IMyStruct_ServerInfo,
  122.     8,
  123.     &IMyStruct_table[-3],
  124.     CStdStubBuffer_DELEGATING_METHODS
  125. };
  126. #pragma data_seg(".rdata")
  127. static const USER_MARSHAL_ROUTINE_QUADRUPLE UserMarshalRoutines[1] = 
  128.         {
  129.             
  130.             {
  131.             BSTR_UserSize
  132.             ,BSTR_UserMarshal
  133.             ,BSTR_UserUnmarshal
  134.             ,BSTR_UserFree
  135.             }
  136.         };
  137. #if !defined(__RPC_WIN32__)
  138. #error  Invalid build platform for this stub.
  139. #endif
  140. #if !(TARGET_IS_NT40_OR_LATER)
  141. #error You need a Windows NT 4.0 or later to run this stub because it uses these features:
  142. #error   -Oif or -Oicf, [wire_marshal] or [user_marshal] attribute, more than 32 methods in the interface.
  143. #error However, your C/C++ compilation flags indicate you intend to run this app on earlier systems.
  144. #error This app will die there with the RPC_X_WRONG_STUB_VERSION error.
  145. #endif
  146. static const MIDL_PROC_FORMAT_STRING __MIDL_ProcFormatString =
  147.     {
  148.         0,
  149.         {
  150. /* Procedure GetPersonById */
  151. 0x33, /* FC_AUTO_HANDLE */
  152. 0x6c, /* Old Flags:  object, Oi2 */
  153. /*  2 */ NdrFcLong( 0x0 ), /* 0 */
  154. /*  6 */ NdrFcShort( 0x7 ), /* 7 */
  155. #ifndef _ALPHA_
  156. /*  8 */ NdrFcShort( 0x10 ), /* x86, MIPS, PPC Stack size/offset = 16 */
  157. #else
  158. NdrFcShort( 0x20 ), /* Alpha Stack size/offset = 32 */
  159. #endif
  160. /* 10 */ NdrFcShort( 0x8 ), /* 8 */
  161. /* 12 */ NdrFcShort( 0x8 ), /* 8 */
  162. /* 14 */ 0x5, /* Oi2 Flags:  srv must size, has return, */
  163. 0x3, /* 3 */
  164. /* Parameter id */
  165. /* 16 */ NdrFcShort( 0x48 ), /* Flags:  in, base type, */
  166. #ifndef _ALPHA_
  167. /* 18 */ NdrFcShort( 0x4 ), /* x86, MIPS, PPC Stack size/offset = 4 */
  168. #else
  169. NdrFcShort( 0x8 ), /* Alpha Stack size/offset = 8 */
  170. #endif
  171. /* 20 */ 0x8, /* FC_LONG */
  172. 0x0, /* 0 */
  173. /* Parameter Result */
  174. /* 22 */ NdrFcShort( 0x2013 ), /* Flags:  must size, must free, out, srv alloc size=8 */
  175. #ifndef _ALPHA_
  176. /* 24 */ NdrFcShort( 0x8 ), /* x86, MIPS, PPC Stack size/offset = 8 */
  177. #else
  178. NdrFcShort( 0x10 ), /* Alpha Stack size/offset = 16 */
  179. #endif
  180. /* 26 */ NdrFcShort( 0x2 ), /* Type Offset=2 */
  181. /* Return value */
  182. /* 28 */ NdrFcShort( 0x70 ), /* Flags:  out, return, base type, */
  183. #ifndef _ALPHA_
  184. /* 30 */ NdrFcShort( 0xc ), /* x86, MIPS, PPC Stack size/offset = 12 */
  185. #else
  186. NdrFcShort( 0x18 ), /* Alpha Stack size/offset = 24 */
  187. #endif
  188. /* 32 */ 0x8, /* FC_LONG */
  189. 0x0, /* 0 */
  190. 0x0
  191.         }
  192.     };
  193. static const MIDL_TYPE_FORMAT_STRING __MIDL_TypeFormatString =
  194.     {
  195.         0,
  196.         {
  197. NdrFcShort( 0x0 ), /* 0 */
  198. /*  2 */
  199. 0x11, 0x14, /* FC_RP [alloced_on_stack] */
  200. /*  4 */ NdrFcShort( 0x2 ), /* Offset= 2 (6) */
  201. /*  6 */
  202. 0x13, 0x0, /* FC_OP */
  203. /*  8 */ NdrFcShort( 0x24 ), /* Offset= 36 (44) */
  204. /* 10 */
  205. 0x13, 0x0, /* FC_OP */
  206. /* 12 */ NdrFcShort( 0xc ), /* Offset= 12 (24) */
  207. /* 14 */
  208. 0x1b, /* FC_CARRAY */
  209. 0x1, /* 1 */
  210. /* 16 */ NdrFcShort( 0x2 ), /* 2 */
  211. /* 18 */ 0x9, /* Corr desc: FC_ULONG */
  212. 0x0, /*  */
  213. /* 20 */ NdrFcShort( 0xfffc ), /* -4 */
  214. /* 22 */ 0x6, /* FC_SHORT */
  215. 0x5b, /* FC_END */
  216. /* 24 */
  217. 0x17, /* FC_CSTRUCT */
  218. 0x3, /* 3 */
  219. /* 26 */ NdrFcShort( 0x8 ), /* 8 */
  220. /* 28 */ NdrFcShort( 0xfffffff2 ), /* Offset= -14 (14) */
  221. /* 30 */ 0x8, /* FC_LONG */
  222. 0x8, /* FC_LONG */
  223. /* 32 */ 0x5c, /* FC_PAD */
  224. 0x5b, /* FC_END */
  225. /* 34 */ 0xb4, /* FC_USER_MARSHAL */
  226. 0x83, /* 131 */
  227. /* 36 */ NdrFcShort( 0x0 ), /* 0 */
  228. /* 38 */ NdrFcShort( 0x4 ), /* 4 */
  229. /* 40 */ NdrFcShort( 0x0 ), /* 0 */
  230. /* 42 */ NdrFcShort( 0xffffffe0 ), /* Offset= -32 (10) */
  231. /* 44 */
  232. 0x1a, /* FC_BOGUS_STRUCT */
  233. 0x3, /* 3 */
  234. /* 46 */ NdrFcShort( 0xc ), /* 12 */
  235. /* 48 */ NdrFcShort( 0x0 ), /* 0 */
  236. /* 50 */ NdrFcShort( 0x0 ), /* Offset= 0 (50) */
  237. /* 52 */ 0x4c, /* FC_EMBEDDED_COMPLEX */
  238. 0x0, /* 0 */
  239. /* 54 */ NdrFcShort( 0xffffffec ), /* Offset= -20 (34) */
  240. /* 56 */ 0x8, /* FC_LONG */
  241. 0x4c, /* FC_EMBEDDED_COMPLEX */
  242. /* 58 */ 0x0, /* 0 */
  243. NdrFcShort( 0xffffffe7 ), /* Offset= -25 (34) */
  244. 0x5b, /* FC_END */
  245. 0x0
  246.         }
  247.     };
  248. const CInterfaceProxyVtbl * _StructDemo_ProxyVtblList[] = 
  249. {
  250.     ( CInterfaceProxyVtbl *) &_IMyStructProxyVtbl,
  251.     0
  252. };
  253. const CInterfaceStubVtbl * _StructDemo_StubVtblList[] = 
  254. {
  255.     ( CInterfaceStubVtbl *) &_IMyStructStubVtbl,
  256.     0
  257. };
  258. PCInterfaceName const _StructDemo_InterfaceNamesList[] = 
  259. {
  260.     "IMyStruct",
  261.     0
  262. };
  263. const IID *  _StructDemo_BaseIIDList[] = 
  264. {
  265.     &IID_IDispatch,
  266.     0
  267. };
  268. #define _StructDemo_CHECK_IID(n) IID_GENERIC_CHECK_IID( _StructDemo, pIID, n)
  269. int __stdcall _StructDemo_IID_Lookup( const IID * pIID, int * pIndex )
  270. {
  271.     
  272.     if(!_StructDemo_CHECK_IID(0))
  273.         {
  274.         *pIndex = 0;
  275.         return 1;
  276.         }
  277.     return 0;
  278. }
  279. const ExtendedProxyFileInfo StructDemo_ProxyFileInfo = 
  280. {
  281.     (PCInterfaceProxyVtblList *) & _StructDemo_ProxyVtblList,
  282.     (PCInterfaceStubVtblList *) & _StructDemo_StubVtblList,
  283.     (const PCInterfaceName * ) & _StructDemo_InterfaceNamesList,
  284.     (const IID ** ) & _StructDemo_BaseIIDList,
  285.     & _StructDemo_IID_Lookup, 
  286.     1,
  287.     2,
  288.     0, /* table of [async_uuid] interfaces */
  289.     0, /* Filler1 */
  290.     0, /* Filler2 */
  291.     0  /* Filler3 */
  292. };