MDLRPC_C.C
上传用户:bangxh
上传日期:2007-01-31
资源大小:42235k
文件大小:7k
源码类别:

Windows编程

开发平台:

Visual C++

  1. /* this ALWAYS GENERATED file contains the RPC client stubs */
  2. /* File created by MIDL compiler version 3.03.0110 */
  3. /* at Mon Mar 30 03:08:06 1998
  4.  */
  5. /* Compiler settings for mdlrpc.idl:
  6.     Os (OptLev=s), W1, Zp8, env=Win32, ms_ext, c_ext, oldnames
  7.     error checks: none
  8. */
  9. //@@MIDL_FILE_HEADING(  )
  10. #include <string.h>
  11. #if defined( _ALPHA_ )
  12. #include <stdarg.h>
  13. #endif
  14. #include "mdlrpc.h"
  15. #define TYPE_FORMAT_STRING_SIZE   37                                
  16. #define PROC_FORMAT_STRING_SIZE   19                                
  17. typedef struct _MIDL_TYPE_FORMAT_STRING
  18.     {
  19.     short          Pad;
  20.     unsigned char  Format[ TYPE_FORMAT_STRING_SIZE ];
  21.     } MIDL_TYPE_FORMAT_STRING;
  22. typedef struct _MIDL_PROC_FORMAT_STRING
  23.     {
  24.     short          Pad;
  25.     unsigned char  Format[ PROC_FORMAT_STRING_SIZE ];
  26.     } MIDL_PROC_FORMAT_STRING;
  27. extern const MIDL_TYPE_FORMAT_STRING __MIDL_TypeFormatString;
  28. extern const MIDL_PROC_FORMAT_STRING __MIDL_ProcFormatString;
  29. /* Standard interface: mdlrpc, ver. 1.0,
  30.    GUID={0x5630EAA0,0xCA48,0x1067,{0xB3,0x20,0x00,0xDD,0x01,0x06,0x62,0xDA}} */
  31. handle_t hMandel;
  32. static const RPC_CLIENT_INTERFACE mdlrpc___RpcClientInterface =
  33.     {
  34.     sizeof(RPC_CLIENT_INTERFACE),
  35.     {{0x5630EAA0,0xCA48,0x1067,{0xB3,0x20,0x00,0xDD,0x01,0x06,0x62,0xDA}},{1,0}},
  36.     {{0x8A885D04,0x1CEB,0x11C9,{0x9F,0xE8,0x08,0x00,0x2B,0x10,0x48,0x60}},{2,0}},
  37.     0,
  38.     0,
  39.     0,
  40.     0,
  41.     0,
  42.     0
  43.     };
  44. RPC_IF_HANDLE mdlrpc_ClientIfHandle = (RPC_IF_HANDLE)& mdlrpc___RpcClientInterface;
  45. extern const MIDL_STUB_DESC mdlrpc_StubDesc;
  46. static RPC_BINDING_HANDLE mdlrpc__MIDL_AutoBindHandle;
  47. void MandelCalc( 
  48.     /* [in] */ PCPOINT pcptLL,
  49.     /* [in] */ PLONGRECT prcDraw,
  50.     /* [in] */ double precision,
  51.     /* [in] */ unsigned long ulThreshold,
  52.     /* [ref][out] */ LINEBUF __RPC_FAR *pbBuf)
  53. {
  54.     RPC_BINDING_HANDLE _Handle = 0;
  55.     
  56.     RPC_MESSAGE _RpcMessage;
  57.     
  58.     MIDL_STUB_MESSAGE _StubMsg;
  59.     
  60.     RpcTryFinally
  61.         {
  62.         NdrClientInitializeNew(
  63.                           ( PRPC_MESSAGE  )&_RpcMessage,
  64.                           ( PMIDL_STUB_MESSAGE  )&_StubMsg,
  65.                           ( PMIDL_STUB_DESC  )&mdlrpc_StubDesc,
  66.                           0);
  67.         
  68.         
  69.         _Handle = hMandel;
  70.         
  71.         
  72.         _StubMsg.BufferLength = 0U + 0U + 23U + 8U;
  73.         NdrSimpleStructBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg,
  74.                                    (unsigned char __RPC_FAR *)pcptLL,
  75.                                    (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[4] );
  76.         
  77.         NdrSimpleStructBufferSize( (PMIDL_STUB_MESSAGE) &_StubMsg,
  78.                                    (unsigned char __RPC_FAR *)prcDraw,
  79.                                    (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[16] );
  80.         
  81.         NdrGetBuffer( (PMIDL_STUB_MESSAGE) &_StubMsg, _StubMsg.BufferLength, _Handle );
  82.         
  83.         NdrSimpleStructMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg,
  84.                                  (unsigned char __RPC_FAR *)pcptLL,
  85.                                  (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[4] );
  86.         
  87.         NdrSimpleStructMarshall( (PMIDL_STUB_MESSAGE)& _StubMsg,
  88.                                  (unsigned char __RPC_FAR *)prcDraw,
  89.                                  (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[16] );
  90.         
  91.         *(( double __RPC_FAR * )_StubMsg.Buffer)++ = precision;
  92.         
  93.         *(( unsigned long __RPC_FAR * )_StubMsg.Buffer)++ = ulThreshold;
  94.         
  95.         NdrSendReceive( (PMIDL_STUB_MESSAGE) &_StubMsg, (unsigned char __RPC_FAR *) _StubMsg.Buffer );
  96.         
  97.         if ( (_RpcMessage.DataRepresentation & 0X0000FFFFUL) != NDR_LOCAL_DATA_REPRESENTATION )
  98.             NdrConvert( (PMIDL_STUB_MESSAGE) &_StubMsg, (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[0] );
  99.         
  100.         NdrFixedArrayUnmarshall( (PMIDL_STUB_MESSAGE) &_StubMsg,
  101.                                  (unsigned char __RPC_FAR * __RPC_FAR *)&pbBuf,
  102.                                  (PFORMAT_STRING) &__MIDL_TypeFormatString.Format[30],
  103.                                  (unsigned char)0 );
  104.         
  105.         }
  106.     RpcFinally
  107.         {
  108.         NdrFreeBuffer( (PMIDL_STUB_MESSAGE) &_StubMsg );
  109.         
  110.         }
  111.     RpcEndFinally
  112.     
  113. }
  114. static const MIDL_STUB_DESC mdlrpc_StubDesc = 
  115.     {
  116.     (void __RPC_FAR *)& mdlrpc___RpcClientInterface,
  117.     MIDL_user_allocate,
  118.     MIDL_user_free,
  119.     &hMandel,
  120.     0,
  121.     0,
  122.     0,
  123.     0,
  124.     __MIDL_TypeFormatString.Format,
  125.     0, /* -error bounds_check flag */
  126.     0x10001, /* Ndr library version */
  127.     0,
  128.     0x303006e, /* MIDL Version 3.3.110 */
  129.     0,
  130.     0,
  131.     0,  /* Reserved1 */
  132.     0,  /* Reserved2 */
  133.     0,  /* Reserved3 */
  134.     0,  /* Reserved4 */
  135.     0   /* Reserved5 */
  136.     };
  137. #if !defined(__RPC_WIN32__)
  138. #error  Invalid build platform for this stub.
  139. #endif
  140. static const MIDL_PROC_FORMAT_STRING __MIDL_ProcFormatString =
  141.     {
  142.         0,
  143.         {
  144. 0x4d, /* FC_IN_PARAM */
  145. #ifndef _ALPHA_
  146. 0x1, /* x86, MIPS & PPC Stack size = 1 */
  147. #else
  148. 0x2, /* Alpha Stack size = 2 */
  149. #endif
  150. /*  2 */ NdrFcShort( 0x0 ), /* Type Offset=0 */
  151. /*  4 */
  152. 0x4d, /* FC_IN_PARAM */
  153. #ifndef _ALPHA_
  154. 0x1, /* x86, MIPS & PPC Stack size = 1 */
  155. #else
  156. 0x2, /* Alpha Stack size = 2 */
  157. #endif
  158. /*  6 */ NdrFcShort( 0xc ), /* Type Offset=12 */
  159. /*  8 */ 0x4e, /* FC_IN_PARAM_BASETYPE */
  160. 0xc, /* FC_DOUBLE */
  161. /* 10 */ 0x4e, /* FC_IN_PARAM_BASETYPE */
  162. 0x8, /* FC_LONG */
  163. /* 12 */
  164. 0x51, /* FC_OUT_PARAM */
  165. #ifndef _ALPHA_
  166. 0x1, /* x86, MIPS & PPC Stack size = 1 */
  167. #else
  168. 0x2, /* Alpha Stack size = 2 */
  169. #endif
  170. /* 14 */ NdrFcShort( 0x1a ), /* Type Offset=26 */
  171. /* 16 */ 0x5b, /* FC_END */
  172. 0x5c, /* FC_PAD */
  173. 0x0
  174.         }
  175.     };
  176. static const MIDL_TYPE_FORMAT_STRING __MIDL_TypeFormatString =
  177.     {
  178.         0,
  179.         {
  180. 0x11, 0x0, /* FC_RP */
  181. /*  2 */ NdrFcShort( 0x2 ), /* Offset= 2 (4) */
  182. /*  4 */
  183. 0x15, /* FC_STRUCT */
  184. 0x7, /* 7 */
  185. /*  6 */ NdrFcShort( 0x10 ), /* 16 */
  186. /*  8 */ 0xc, /* FC_DOUBLE */
  187. 0xc, /* FC_DOUBLE */
  188. /* 10 */ 0x5c, /* FC_PAD */
  189. 0x5b, /* FC_END */
  190. /* 12 */
  191. 0x11, 0x0, /* FC_RP */
  192. /* 14 */ NdrFcShort( 0x2 ), /* Offset= 2 (16) */
  193. /* 16 */
  194. 0x15, /* FC_STRUCT */
  195. 0x3, /* 3 */
  196. /* 18 */ NdrFcShort( 0x10 ), /* 16 */
  197. /* 20 */ 0x8, /* FC_LONG */
  198. 0x8, /* FC_LONG */
  199. /* 22 */ 0x8, /* FC_LONG */
  200. 0x8, /* FC_LONG */
  201. /* 24 */ 0x5c, /* FC_PAD */
  202. 0x5b, /* FC_END */
  203. /* 26 */
  204. 0x11, 0x4, /* FC_RP [alloced_on_stack] */
  205. /* 28 */ NdrFcShort( 0x2 ), /* Offset= 2 (30) */
  206. /* 30 */
  207. 0x1d, /* FC_SMFARRAY */
  208. 0x1, /* 1 */
  209. /* 32 */ NdrFcShort( 0x960 ), /* 2400 */
  210. /* 34 */ 0x6, /* FC_SHORT */
  211. 0x5b, /* FC_END */
  212. 0x0
  213.         }
  214.     };