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

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:39 1998
  4.  */
  5. /* Compiler settings for pipe.idl:
  6.     Os (OptLev=s), W1, Zp8, env=Win32, ms_ext, c_ext
  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 "pipe.h"
  15. #define TYPE_FORMAT_STRING_SIZE   15                                
  16. #define PROC_FORMAT_STRING_SIZE   27                                
  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: pipe_sample, ver. 1.0,
  30.    GUID={0x60ceb4a0,0xc2f1,0x11cf,{0x95,0x56,0x00,0xaa,0x00,0x37,0x4e,0x69}} */
  31. handle_t global_pipe_sample_handle;
  32. static const RPC_CLIENT_INTERFACE pipe_sample___RpcClientInterface =
  33.     {
  34.     sizeof(RPC_CLIENT_INTERFACE),
  35.     {{0x60ceb4a0,0xc2f1,0x11cf,{0x95,0x56,0x00,0xaa,0x00,0x37,0x4e,0x69}},{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.     RPC_INTERFACE_HAS_PIPES
  43.     };
  44. RPC_IF_HANDLE pipe_sample_v1_0_c_ifspec = (RPC_IF_HANDLE)& pipe_sample___RpcClientInterface;
  45. extern const MIDL_STUB_DESC pipe_sample_StubDesc;
  46. static RPC_BINDING_HANDLE pipe_sample__MIDL_AutoBindHandle;
  47. void ScrambleFile( 
  48.     /* [in] */ unsigned long Action,
  49.     /* [out][in] */ CHAR_PIPE_TYPE __RPC_FAR *pipe_data)
  50. {
  51.     
  52. #if defined( _ALPHA_ )
  53.     va_list vlist;
  54. #endif
  55.     
  56. #if defined( _ALPHA_ )
  57.     va_start(vlist,pipe_data);
  58.     NdrClientCall2(
  59.                   ( PMIDL_STUB_DESC  )&pipe_sample_StubDesc,
  60.                   (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[0],
  61.                   vlist.a0);
  62. #elif defined( _PPC_ ) || defined( _MIPS_ )
  63.     NdrClientCall2(
  64.                   ( PMIDL_STUB_DESC  )&pipe_sample_StubDesc,
  65.                   (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[0],
  66.                   ( unsigned char __RPC_FAR * )&Action,
  67.                   ( unsigned char __RPC_FAR * )&pipe_data);
  68. #else
  69.     NdrClientCall2(
  70.                   ( PMIDL_STUB_DESC  )&pipe_sample_StubDesc,
  71.                   (PFORMAT_STRING) &__MIDL_ProcFormatString.Format[0],
  72.                   ( unsigned char __RPC_FAR * )&Action);
  73. #endif
  74.     
  75. }
  76. void ShutDown( void)
  77. {
  78.     RPC_BINDING_HANDLE _Handle = 0;
  79.     
  80.     RPC_MESSAGE _RpcMessage;
  81.     
  82.     MIDL_STUB_MESSAGE _StubMsg;
  83.     
  84.     RpcTryFinally
  85.         {
  86.         NdrClientInitializeNew(
  87.                           ( PRPC_MESSAGE  )&_RpcMessage,
  88.                           ( PMIDL_STUB_MESSAGE  )&_StubMsg,
  89.                           ( PMIDL_STUB_DESC  )&pipe_sample_StubDesc,
  90.                           1);
  91.         
  92.         
  93.         _Handle = global_pipe_sample_handle;
  94.         
  95.         
  96.         _StubMsg.BufferLength = 0U;
  97.         NdrGetBuffer( (PMIDL_STUB_MESSAGE) &_StubMsg, _StubMsg.BufferLength, _Handle );
  98.         
  99.         NdrSendReceive( (PMIDL_STUB_MESSAGE) &_StubMsg, (unsigned char __RPC_FAR *) _StubMsg.Buffer );
  100.         
  101.         }
  102.     RpcFinally
  103.         {
  104.         NdrFreeBuffer( (PMIDL_STUB_MESSAGE) &_StubMsg );
  105.         
  106.         }
  107.     RpcEndFinally
  108.     
  109. }
  110. static const MIDL_STUB_DESC pipe_sample_StubDesc = 
  111.     {
  112.     (void __RPC_FAR *)& pipe_sample___RpcClientInterface,
  113.     MIDL_user_allocate,
  114.     MIDL_user_free,
  115.     &global_pipe_sample_handle,
  116.     0,
  117.     0,
  118.     0,
  119.     0,
  120.     __MIDL_TypeFormatString.Format,
  121.     0, /* -error bounds_check flag */
  122.     0x20000, /* Ndr library version */
  123.     0,
  124.     0x303006e, /* MIDL Version 3.3.110 */
  125.     0,
  126.     0,
  127.     0,  /* Reserved1 */
  128.     0,  /* Reserved2 */
  129.     0,  /* Reserved3 */
  130.     0,  /* Reserved4 */
  131.     0   /* Reserved5 */
  132.     };
  133. #if !defined(__RPC_WIN32__)
  134. #error  Invalid build platform for this stub.
  135. #endif
  136. #if !(TARGET_IS_NT40_OR_LATER)
  137. #error You need a Windows NT 4.0 or later to run this stub because it uses these features:
  138. #error   -Oif or -Oicf, idl pipes.
  139. #error However, your C/C++ compilation flags indicate you intend to run this app on earlier systems.
  140. #error This app will die there with the RPC_X_WRONG_STUB_VERSION error.
  141. #endif
  142. static const MIDL_PROC_FORMAT_STRING __MIDL_ProcFormatString =
  143.     {
  144.         0,
  145.         {
  146. /* Procedure ScrambleFile */
  147. 0x32, /* FC_BIND_PRIMITIVE */
  148. 0x40, /* 64 */
  149. /*  2 */ NdrFcShort( 0x0 ), /* 0 */
  150. #ifndef _ALPHA_
  151. /*  4 */ NdrFcShort( 0x8 ), /* x86, MIPS, PPC Stack size/offset = 8 */
  152. #else
  153. NdrFcShort( 0x10 ), /* Alpha Stack size/offset = 16 */
  154. #endif
  155. /*  6 */ NdrFcShort( 0x8 ), /* 8 */
  156. /*  8 */ NdrFcShort( 0x0 ), /* 0 */
  157. /* 10 */ 0x8, /* 8 */
  158. 0x2, /* 2 */
  159. /* Parameter Action */
  160. /* 12 */ NdrFcShort( 0x48 ), /* 72 */
  161. #ifndef _ALPHA_
  162. /* 14 */ NdrFcShort( 0x0 ), /* x86, MIPS, PPC Stack size/offset = 0 */
  163. #else
  164. NdrFcShort( 0x0 ), /* Alpha Stack size/offset = 0 */
  165. #endif
  166. /* 16 */ 0x8, /* FC_LONG */
  167. 0x0, /* 0 */
  168. /* Parameter pipe_data */
  169. /* 18 */ NdrFcShort( 0x11c ), /* 284 */
  170. #ifndef _ALPHA_
  171. /* 20 */ NdrFcShort( 0x4 ), /* x86, MIPS, PPC Stack size/offset = 4 */
  172. #else
  173. NdrFcShort( 0x8 ), /* Alpha Stack size/offset = 8 */
  174. #endif
  175. /* 22 */ NdrFcShort( 0x6 ), /* Type Offset=6 */
  176. /* 24 */ 0x5b, /* FC_END */
  177. 0x5c, /* FC_PAD */
  178. 0x0
  179.         }
  180.     };
  181. static const MIDL_TYPE_FORMAT_STRING __MIDL_TypeFormatString =
  182.     {
  183.         0,
  184.         {
  185. 0x11, 0x0, /* FC_RP */
  186. /*  2 */ NdrFcShort( 0x4 ), /* Offset= 4 (6) */
  187. /*  4 */ 0x2, /* FC_CHAR */
  188. 0x5c, /* FC_PAD */
  189. /*  6 */ 0xb5, /* FC_PIPE */
  190. 0x0, /* 0 */
  191. /*  8 */ NdrFcShort( 0xfffffffc ), /* Offset= -4 (4) */
  192. /* 10 */ NdrFcShort( 0x1 ), /* 1 */
  193. /* 12 */ NdrFcShort( 0x1 ), /* 1 */
  194. 0x0
  195.         }
  196.     };