Hex Artifact Content

Not logged in

Artifact 6e8b38d25172649851b66886622d4c5468c2f577:


0000: 2f 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  /***************
0010: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0020: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0030: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0040: 2a 2a 2a 2a 2a 2a 2a 2a 5c 0a 2a 20 20 20 20 20  ********\.*     
0050: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0060: 20 20 20 20 20 20 20 20 20 20 20 6f 62 6a 69 64             objid
0070: 6c 2e 64 20 20 20 20 20 20 20 20 20 20 20 20 20  l.d             
0080: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0090: 20 20 2a 0a 2a 20 20 20 20 20 20 20 20 20 20 20    *.*           
00a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
00b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
00c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
00d0: 20 20 20 20 20 20 20 20 20 20 20 20 2a 0a 2a 20              *.* 
00e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
00f0: 20 20 20 20 20 20 57 69 6e 64 6f 77 73 20 41 50        Windows AP
0100: 49 20 68 65 61 64 65 72 20 6d 6f 64 75 6c 65 20  I header module 
0110: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0120: 20 20 20 20 20 20 2a 0a 2a 20 20 20 20 20 20 20        *.*       
0130: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0140: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0150: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0160: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0170: 2a 0a 2a 20 20 20 20 20 20 20 20 20 20 20 20 20  *.*             
0180: 20 20 20 20 54 72 61 6e 73 6c 61 74 65 64 20 66      Translated f
0190: 72 6f 6d 20 4d 69 6e 47 57 20 57 69 6e 64 6f 77  rom MinGW Window
01a0: 73 20 68 65 61 64 65 72 73 20 20 20 20 20 20 20  s headers       
01b0: 20 20 20 20 20 20 20 20 20 20 2a 0a 2a 20 20 20            *.*   
01c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
01d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
01e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
01f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0200: 20 20 20 20 2a 0a 2a 20 20 20 20 20 20 20 20 20      *.*         
0210: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 50 6c                Pl
0220: 61 63 65 64 20 69 6e 74 6f 20 70 75 62 6c 69 63  aced into public
0230: 20 64 6f 6d 61 69 6e 20 20 20 20 20 20 20 20 20   domain         
0240: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2a 0a                *.
0250: 5c 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  \***************
0260: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0270: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0280: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0290: 2a 2a 2a 2a 2a 2a 2a 2a 2f 0a 2f 2f 20 54 4f 44  ********/.// TOD
02a0: 4f 20 28 44 6f 6e 29 3a 0a 2f 2f 20 23 20 77 68  O (Don):.// # wh
02b0: 79 20 69 73 20 22 61 6c 69 61 73 20 49 50 53 46  y is "alias IPSF
02c0: 61 63 74 6f 72 79 42 75 66 66 65 72 2a 20 4c 50  actoryBuffer* LP
02d0: 50 53 46 41 43 54 4f 52 59 42 55 46 46 45 52 3b  PSFACTORYBUFFER;
02e0: 22 20 69 6e 20 74 68 69 73 20 66 69 6c 65 2c 0a  " in this file,.
02f0: 2f 2f 20 72 61 74 68 65 72 20 74 68 61 6e 20 69  // rather than i
0300: 6e 20 6f 62 6a 66 77 64 20 3f 0a 2f 2f 20 23 20  n objfwd ?.// # 
0310: 64 6f 20 77 65 20 6e 65 65 64 20 74 68 65 20 70  do we need the p
0320: 72 6f 78 69 65 73 20 74 68 61 74 20 61 72 65 20  roxies that are 
0330: 64 65 66 69 6e 65 64 20 69 6e 20 74 68 69 73 20  defined in this 
0340: 66 69 6c 65 3f 0a 6d 6f 64 75 6c 65 20 77 69 6e  file?.module win
0350: 33 32 2e 6f 62 6a 69 64 6c 3b 0a 0a 69 6d 70 6f  32.objidl;..impo
0360: 72 74 20 77 69 6e 33 32 2e 75 6e 6b 6e 77 6e 3b  rt win32.unknwn;
0370: 0a 69 6d 70 6f 72 74 20 77 69 6e 33 32 2e 6f 62  .import win32.ob
0380: 6a 66 77 64 3b 0a 70 72 69 76 61 74 65 20 69 6d  jfwd;.private im
0390: 70 6f 72 74 20 77 69 6e 33 32 2e 77 69 6e 64 65  port win32.winde
03a0: 66 3b 0a 70 72 69 76 61 74 65 20 69 6d 70 6f 72  f;.private impor
03b0: 74 20 77 69 6e 33 32 2e 62 61 73 65 74 79 70 73  t win32.basetyps
03c0: 3b 0a 70 72 69 76 61 74 65 20 69 6d 70 6f 72 74  ;.private import
03d0: 20 77 69 6e 33 32 2e 6f 6c 65 69 64 6c 3b 0a 70   win32.oleidl;.p
03e0: 72 69 76 61 74 65 20 69 6d 70 6f 72 74 20 77 69  rivate import wi
03f0: 6e 33 32 2e 77 74 79 70 65 73 3b 0a 70 72 69 76  n32.wtypes;.priv
0400: 61 74 65 20 69 6d 70 6f 72 74 20 77 69 6e 33 32  ate import win32
0410: 2e 77 69 6e 62 61 73 65 3b 20 2f 2f 20 66 6f 72  .winbase; // for
0420: 20 46 49 4c 45 54 49 4d 45 0a 70 72 69 76 61 74   FILETIME.privat
0430: 65 20 69 6d 70 6f 72 74 20 77 69 6e 33 32 2e 72  e import win32.r
0440: 70 63 64 63 65 3b 0a 0a 73 74 72 75 63 74 20 20  pcdce;..struct  
0450: 53 54 41 54 53 54 47 20 7b 0a 09 4c 50 4f 4c 45  STATSTG {..LPOLE
0460: 53 54 52 20 70 77 63 73 4e 61 6d 65 3b 0a 09 44  STR pwcsName;..D
0470: 57 4f 52 44 20 74 79 70 65 3b 0a 09 55 4c 41 52  WORD type;..ULAR
0480: 47 45 5f 49 4e 54 45 47 45 52 20 63 62 53 69 7a  GE_INTEGER cbSiz
0490: 65 3b 0a 09 46 49 4c 45 54 49 4d 45 20 6d 74 69  e;..FILETIME mti
04a0: 6d 65 3b 0a 09 46 49 4c 45 54 49 4d 45 20 63 74  me;..FILETIME ct
04b0: 69 6d 65 3b 0a 09 46 49 4c 45 54 49 4d 45 20 61  ime;..FILETIME a
04c0: 74 69 6d 65 3b 0a 09 44 57 4f 52 44 20 67 72 66  time;..DWORD grf
04d0: 4d 6f 64 65 3b 0a 09 44 57 4f 52 44 20 67 72 66  Mode;..DWORD grf
04e0: 4c 6f 63 6b 73 53 75 70 70 6f 72 74 65 64 3b 0a  LocksSupported;.
04f0: 09 43 4c 53 49 44 20 63 6c 73 69 64 3b 0a 09 44  .CLSID clsid;..D
0500: 57 4f 52 44 20 67 72 66 53 74 61 74 65 42 69 74  WORD grfStateBit
0510: 73 3b 0a 09 44 57 4f 52 44 20 72 65 73 65 72 76  s;..DWORD reserv
0520: 65 64 3b 0a 7d 0a 0a 65 6e 75 6d 20 53 54 47 54  ed;.}..enum STGT
0530: 59 20 7b 0a 09 53 54 47 54 59 5f 53 54 4f 52 41  Y {..STGTY_STORA
0540: 47 45 20 3d 20 31 2c 0a 09 53 54 47 54 59 5f 53  GE = 1,..STGTY_S
0550: 54 52 45 41 4d 2c 0a 09 53 54 47 54 59 5f 4c 4f  TREAM,..STGTY_LO
0560: 43 4b 42 59 54 45 53 2c 0a 09 53 54 47 54 59 5f  CKBYTES,..STGTY_
0570: 50 52 4f 50 45 52 54 59 0a 7d 0a 0a 65 6e 75 6d  PROPERTY.}..enum
0580: 20 53 54 52 45 41 4d 5f 53 45 45 4b 20 7b 0a 09   STREAM_SEEK {..
0590: 53 54 52 45 41 4d 5f 53 45 45 4b 5f 53 45 54 2c  STREAM_SEEK_SET,
05a0: 0a 09 53 54 52 45 41 4d 5f 53 45 45 4b 5f 43 55  ..STREAM_SEEK_CU
05b0: 52 2c 0a 09 53 54 52 45 41 4d 5f 53 45 45 4b 5f  R,..STREAM_SEEK_
05c0: 45 4e 44 0a 7d 0a 0a 73 74 72 75 63 74 20 49 4e  END.}..struct IN
05d0: 54 45 52 46 41 43 45 49 4e 46 4f 20 7b 0a 09 4c  TERFACEINFO {..L
05e0: 50 55 4e 4b 4e 4f 57 4e 20 70 55 6e 6b 3b 0a 09  PUNKNOWN pUnk;..
05f0: 49 49 44 20 69 69 64 3b 0a 09 57 4f 52 44 20 77  IID iid;..WORD w
0600: 4d 65 74 68 6f 64 3b 0a 7d 0a 61 6c 69 61 73 20  Method;.}.alias 
0610: 49 4e 54 45 52 46 41 43 45 49 4e 46 4f 2a 20 4c  INTERFACEINFO* L
0620: 50 49 4e 54 45 52 46 41 43 45 49 4e 46 4f 3b 0a  PINTERFACEINFO;.
0630: 0a 65 6e 75 6d 20 43 41 4c 4c 54 59 50 45 20 7b  .enum CALLTYPE {
0640: 0a 09 43 41 4c 4c 54 59 50 45 5f 54 4f 50 4c 45  ..CALLTYPE_TOPLE
0650: 56 45 4c 20 3d 20 31 2c 0a 09 43 41 4c 4c 54 59  VEL = 1,..CALLTY
0660: 50 45 5f 4e 45 53 54 45 44 2c 0a 09 43 41 4c 4c  PE_NESTED,..CALL
0670: 54 59 50 45 5f 41 53 59 4e 43 2c 0a 09 43 41 4c  TYPE_ASYNC,..CAL
0680: 4c 54 59 50 45 5f 54 4f 50 4c 45 56 45 4c 5f 43  LTYPE_TOPLEVEL_C
0690: 41 4c 4c 50 45 4e 44 49 4e 47 2c 0a 09 43 41 4c  ALLPENDING,..CAL
06a0: 4c 54 59 50 45 5f 41 53 59 4e 43 5f 43 41 4c 4c  LTYPE_ASYNC_CALL
06b0: 50 45 4e 44 49 4e 47 0a 7d 0a 0a 65 6e 75 6d 20  PENDING.}..enum 
06c0: 50 45 4e 44 49 4e 47 54 59 50 45 20 7b 0a 09 50  PENDINGTYPE {..P
06d0: 45 4e 44 49 4e 47 54 59 50 45 5f 54 4f 50 4c 45  ENDINGTYPE_TOPLE
06e0: 56 45 4c 20 3d 20 31 2c 0a 09 50 45 4e 44 49 4e  VEL = 1,..PENDIN
06f0: 47 54 59 50 45 5f 4e 45 53 54 45 44 0a 7d 0a 0a  GTYPE_NESTED.}..
0700: 65 6e 75 6d 20 50 45 4e 44 49 4e 47 4d 53 47 20  enum PENDINGMSG 
0710: 7b 0a 09 50 45 4e 44 49 4e 47 4d 53 47 5f 43 41  {..PENDINGMSG_CA
0720: 4e 43 45 4c 43 41 4c 4c 20 3d 20 30 2c 0a 09 50  NCELCALL = 0,..P
0730: 45 4e 44 49 4e 47 4d 53 47 5f 57 41 49 54 4e 4f  ENDINGMSG_WAITNO
0740: 50 52 4f 43 45 53 53 2c 0a 09 50 45 4e 44 49 4e  PROCESS,..PENDIN
0750: 47 4d 53 47 5f 57 41 49 54 44 45 46 50 52 4f 43  GMSG_WAITDEFPROC
0760: 45 53 53 0a 7d 0a 0a 61 6c 69 61 73 20 4f 4c 45  ESS.}..alias OLE
0770: 43 48 41 52 2a 2a 20 53 4e 42 3b 0a 0a 65 6e 75  CHAR** SNB;..enu
0780: 6d 20 44 41 54 41 44 49 52 20 7b 0a 09 44 41 54  m DATADIR {..DAT
0790: 41 44 49 52 5f 47 45 54 20 3d 20 31 2c 0a 09 44  ADIR_GET = 1,..D
07a0: 41 54 41 44 49 52 5f 53 45 54 0a 7d 0a 61 6c 69  ATADIR_SET.}.ali
07b0: 61 73 20 57 4f 52 44 20 43 4c 49 50 46 4f 52 4d  as WORD CLIPFORM
07c0: 41 54 3b 0a 61 6c 69 61 73 20 43 4c 49 50 46 4f  AT;.alias CLIPFO
07d0: 52 4d 41 54 2a 20 4c 50 43 4c 49 50 46 4f 52 4d  RMAT* LPCLIPFORM
07e0: 41 54 3b 0a 0a 73 74 72 75 63 74 20 44 56 54 41  AT;..struct DVTA
07f0: 52 47 45 54 44 45 56 49 43 45 20 7b 0a 09 44 57  RGETDEVICE {..DW
0800: 4f 52 44 20 74 64 53 69 7a 65 3b 0a 09 57 4f 52  ORD tdSize;..WOR
0810: 44 20 74 64 44 72 69 76 65 72 4e 61 6d 65 4f 66  D tdDriverNameOf
0820: 66 73 65 74 3b 0a 09 57 4f 52 44 20 74 64 44 65  fset;..WORD tdDe
0830: 76 69 63 65 4e 61 6d 65 4f 66 66 73 65 74 3b 0a  viceNameOffset;.
0840: 09 57 4f 52 44 20 74 64 50 6f 72 74 4e 61 6d 65  .WORD tdPortName
0850: 4f 66 66 73 65 74 3b 0a 09 57 4f 52 44 20 74 64  Offset;..WORD td
0860: 45 78 74 44 65 76 6d 6f 64 65 4f 66 66 73 65 74  ExtDevmodeOffset
0870: 3b 0a 09 42 59 54 45 20 74 64 44 61 74 61 5b 31  ;..BYTE tdData[1
0880: 5d 3b 0a 7d 0a 0a 73 74 72 75 63 74 20 46 4f 52  ];.}..struct FOR
0890: 4d 41 54 45 54 43 20 7b 0a 09 43 4c 49 50 46 4f  MATETC {..CLIPFO
08a0: 52 4d 41 54 20 63 66 46 6f 72 6d 61 74 3b 0a 09  RMAT cfFormat;..
08b0: 44 56 54 41 52 47 45 54 44 45 56 49 43 45 2a 20  DVTARGETDEVICE* 
08c0: 70 74 64 3b 0a 09 44 57 4f 52 44 20 64 77 41 73  ptd;..DWORD dwAs
08d0: 70 65 63 74 3b 0a 09 4c 4f 4e 47 20 6c 69 6e 64  pect;..LONG lind
08e0: 65 78 3b 0a 09 44 57 4f 52 44 20 74 79 6d 65 64  ex;..DWORD tymed
08f0: 3b 0a 7d 0a 61 6c 69 61 73 20 46 4f 52 4d 41 54  ;.}.alias FORMAT
0900: 45 54 43 2a 20 4c 50 46 4f 52 4d 41 54 45 54 43  ETC* LPFORMATETC
0910: 3b 0a 0a 73 74 72 75 63 74 20 52 65 6d 53 54 47  ;..struct RemSTG
0920: 4d 45 44 49 55 4d 20 7b 0a 09 44 57 4f 52 44 20  MEDIUM {..DWORD 
0930: 74 79 6d 65 64 3b 0a 09 44 57 4f 52 44 20 64 77  tymed;..DWORD dw
0940: 48 61 6e 64 6c 65 54 79 70 65 3b 0a 09 55 4c 4f  HandleType;..ULO
0950: 4e 47 20 70 44 61 74 61 3b 0a 09 75 69 6e 74 20  NG pData;..uint 
0960: 70 55 6e 6b 46 6f 72 52 65 6c 65 61 73 65 3b 0a  pUnkForRelease;.
0970: 09 75 69 6e 74 20 63 62 44 61 74 61 3b 0a 09 42  .uint cbData;..B
0980: 59 54 45 20 64 61 74 61 5b 31 5d 3b 0a 7d 0a 0a  YTE data[1];.}..
0990: 73 74 72 75 63 74 20 48 4c 49 54 45 4d 20 7b 0a  struct HLITEM {.
09a0: 09 55 4c 4f 4e 47 20 75 48 4c 49 44 3b 0a 09 4c  .ULONG uHLID;..L
09b0: 50 57 53 54 52 20 70 77 7a 46 72 69 65 6e 64 6c  PWSTR pwzFriendl
09c0: 79 4e 61 6d 65 3b 0a 7d 0a 0a 73 74 72 75 63 74  yName;.}..struct
09d0: 20 53 54 41 54 44 41 54 41 20 7b 0a 09 46 4f 52   STATDATA {..FOR
09e0: 4d 41 54 45 54 43 20 66 6f 72 6d 61 74 65 74 63  MATETC formatetc
09f0: 3b 0a 09 44 57 4f 52 44 20 67 72 66 41 64 76 66  ;..DWORD grfAdvf
0a00: 3b 0a 09 49 41 64 76 69 73 65 53 69 6e 6b 2a 20  ;..IAdviseSink* 
0a10: 70 41 64 76 53 69 6e 6b 3b 0a 09 44 57 4f 52 44  pAdvSink;..DWORD
0a20: 20 64 77 43 6f 6e 6e 65 63 74 69 6f 6e 3b 0a 7d   dwConnection;.}
0a30: 0a 0a 73 74 72 75 63 74 20 53 54 41 54 50 52 4f  ..struct STATPRO
0a40: 50 53 45 54 53 54 47 20 7b 0a 09 46 4d 54 49 44  PSETSTG {..FMTID
0a50: 20 66 6d 74 69 64 3b 0a 09 43 4c 53 49 44 20 63   fmtid;..CLSID c
0a60: 6c 73 69 64 3b 0a 09 44 57 4f 52 44 20 67 72 66  lsid;..DWORD grf
0a70: 46 6c 61 67 73 3b 0a 09 46 49 4c 45 54 49 4d 45  Flags;..FILETIME
0a80: 20 6d 74 69 6d 65 3b 0a 09 46 49 4c 45 54 49 4d   mtime;..FILETIM
0a90: 45 20 63 74 69 6d 65 3b 0a 09 46 49 4c 45 54 49  E ctime;..FILETI
0aa0: 4d 45 20 61 74 69 6d 65 3b 0a 7d 0a 0a 65 6e 75  ME atime;.}..enu
0ab0: 6d 20 45 58 54 43 4f 4e 4e 20 7b 0a 09 45 58 54  m EXTCONN {..EXT
0ac0: 43 4f 4e 4e 5f 53 54 52 4f 4e 47 20 20 20 3d 20  CONN_STRONG   = 
0ad0: 31 2c 0a 09 45 58 54 43 4f 4e 4e 5f 57 45 41 4b  1,..EXTCONN_WEAK
0ae0: 20 20 20 20 20 3d 20 32 2c 0a 09 45 58 54 43 4f       = 2,..EXTCO
0af0: 4e 4e 5f 43 41 4c 4c 41 42 4c 45 20 3d 20 34 0a  NN_CALLABLE = 4.
0b00: 7d 0a 0a 73 74 72 75 63 74 20 4d 55 4c 54 49 5f  }..struct MULTI_
0b10: 51 49 20 7b 0a 09 43 50 74 72 21 28 49 49 44 29  QI {..CPtr!(IID)
0b20: 20 70 49 49 44 3b 0a 09 49 55 6e 6b 6e 6f 77 6e   pIID;..IUnknown
0b30: 20 20 20 70 49 74 66 3b 0a 09 48 52 45 53 55 4c     pItf;..HRESUL
0b40: 54 20 20 20 20 68 72 3b 0a 7d 0a 0a 73 74 72 75  T    hr;.}..stru
0b50: 63 74 20 41 55 54 48 5f 49 44 45 4e 54 49 54 59  ct AUTH_IDENTITY
0b60: 20 7b 0a 09 55 53 48 4f 52 54 2a 20 55 73 65 72   {..USHORT* User
0b70: 3b 0a 09 55 4c 4f 4e 47 20 55 73 65 72 4c 65 6e  ;..ULONG UserLen
0b80: 67 74 68 3b 0a 09 55 53 48 4f 52 54 2a 20 44 6f  gth;..USHORT* Do
0b90: 6d 61 69 6e 3b 0a 09 55 4c 4f 4e 47 20 44 6f 6d  main;..ULONG Dom
0ba0: 61 69 6e 4c 65 6e 67 74 68 3b 0a 09 55 53 48 4f  ainLength;..USHO
0bb0: 52 54 2a 20 50 61 73 73 77 6f 72 64 3b 0a 09 55  RT* Password;..U
0bc0: 4c 4f 4e 47 20 50 61 73 73 77 6f 72 64 4c 65 6e  LONG PasswordLen
0bd0: 67 74 68 3b 0a 09 55 4c 4f 4e 47 20 46 6c 61 67  gth;..ULONG Flag
0be0: 73 3b 0a 7d 0a 0a 73 74 72 75 63 74 20 43 4f 41  s;.}..struct COA
0bf0: 55 54 48 49 4e 46 4f 20 7b 0a 09 44 57 4f 52 44  UTHINFO {..DWORD
0c00: 20 64 77 41 75 74 68 6e 53 76 63 3b 0a 09 44 57   dwAuthnSvc;..DW
0c10: 4f 52 44 20 64 77 41 75 74 68 7a 53 76 63 3b 0a  ORD dwAuthzSvc;.
0c20: 09 4c 50 57 53 54 52 20 70 77 73 7a 53 65 72 76  .LPWSTR pwszServ
0c30: 65 72 50 72 69 6e 63 4e 61 6d 65 3b 0a 09 44 57  erPrincName;..DW
0c40: 4f 52 44 20 64 77 41 75 74 68 6e 4c 65 76 65 6c  ORD dwAuthnLevel
0c50: 3b 0a 09 44 57 4f 52 44 20 64 77 49 6d 70 65 72  ;..DWORD dwImper
0c60: 73 6f 6e 61 74 69 6f 6e 4c 65 76 65 6c 3b 0a 09  sonationLevel;..
0c70: 41 55 54 48 5f 49 44 45 4e 54 49 54 59 2a 20 70  AUTH_IDENTITY* p
0c80: 41 75 74 68 49 64 65 6e 74 69 74 79 44 61 74 61  AuthIdentityData
0c90: 3b 0a 09 44 57 4f 52 44 20 64 77 43 61 70 61 62  ;..DWORD dwCapab
0ca0: 69 6c 69 74 69 65 73 3b 0a 7d 0a 0a 73 74 72 75  ilities;.}..stru
0cb0: 63 74 20 20 43 4f 53 45 52 56 45 52 49 4e 46 4f  ct  COSERVERINFO
0cc0: 20 7b 0a 09 44 57 4f 52 44 20 64 77 52 65 73 65   {..DWORD dwRese
0cd0: 72 76 65 64 31 3b 0a 09 4c 50 57 53 54 52 20 70  rved1;..LPWSTR p
0ce0: 77 73 7a 4e 61 6d 65 3b 0a 09 43 4f 41 55 54 48  wszName;..COAUTH
0cf0: 49 4e 46 4f 2a 20 70 41 75 74 68 49 6e 66 6f 3b  INFO* pAuthInfo;
0d00: 0a 09 44 57 4f 52 44 20 64 77 52 65 73 65 72 76  ..DWORD dwReserv
0d10: 65 64 32 3b 0a 7d 0a 0a 73 74 72 75 63 74 20 42  ed2;.}..struct B
0d20: 49 4e 44 5f 4f 50 54 53 20 7b 0a 09 44 57 4f 52  IND_OPTS {..DWOR
0d30: 44 20 63 62 53 74 72 75 63 74 3b 0a 09 44 57 4f  D cbStruct;..DWO
0d40: 52 44 20 67 72 66 46 6c 61 67 73 3b 0a 09 44 57  RD grfFlags;..DW
0d50: 4f 52 44 20 67 72 66 4d 6f 64 65 3b 0a 09 44 57  ORD grfMode;..DW
0d60: 4f 52 44 20 64 77 54 69 63 6b 43 6f 75 6e 74 44  ORD dwTickCountD
0d70: 65 61 64 6c 69 6e 65 3b 0a 7d 0a 61 6c 69 61 73  eadline;.}.alias
0d80: 20 42 49 4e 44 5f 4f 50 54 53 2a 20 4c 50 42 49   BIND_OPTS* LPBI
0d90: 4e 44 5f 4f 50 54 53 3b 0a 0a 73 74 72 75 63 74  ND_OPTS;..struct
0da0: 20 42 49 4e 44 5f 4f 50 54 53 32 20 7b 0a 09 44   BIND_OPTS2 {..D
0db0: 57 4f 52 44 20 63 62 53 74 72 75 63 74 3b 0a 09  WORD cbStruct;..
0dc0: 44 57 4f 52 44 20 67 72 66 46 6c 61 67 73 3b 0a  DWORD grfFlags;.
0dd0: 09 44 57 4f 52 44 20 67 72 66 4d 6f 64 65 3b 0a  .DWORD grfMode;.
0de0: 09 44 57 4f 52 44 20 64 77 54 69 63 6b 43 6f 75  .DWORD dwTickCou
0df0: 6e 74 44 65 61 64 6c 69 6e 65 3b 0a 09 44 57 4f  ntDeadline;..DWO
0e00: 52 44 20 64 77 54 72 61 63 6b 46 6c 61 67 73 3b  RD dwTrackFlags;
0e10: 0a 09 44 57 4f 52 44 20 64 77 43 6c 61 73 73 43  ..DWORD dwClassC
0e20: 6f 6e 74 65 78 74 3b 0a 09 4c 43 49 44 20 6c 6f  ontext;..LCID lo
0e30: 63 61 6c 65 3b 0a 09 43 4f 53 45 52 56 45 52 49  cale;..COSERVERI
0e40: 4e 46 4f 2a 20 70 53 65 72 76 65 72 49 6e 66 6f  NFO* pServerInfo
0e50: 3b 0a 7d 0a 61 6c 69 61 73 20 42 49 4e 44 5f 4f  ;.}.alias BIND_O
0e60: 50 54 53 32 2a 20 4c 50 42 49 4e 44 5f 4f 50 54  PTS2* LPBIND_OPT
0e70: 53 32 3b 0a 0a 65 6e 75 6d 20 42 49 4e 44 5f 46  S2;..enum BIND_F
0e80: 4c 41 47 53 20 7b 0a 09 42 49 4e 44 5f 4d 41 59  LAGS {..BIND_MAY
0e90: 42 4f 54 48 45 52 55 53 45 52 20 3d 20 31 2c 0a  BOTHERUSER = 1,.
0ea0: 09 42 49 4e 44 5f 4a 55 53 54 54 45 53 54 45 58  .BIND_JUSTTESTEX
0eb0: 49 53 54 45 4e 43 45 0a 7d 0a 0a 73 74 72 75 63  ISTENCE.}..struc
0ec0: 74 20 53 54 47 4d 45 44 49 55 4d 20 7b 0a 09 44  t STGMEDIUM {..D
0ed0: 57 4f 52 44 20 74 79 6d 65 64 3b 0a 09 75 6e 69  WORD tymed;..uni
0ee0: 6f 6e 20 7b 0a 09 09 48 42 49 54 4d 41 50 20 68  on {...HBITMAP h
0ef0: 42 69 74 6d 61 70 3b 0a 09 09 50 56 4f 49 44 20  Bitmap;...PVOID 
0f00: 68 4d 65 74 61 46 69 6c 65 50 69 63 74 3b 0a 09  hMetaFilePict;..
0f10: 09 48 45 4e 48 4d 45 54 41 46 49 4c 45 20 68 45  .HENHMETAFILE hE
0f20: 6e 68 4d 65 74 61 46 69 6c 65 3b 0a 09 09 48 47  nhMetaFile;...HG
0f30: 4c 4f 42 41 4c 20 68 47 6c 6f 62 61 6c 3b 0a 09  LOBAL hGlobal;..
0f40: 09 4c 50 57 53 54 52 20 6c 70 73 7a 46 69 6c 65  .LPWSTR lpszFile
0f50: 4e 61 6d 65 3b 0a 09 09 4c 50 53 54 52 45 41 4d  Name;...LPSTREAM
0f60: 20 70 73 74 6d 3b 0a 09 09 4c 50 53 54 4f 52 41   pstm;...LPSTORA
0f70: 47 45 20 70 73 74 67 3b 0a 09 7d 0a 09 4c 50 55  GE pstg;..}..LPU
0f80: 4e 4b 4e 4f 57 4e 20 70 55 6e 6b 46 6f 72 52 65  NKNOWN pUnkForRe
0f90: 6c 65 61 73 65 3b 0a 7d 0a 61 6c 69 61 73 20 53  lease;.}.alias S
0fa0: 54 47 4d 45 44 49 55 4d 2a 20 4c 50 53 54 47 4d  TGMEDIUM* LPSTGM
0fb0: 45 44 49 55 4d 3b 0a 0a 65 6e 75 6d 20 4c 4f 43  EDIUM;..enum LOC
0fc0: 4b 54 59 50 45 20 7b 0a 09 4c 4f 43 4b 5f 57 52  KTYPE {..LOCK_WR
0fd0: 49 54 45 20 20 20 20 20 3d 20 31 2c 0a 09 4c 4f  ITE     = 1,..LO
0fe0: 43 4b 5f 45 58 43 4c 55 53 49 56 45 20 3d 20 32  CK_EXCLUSIVE = 2
0ff0: 2c 0a 09 4c 4f 43 4b 5f 4f 4e 4c 59 4f 4e 43 45  ,..LOCK_ONLYONCE
1000: 20 20 3d 20 34 0a 7d 0a 0a 61 6c 69 61 73 20 75    = 4.}..alias u
1010: 69 6e 74 20 52 50 43 4f 4c 45 44 41 54 41 52 45  int RPCOLEDATARE
1020: 50 3b 0a 0a 73 74 72 75 63 74 20 20 52 50 43 4f  P;..struct  RPCO
1030: 4c 45 4d 45 53 53 41 47 45 20 7b 0a 09 50 56 4f  LEMESSAGE {..PVO
1040: 49 44 20 72 65 73 65 72 76 65 64 31 3b 0a 09 52  ID reserved1;..R
1050: 50 43 4f 4c 45 44 41 54 41 52 45 50 20 64 61 74  PCOLEDATAREP dat
1060: 61 52 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 3b  aRepresentation;
1070: 0a 09 50 56 4f 49 44 20 42 75 66 66 65 72 3b 0a  ..PVOID Buffer;.
1080: 09 55 4c 4f 4e 47 20 63 62 42 75 66 66 65 72 3b  .ULONG cbBuffer;
1090: 0a 09 55 4c 4f 4e 47 20 69 4d 65 74 68 6f 64 3b  ..ULONG iMethod;
10a0: 0a 09 50 56 4f 49 44 20 72 65 73 65 72 76 65 64  ..PVOID reserved
10b0: 32 5b 35 5d 3b 0a 09 55 4c 4f 4e 47 20 72 70 63  2[5];..ULONG rpc
10c0: 46 6c 61 67 73 3b 0a 7d 0a 61 6c 69 61 73 20 52  Flags;.}.alias R
10d0: 50 43 4f 4c 45 4d 45 53 53 41 47 45 2a 20 50 52  PCOLEMESSAGE* PR
10e0: 50 43 4f 4c 45 4d 45 53 53 41 47 45 3b 0a 0a 65  PCOLEMESSAGE;..e
10f0: 6e 75 6d 20 4d 4b 53 59 53 20 7b 0a 09 4d 4b 53  num MKSYS {..MKS
1100: 59 53 5f 4e 4f 4e 45 2c 0a 09 4d 4b 53 59 53 5f  YS_NONE,..MKSYS_
1110: 47 45 4e 45 52 49 43 43 4f 4d 50 4f 53 49 54 45  GENERICCOMPOSITE
1120: 2c 0a 09 4d 4b 53 59 53 5f 46 49 4c 45 4d 4f 4e  ,..MKSYS_FILEMON
1130: 49 4b 45 52 2c 0a 09 4d 4b 53 59 53 5f 41 4e 54  IKER,..MKSYS_ANT
1140: 49 4d 4f 4e 49 4b 45 52 2c 0a 09 4d 4b 53 59 53  IMONIKER,..MKSYS
1150: 5f 49 54 45 4d 4d 4f 4e 49 4b 45 52 2c 0a 09 4d  _ITEMMONIKER,..M
1160: 4b 53 59 53 5f 50 4f 49 4e 54 45 52 4d 4f 4e 49  KSYS_POINTERMONI
1170: 4b 45 52 0a 7d 0a 0a 65 6e 75 6d 20 4d 4b 52 45  KER.}..enum MKRE
1180: 44 55 43 45 20 7b 0a 09 4d 4b 52 52 45 44 55 43  DUCE {..MKRREDUC
1190: 45 5f 41 4c 4c 2c 0a 09 4d 4b 52 52 45 44 55 43  E_ALL,..MKRREDUC
11a0: 45 5f 4f 4e 45 20 20 20 20 20 20 20 20 20 3d 20  E_ONE         = 
11b0: 31 39 36 36 30 38 2c 0a 09 4d 4b 52 52 45 44 55  196608,..MKRREDU
11c0: 43 45 5f 54 4f 55 53 45 52 20 20 20 20 20 20 3d  CE_TOUSER      =
11d0: 20 31 33 31 30 37 32 2c 0a 09 4d 4b 52 52 45 44   131072,..MKRRED
11e0: 55 43 45 5f 54 48 52 4f 55 47 48 55 53 45 52 20  UCE_THROUGHUSER 
11f0: 3d 20 36 35 35 33 36 0a 7d 0a 0a 73 74 72 75 63  = 65536.}..struc
1200: 74 20 52 65 6d 53 4e 42 20 7b 0a 09 75 69 6e 74  t RemSNB {..uint
1210: 20 75 6c 43 6e 74 53 74 72 3b 0a 09 75 69 6e 74   ulCntStr;..uint
1220: 20 75 6c 43 6e 74 43 68 61 72 3b 0a 09 4f 4c 45   ulCntChar;..OLE
1230: 43 48 41 52 20 72 67 53 74 72 69 6e 67 5b 31 5d  CHAR rgString[1]
1240: 3b 0a 7d 0a 0a 65 6e 75 6d 20 41 44 56 46 20 7b  ;.}..enum ADVF {
1250: 0a 09 41 44 56 46 5f 4e 4f 44 41 54 41 20 20 20  ..ADVF_NODATA   
1260: 20 20 20 20 20 20 20 20 20 3d 20 31 2c 0a 09 41           = 1,..A
1270: 44 56 46 5f 50 52 49 4d 45 46 49 52 53 54 20 20  DVF_PRIMEFIRST  
1280: 20 20 20 20 20 20 3d 20 32 2c 0a 09 41 44 56 46        = 2,..ADVF
1290: 5f 4f 4e 4c 59 4f 4e 43 45 20 20 20 20 20 20 20  _ONLYONCE       
12a0: 20 20 20 3d 20 34 2c 0a 09 41 44 56 46 43 41 43     = 4,..ADVFCAC
12b0: 48 45 5f 4e 4f 48 41 4e 44 4c 45 52 20 20 20 20  HE_NOHANDLER    
12c0: 3d 20 38 2c 0a 09 41 44 56 46 43 41 43 48 45 5f  = 8,..ADVFCACHE_
12d0: 46 4f 52 43 45 42 55 49 4c 54 49 4e 20 3d 20 31  FORCEBUILTIN = 1
12e0: 36 2c 0a 09 41 44 56 46 43 41 43 48 45 5f 4f 4e  6,..ADVFCACHE_ON
12f0: 53 41 56 45 20 20 20 20 20 20 20 3d 20 33 32 2c  SAVE       = 32,
1300: 0a 09 41 44 56 46 5f 44 41 54 41 4f 4e 53 54 4f  ..ADVF_DATAONSTO
1310: 50 20 20 20 20 20 20 20 20 3d 20 36 34 0a 7d 0a  P        = 64.}.
1320: 0a 65 6e 75 6d 20 54 59 4d 45 44 20 7b 0a 09 54  .enum TYMED {..T
1330: 59 4d 45 44 5f 48 47 4c 4f 42 41 4c 20 20 3d 20  YMED_HGLOBAL  = 
1340: 31 2c 0a 09 54 59 4d 45 44 5f 46 49 4c 45 20 20  1,..TYMED_FILE  
1350: 20 20 20 3d 20 32 2c 0a 09 54 59 4d 45 44 5f 49     = 2,..TYMED_I
1360: 53 54 52 45 41 4d 20 20 3d 20 34 2c 0a 09 54 59  STREAM  = 4,..TY
1370: 4d 45 44 5f 49 53 54 4f 52 41 47 45 20 3d 20 38  MED_ISTORAGE = 8
1380: 2c 0a 09 54 59 4d 45 44 5f 47 44 49 20 20 20 20  ,..TYMED_GDI    
1390: 20 20 3d 20 31 36 2c 0a 09 54 59 4d 45 44 5f 4d    = 16,..TYMED_M
13a0: 46 50 49 43 54 20 20 20 3d 20 33 32 2c 0a 09 54  FPICT   = 32,..T
13b0: 59 4d 45 44 5f 45 4e 48 4d 46 20 20 20 20 3d 20  YMED_ENHMF    = 
13c0: 36 34 2c 0a 09 54 59 4d 45 44 5f 4e 55 4c 4c 20  64,..TYMED_NULL 
13d0: 20 20 20 20 3d 20 30 0a 7d 0a 0a 65 6e 75 6d 20      = 0.}..enum 
13e0: 53 45 52 56 45 52 43 41 4c 4c 20 7b 0a 09 53 45  SERVERCALL {..SE
13f0: 52 56 45 52 43 41 4c 4c 5f 49 53 48 41 4e 44 4c  RVERCALL_ISHANDL
1400: 45 44 2c 0a 09 53 45 52 56 45 52 43 41 4c 4c 5f  ED,..SERVERCALL_
1410: 52 45 4a 45 43 54 45 44 2c 0a 09 53 45 52 56 45  REJECTED,..SERVE
1420: 52 43 41 4c 4c 5f 52 45 54 52 59 4c 41 54 45 52  RCALL_RETRYLATER
1430: 0a 7d 0a 0a 73 74 72 75 63 74 20 43 41 55 42 20  .}..struct CAUB 
1440: 7b 0a 09 55 4c 4f 4e 47 20 63 45 6c 65 6d 73 3b  {..ULONG cElems;
1450: 0a 09 75 62 79 74 65 2a 20 70 45 6c 65 6d 73 3b  ..ubyte* pElems;
1460: 0a 7d 0a 0a 73 74 72 75 63 74 20 43 41 49 20 7b  .}..struct CAI {
1470: 0a 09 55 4c 4f 4e 47 20 63 45 6c 65 6d 73 3b 0a  ..ULONG cElems;.
1480: 09 73 68 6f 72 74 2a 20 70 45 6c 65 6d 73 3b 0a  .short* pElems;.
1490: 7d 0a 0a 73 74 72 75 63 74 20 43 41 55 49 20 7b  }..struct CAUI {
14a0: 0a 09 55 4c 4f 4e 47 20 63 45 6c 65 6d 73 3b 0a  ..ULONG cElems;.
14b0: 09 55 53 48 4f 52 54 2a 20 70 45 6c 65 6d 73 3b  .USHORT* pElems;
14c0: 0a 7d 0a 0a 73 74 72 75 63 74 20 43 41 4c 20 7b  .}..struct CAL {
14d0: 0a 09 55 4c 4f 4e 47 20 63 45 6c 65 6d 73 3b 0a  ..ULONG cElems;.
14e0: 09 69 6e 74 2a 20 70 45 6c 65 6d 73 3b 0a 7d 0a  .int* pElems;.}.
14f0: 0a 73 74 72 75 63 74 20 43 41 55 4c 20 7b 0a 09  .struct CAUL {..
1500: 55 4c 4f 4e 47 20 63 45 6c 65 6d 73 3b 0a 09 55  ULONG cElems;..U
1510: 4c 4f 4e 47 2a 20 70 45 6c 65 6d 73 3b 0a 7d 0a  LONG* pElems;.}.
1520: 0a 73 74 72 75 63 74 20 43 41 46 4c 54 20 7b 0a  .struct CAFLT {.
1530: 09 55 4c 4f 4e 47 20 63 45 6c 65 6d 73 3b 0a 09  .ULONG cElems;..
1540: 66 6c 6f 61 74 2a 20 70 45 6c 65 6d 73 3b 0a 7d  float* pElems;.}
1550: 0a 0a 73 74 72 75 63 74 20 43 41 44 42 4c 20 7b  ..struct CADBL {
1560: 0a 09 55 4c 4f 4e 47 20 63 45 6c 65 6d 73 3b 0a  ..ULONG cElems;.
1570: 09 64 6f 75 62 6c 65 2a 20 70 45 6c 65 6d 73 3b  .double* pElems;
1580: 0a 7d 0a 0a 73 74 72 75 63 74 20 43 41 43 59 20  .}..struct CACY 
1590: 7b 0a 09 55 4c 4f 4e 47 20 63 45 6c 65 6d 73 3b  {..ULONG cElems;
15a0: 0a 09 43 59 2a 20 70 45 6c 65 6d 73 3b 0a 7d 0a  ..CY* pElems;.}.
15b0: 0a 73 74 72 75 63 74 20 43 41 44 41 54 45 20 7b  .struct CADATE {
15c0: 0a 09 55 4c 4f 4e 47 20 63 45 6c 65 6d 73 3b 0a  ..ULONG cElems;.
15d0: 09 44 41 54 45 2a 20 70 45 6c 65 6d 73 3b 0a 7d  .DATE* pElems;.}
15e0: 0a 0a 73 74 72 75 63 74 20 43 41 42 53 54 52 20  ..struct CABSTR 
15f0: 7b 0a 09 55 4c 4f 4e 47 20 63 45 6c 65 6d 73 3b  {..ULONG cElems;
1600: 0a 09 42 53 54 52 2a 20 20 70 45 6c 65 6d 73 3b  ..BSTR*  pElems;
1610: 0a 7d 0a 0a 73 74 72 75 63 74 20 43 41 42 53 54  .}..struct CABST
1620: 52 42 4c 4f 42 20 7b 0a 09 55 4c 4f 4e 47 20 63  RBLOB {..ULONG c
1630: 45 6c 65 6d 73 3b 0a 09 42 53 54 52 42 4c 4f 42  Elems;..BSTRBLOB
1640: 2a 20 70 45 6c 65 6d 73 3b 0a 7d 0a 0a 73 74 72  * pElems;.}..str
1650: 75 63 74 20 43 41 42 4f 4f 4c 20 7b 0a 09 55 4c  uct CABOOL {..UL
1660: 4f 4e 47 20 63 45 6c 65 6d 73 3b 0a 09 56 41 52  ONG cElems;..VAR
1670: 49 41 4e 54 5f 42 4f 4f 4c 2a 20 70 45 6c 65 6d  IANT_BOOL* pElem
1680: 73 3b 0a 7d 0a 0a 73 74 72 75 63 74 20 43 41 53  s;.}..struct CAS
1690: 43 4f 44 45 20 7b 0a 09 55 4c 4f 4e 47 20 63 45  CODE {..ULONG cE
16a0: 6c 65 6d 73 3b 0a 09 53 43 4f 44 45 2a 20 70 45  lems;..SCODE* pE
16b0: 6c 65 6d 73 3b 0a 7d 0a 0a 73 74 72 75 63 74 20  lems;.}..struct 
16c0: 43 41 48 20 7b 0a 09 55 4c 4f 4e 47 20 63 45 6c  CAH {..ULONG cEl
16d0: 65 6d 73 3b 0a 09 4c 41 52 47 45 5f 49 4e 54 45  ems;..LARGE_INTE
16e0: 47 45 52 2a 20 70 45 6c 65 6d 73 3b 0a 7d 0a 0a  GER* pElems;.}..
16f0: 73 74 72 75 63 74 20 43 41 55 48 20 7b 0a 09 55  struct CAUH {..U
1700: 4c 4f 4e 47 20 63 45 6c 65 6d 73 3b 0a 09 55 4c  LONG cElems;..UL
1710: 41 52 47 45 5f 49 4e 54 45 47 45 52 2a 20 70 45  ARGE_INTEGER* pE
1720: 6c 65 6d 73 3b 0a 7d 0a 0a 73 74 72 75 63 74 20  lems;.}..struct 
1730: 43 41 4c 50 53 54 52 20 7b 0a 09 55 4c 4f 4e 47  CALPSTR {..ULONG
1740: 20 63 45 6c 65 6d 73 3b 0a 09 4c 50 53 54 52 2a   cElems;..LPSTR*
1750: 20 70 45 6c 65 6d 73 3b 0a 7d 0a 0a 73 74 72 75   pElems;.}..stru
1760: 63 74 20 43 41 4c 50 57 53 54 52 20 7b 0a 09 55  ct CALPWSTR {..U
1770: 4c 4f 4e 47 20 63 45 6c 65 6d 73 3b 0a 09 4c 50  LONG cElems;..LP
1780: 57 53 54 52 2a 20 70 45 6c 65 6d 73 3b 0a 7d 0a  WSTR* pElems;.}.
1790: 0a 73 74 72 75 63 74 20 43 41 46 49 4c 45 54 49  .struct CAFILETI
17a0: 4d 45 20 7b 0a 09 55 4c 4f 4e 47 20 63 45 6c 65  ME {..ULONG cEle
17b0: 6d 73 3b 0a 09 46 49 4c 45 54 49 4d 45 2a 20 70  ms;..FILETIME* p
17c0: 45 6c 65 6d 73 3b 0a 7d 0a 0a 73 74 72 75 63 74  Elems;.}..struct
17d0: 20 43 41 43 4c 49 50 44 41 54 41 20 7b 0a 09 55   CACLIPDATA {..U
17e0: 4c 4f 4e 47 20 63 45 6c 65 6d 73 3b 0a 09 43 4c  LONG cElems;..CL
17f0: 49 50 44 41 54 41 2a 20 70 45 6c 65 6d 73 3b 0a  IPDATA* pElems;.
1800: 7d 0a 0a 73 74 72 75 63 74 20 43 41 43 4c 53 49  }..struct CACLSI
1810: 44 20 7b 0a 09 55 4c 4f 4e 47 20 63 45 6c 65 6d  D {..ULONG cElem
1820: 73 3b 0a 09 43 4c 53 49 44 2a 20 70 45 6c 65 6d  s;..CLSID* pElem
1830: 73 3b 0a 7d 0a 61 6c 69 61 73 20 50 52 4f 50 56  s;.}.alias PROPV
1840: 41 52 49 41 4e 54 2a 20 4c 50 50 52 4f 50 56 41  ARIANT* LPPROPVA
1850: 52 49 41 4e 54 3b 0a 0a 73 74 72 75 63 74 20 43  RIANT;..struct C
1860: 41 50 52 4f 50 56 41 52 49 41 4e 54 20 7b 0a 09  APROPVARIANT {..
1870: 55 4c 4f 4e 47 20 63 45 6c 65 6d 73 3b 0a 09 4c  ULONG cElems;..L
1880: 50 50 52 4f 50 56 41 52 49 41 4e 54 20 70 45 6c  PPROPVARIANT pEl
1890: 65 6d 73 3b 0a 7d 0a 0a 73 74 72 75 63 74 20 50  ems;.}..struct P
18a0: 52 4f 50 56 41 52 49 41 4e 54 20 7b 0a 09 56 41  ROPVARIANT {..VA
18b0: 52 54 59 50 45 20 76 74 3b 0a 09 57 4f 52 44 20  RTYPE vt;..WORD 
18c0: 77 52 65 73 65 72 76 65 64 31 3b 0a 09 57 4f 52  wReserved1;..WOR
18d0: 44 20 77 52 65 73 65 72 76 65 64 32 3b 0a 09 57  D wReserved2;..W
18e0: 4f 52 44 20 77 52 65 73 65 72 76 65 64 33 3b 0a  ORD wReserved3;.
18f0: 09 75 6e 69 6f 6e 20 7b 0a 09 09 43 48 41 52 20  .union {...CHAR 
1900: 63 56 61 6c 3b 0a 09 09 55 43 48 41 52 20 62 56  cVal;...UCHAR bV
1910: 61 6c 3b 0a 09 09 73 68 6f 72 74 20 69 56 61 6c  al;...short iVal
1920: 3b 0a 09 09 55 53 48 4f 52 54 20 75 69 56 61 6c  ;...USHORT uiVal
1930: 3b 0a 09 09 56 41 52 49 41 4e 54 5f 42 4f 4f 4c  ;...VARIANT_BOOL
1940: 20 62 6f 6f 6c 56 61 6c 3b 0a 09 09 69 6e 74 20   boolVal;...int 
1950: 6c 56 61 6c 3b 0a 09 09 55 4c 4f 4e 47 20 75 6c  lVal;...ULONG ul
1960: 56 61 6c 3b 0a 09 09 66 6c 6f 61 74 20 66 6c 74  Val;...float flt
1970: 56 61 6c 3b 0a 09 09 53 43 4f 44 45 20 73 63 6f  Val;...SCODE sco
1980: 64 65 3b 0a 09 09 4c 41 52 47 45 5f 49 4e 54 45  de;...LARGE_INTE
1990: 47 45 52 20 68 56 61 6c 3b 0a 09 09 55 4c 41 52  GER hVal;...ULAR
19a0: 47 45 5f 49 4e 54 45 47 45 52 20 75 68 56 61 6c  GE_INTEGER uhVal
19b0: 3b 0a 09 09 64 6f 75 62 6c 65 20 64 62 6c 56 61  ;...double dblVa
19c0: 6c 3b 0a 09 09 43 59 20 63 79 56 61 6c 3b 0a 09  l;...CY cyVal;..
19d0: 09 44 41 54 45 20 64 61 74 65 3b 0a 09 09 46 49  .DATE date;...FI
19e0: 4c 45 54 49 4d 45 20 66 69 6c 65 74 69 6d 65 3b  LETIME filetime;
19f0: 0a 09 09 43 4c 53 49 44 2a 20 70 75 75 69 64 3b  ...CLSID* puuid;
1a00: 0a 09 09 42 4c 4f 42 20 62 6c 6f 62 3b 0a 09 09  ...BLOB blob;...
1a10: 43 4c 49 50 44 41 54 41 2a 20 70 63 6c 69 70 64  CLIPDATA* pclipd
1a20: 61 74 61 3b 0a 09 09 4c 50 53 54 52 45 41 4d 20  ata;...LPSTREAM 
1a30: 70 53 74 72 65 61 6d 3b 0a 09 09 4c 50 53 54 4f  pStream;...LPSTO
1a40: 52 41 47 45 20 70 53 74 6f 72 61 67 65 3b 0a 09  RAGE pStorage;..
1a50: 09 42 53 54 52 20 62 73 74 72 56 61 6c 3b 0a 09  .BSTR bstrVal;..
1a60: 09 42 53 54 52 42 4c 4f 42 20 62 73 74 72 62 6c  .BSTRBLOB bstrbl
1a70: 6f 62 56 61 6c 3b 0a 09 09 4c 50 53 54 52 20 70  obVal;...LPSTR p
1a80: 73 7a 56 61 6c 3b 0a 09 09 4c 50 57 53 54 52 20  szVal;...LPWSTR 
1a90: 70 77 73 7a 56 61 6c 3b 0a 09 09 43 41 55 42 20  pwszVal;...CAUB 
1aa0: 63 61 75 62 3b 0a 09 09 43 41 49 20 63 61 69 3b  caub;...CAI cai;
1ab0: 0a 09 09 43 41 55 49 20 63 61 75 69 3b 0a 09 09  ...CAUI caui;...
1ac0: 43 41 42 4f 4f 4c 20 63 61 62 6f 6f 6c 3b 0a 09  CABOOL cabool;..
1ad0: 09 43 41 4c 20 63 61 6c 3b 0a 09 09 43 41 55 4c  .CAL cal;...CAUL
1ae0: 20 63 61 75 6c 3b 0a 09 09 43 41 46 4c 54 20 63   caul;...CAFLT c
1af0: 61 66 6c 74 3b 0a 09 09 43 41 53 43 4f 44 45 20  aflt;...CASCODE 
1b00: 63 61 73 63 6f 64 65 3b 0a 09 09 43 41 48 20 63  cascode;...CAH c
1b10: 61 68 3b 0a 09 09 43 41 55 48 20 63 61 75 68 3b  ah;...CAUH cauh;
1b20: 0a 09 09 43 41 44 42 4c 20 63 61 64 62 6c 3b 0a  ...CADBL cadbl;.
1b30: 09 09 43 41 43 59 20 63 61 63 79 3b 0a 09 09 43  ..CACY cacy;...C
1b40: 41 44 41 54 45 20 63 61 64 61 74 65 3b 0a 09 09  ADATE cadate;...
1b50: 43 41 46 49 4c 45 54 49 4d 45 20 63 61 66 69 6c  CAFILETIME cafil
1b60: 65 74 69 6d 65 3b 0a 09 09 43 41 43 4c 53 49 44  etime;...CACLSID
1b70: 20 63 61 75 75 69 64 3b 0a 09 09 43 41 43 4c 49   cauuid;...CACLI
1b80: 50 44 41 54 41 20 63 61 63 6c 69 70 64 61 74 61  PDATA caclipdata
1b90: 3b 0a 09 09 43 41 42 53 54 52 20 63 61 62 73 74  ;...CABSTR cabst
1ba0: 72 3b 0a 09 09 43 41 42 53 54 52 42 4c 4f 42 20  r;...CABSTRBLOB 
1bb0: 63 61 62 73 74 72 62 6c 6f 62 3b 0a 09 09 43 41  cabstrblob;...CA
1bc0: 4c 50 53 54 52 20 63 61 6c 70 73 74 72 3b 0a 09  LPSTR calpstr;..
1bd0: 09 43 41 4c 50 57 53 54 52 20 63 61 6c 70 77 73  .CALPWSTR calpws
1be0: 74 72 3b 0a 09 09 43 41 50 52 4f 50 56 41 52 49  tr;...CAPROPVARI
1bf0: 41 4e 54 20 63 61 70 72 6f 70 76 61 72 3b 0a 09  ANT capropvar;..
1c00: 7d 0a 7d 0a 0a 73 74 72 75 63 74 20 50 52 4f 50  }.}..struct PROP
1c10: 53 50 45 43 20 7b 0a 09 55 4c 4f 4e 47 20 75 6c  SPEC {..ULONG ul
1c20: 4b 69 6e 64 3b 0a 09 75 6e 69 6f 6e 20 7b 0a 09  Kind;..union {..
1c30: 09 50 52 4f 50 49 44 20 70 72 6f 70 69 64 3b 0a  .PROPID propid;.
1c40: 09 09 4c 50 4f 4c 45 53 54 52 20 6c 70 77 73 74  ..LPOLESTR lpwst
1c50: 72 3b 0a 09 7d 0a 7d 0a 0a 73 74 72 75 63 74 20  r;..}.}..struct 
1c60: 20 53 54 41 54 50 52 4f 50 53 54 47 20 7b 0a 09   STATPROPSTG {..
1c70: 4c 50 4f 4c 45 53 54 52 20 6c 70 77 73 74 72 4e  LPOLESTR lpwstrN
1c80: 61 6d 65 3b 0a 09 50 52 4f 50 49 44 20 70 72 6f  ame;..PROPID pro
1c90: 70 69 64 3b 0a 09 56 41 52 54 59 50 45 20 76 74  pid;..VARTYPE vt
1ca0: 3b 0a 7d 0a 0a 65 6e 75 6d 20 50 52 4f 50 53 45  ;.}..enum PROPSE
1cb0: 54 46 4c 41 47 20 7b 0a 09 50 52 4f 50 53 45 54  TFLAG {..PROPSET
1cc0: 46 4c 41 47 5f 44 45 46 41 55 4c 54 2c 0a 09 50  FLAG_DEFAULT,..P
1cd0: 52 4f 50 53 45 54 46 4c 41 47 5f 4e 4f 4e 53 49  ROPSETFLAG_NONSI
1ce0: 4d 50 4c 45 2c 0a 09 50 52 4f 50 53 45 54 46 4c  MPLE,..PROPSETFL
1cf0: 41 47 5f 41 4e 53 49 2c 0a 09 50 52 4f 50 53 45  AG_ANSI,..PROPSE
1d00: 54 46 4c 41 47 5f 55 4e 42 55 46 46 45 52 45 44  TFLAG_UNBUFFERED
1d10: 20 3d 20 34 0a 7d 0a 0a 73 74 72 75 63 74 20 53   = 4.}..struct S
1d20: 54 4f 52 41 47 45 4c 41 59 4f 55 54 20 7b 0a 09  TORAGELAYOUT {..
1d30: 44 57 4f 52 44 20 4c 61 79 6f 75 74 54 79 70 65  DWORD LayoutType
1d40: 3b 0a 09 4f 4c 45 43 48 41 52 2a 20 70 77 63 73  ;..OLECHAR* pwcs
1d50: 45 6c 65 6d 65 6e 74 4e 61 6d 65 3b 0a 09 4c 41  ElementName;..LA
1d60: 52 47 45 5f 49 4e 54 45 47 45 52 20 63 4f 66 66  RGE_INTEGER cOff
1d70: 73 65 74 3b 0a 09 4c 41 52 47 45 5f 49 4e 54 45  set;..LARGE_INTE
1d80: 47 45 52 20 63 42 79 74 65 73 3b 0a 7d 0a 0a 73  GER cBytes;.}..s
1d90: 74 72 75 63 74 20 53 4f 4c 45 5f 41 55 54 48 45  truct SOLE_AUTHE
1da0: 4e 54 49 43 41 54 49 4f 4e 5f 53 45 52 56 49 43  NTICATION_SERVIC
1db0: 45 20 7b 0a 09 44 57 4f 52 44 20 64 77 41 75 74  E {..DWORD dwAut
1dc0: 68 6e 53 76 63 3b 0a 09 44 57 4f 52 44 20 64 77  hnSvc;..DWORD dw
1dd0: 41 75 74 68 7a 53 76 63 3b 0a 09 4f 4c 45 43 48  AuthzSvc;..OLECH
1de0: 41 52 2a 20 70 50 72 69 6e 63 69 70 61 6c 4e 61  AR* pPrincipalNa
1df0: 6d 65 3b 0a 09 48 52 45 53 55 4c 54 20 68 72 3b  me;..HRESULT hr;
1e00: 0a 7d 0a 0a 63 6f 6e 73 74 20 4f 4c 45 43 48 41  .}..const OLECHA
1e10: 52 2a 20 43 4f 4c 45 5f 44 45 46 41 55 4c 54 5f  R* COLE_DEFAULT_
1e20: 50 52 49 4e 43 49 50 41 4c 20 3d 20 63 61 73 74  PRINCIPAL = cast
1e30: 20 28 20 4f 4c 45 43 48 41 52 2a 20 29 28 2d 31   ( OLECHAR* )(-1
1e40: 29 3b 0a 0a 65 6e 75 6d 20 45 4f 4c 45 5f 41 55  );..enum EOLE_AU
1e50: 54 48 45 4e 54 49 43 41 54 49 4f 4e 5f 43 41 50  THENTICATION_CAP
1e60: 41 42 49 4c 49 54 49 45 53 20 7b 0a 09 45 4f 41  ABILITIES {..EOA
1e70: 43 5f 4e 4f 4e 45 20 20 20 20 20 20 20 20 20 20  C_NONE          
1e80: 20 20 20 20 3d 20 30 2c 0a 09 45 4f 41 43 5f 4d      = 0,..EOAC_M
1e90: 55 54 55 41 4c 5f 41 55 54 48 20 20 20 20 20 20  UTUAL_AUTH      
1ea0: 20 3d 20 30 78 31 2c 0a 09 45 4f 41 43 5f 53 45   = 0x1,..EOAC_SE
1eb0: 43 55 52 45 5f 52 45 46 53 20 20 20 20 20 20 20  CURE_REFS       
1ec0: 3d 20 30 78 32 2c 0a 09 45 4f 41 43 5f 41 43 43  = 0x2,..EOAC_ACC
1ed0: 45 53 53 5f 43 4f 4e 54 52 4f 4c 20 20 20 20 3d  ESS_CONTROL    =
1ee0: 20 30 78 34 2c 0a 09 45 4f 41 43 5f 41 50 50 49   0x4,..EOAC_APPI
1ef0: 44 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20  D             = 
1f00: 30 78 38 2c 0a 09 45 4f 41 43 5f 44 59 4e 41 4d  0x8,..EOAC_DYNAM
1f10: 49 43 20 20 20 20 20 20 20 20 20 20 20 3d 20 30  IC           = 0
1f20: 78 31 30 2c 0a 09 45 4f 41 43 5f 53 54 41 54 49  x10,..EOAC_STATI
1f30: 43 5f 43 4c 4f 41 4b 49 4e 47 20 20 20 3d 20 30  C_CLOAKING   = 0
1f40: 78 32 30 2c 0a 09 45 4f 41 43 5f 44 59 4e 41 4d  x20,..EOAC_DYNAM
1f50: 49 43 5f 43 4c 4f 41 4b 49 4e 47 20 20 3d 20 30  IC_CLOAKING  = 0
1f60: 78 34 30 2c 0a 09 45 4f 41 43 5f 41 4e 59 5f 41  x40,..EOAC_ANY_A
1f70: 55 54 48 4f 52 49 54 59 20 20 20 20 20 3d 20 30  UTHORITY     = 0
1f80: 78 38 30 2c 0a 09 45 4f 41 43 5f 4d 41 4b 45 5f  x80,..EOAC_MAKE_
1f90: 46 55 4c 4c 53 49 43 20 20 20 20 20 20 3d 20 30  FULLSIC      = 0
1fa0: 78 31 30 30 2c 0a 09 45 4f 41 43 5f 52 45 51 55  x100,..EOAC_REQU
1fb0: 49 52 45 5f 46 55 4c 4c 53 49 43 20 20 20 3d 20  IRE_FULLSIC   = 
1fc0: 30 78 32 30 30 2c 0a 09 45 4f 41 43 5f 41 55 54  0x200,..EOAC_AUT
1fd0: 4f 5f 49 4d 50 45 52 53 4f 4e 41 54 45 20 20 3d  O_IMPERSONATE  =
1fe0: 20 30 78 34 30 30 2c 0a 09 45 4f 41 43 5f 44 45   0x400,..EOAC_DE
1ff0: 46 41 55 4c 54 20 20 20 20 20 20 20 20 20 20 20  FAULT           
2000: 3d 20 30 78 38 30 30 2c 0a 09 45 4f 41 43 5f 44  = 0x800,..EOAC_D
2010: 49 53 41 42 4c 45 5f 41 41 41 20 20 20 20 20 20  ISABLE_AAA      
2020: 20 3d 20 30 78 31 30 30 30 2c 0a 09 45 4f 41 43   = 0x1000,..EOAC
2030: 5f 4e 4f 5f 43 55 53 54 4f 4d 5f 4d 41 52 53 48  _NO_CUSTOM_MARSH
2040: 41 4c 20 3d 20 30 78 32 30 30 30 0a 7d 0a 0a 73  AL = 0x2000.}..s
2050: 74 72 75 63 74 20 53 4f 4c 45 5f 41 55 54 48 45  truct SOLE_AUTHE
2060: 4e 54 49 43 41 54 49 4f 4e 5f 49 4e 46 4f 20 7b  NTICATION_INFO {
2070: 0a 09 44 57 4f 52 44 20 64 77 41 75 74 68 6e 53  ..DWORD dwAuthnS
2080: 76 63 3b 0a 09 44 57 4f 52 44 20 64 77 41 75 74  vc;..DWORD dwAut
2090: 68 7a 53 76 63 3b 0a 09 76 6f 69 64 2a 20 70 41  hzSvc;..void* pA
20a0: 75 74 68 49 6e 66 6f 3b 0a 7d 0a 0a 63 6f 6e 73  uthInfo;.}..cons
20b0: 74 20 76 6f 69 64 2a 20 43 4f 4c 45 5f 44 45 46  t void* COLE_DEF
20c0: 41 55 4c 54 5f 41 55 54 48 49 4e 46 4f 20 3d 20  AULT_AUTHINFO = 
20d0: 63 61 73 74 28 20 76 6f 69 64 2a 20 29 28 2d 31  cast( void* )(-1
20e0: 20 29 3b 0a 0a 73 74 72 75 63 74 20 53 4f 4c 45   );..struct SOLE
20f0: 5f 41 55 54 48 45 4e 54 49 43 41 54 49 4f 4e 5f  _AUTHENTICATION_
2100: 4c 49 53 54 20 7b 0a 09 44 57 4f 52 44 20 63 41  LIST {..DWORD cA
2110: 75 74 68 49 6e 66 6f 3b 0a 09 53 4f 4c 45 5f 41  uthInfo;..SOLE_A
2120: 55 54 48 45 4e 54 49 43 41 54 49 4f 4e 5f 49 4e  UTHENTICATION_IN
2130: 46 4f 2a 20 61 41 75 74 68 49 6e 66 6f 3b 0a 7d  FO* aAuthInfo;.}
2140: 0a 0a 69 6e 74 65 72 66 61 63 65 20 49 45 6e 75  ..interface IEnu
2150: 6d 46 4f 52 4d 41 54 45 54 43 20 3a 20 49 55 6e  mFORMATETC : IUn
2160: 6b 6e 6f 77 6e 20 7b 0a 09 20 20 48 52 45 53 55  known {..  HRESU
2170: 4c 54 20 4e 65 78 74 28 55 4c 4f 4e 47 2c 20 46  LT Next(ULONG, F
2180: 4f 52 4d 41 54 45 54 43 2a 2c 20 55 4c 4f 4e 47  ORMATETC*, ULONG
2190: 2a 29 3b 0a 09 20 20 48 52 45 53 55 4c 54 20 53  *);..  HRESULT S
21a0: 6b 69 70 28 55 4c 4f 4e 47 29 3b 0a 09 20 20 48  kip(ULONG);..  H
21b0: 52 45 53 55 4c 54 20 52 65 73 65 74 28 29 3b 0a  RESULT Reset();.
21c0: 09 20 20 48 52 45 53 55 4c 54 20 43 6c 6f 6e 65  .  HRESULT Clone
21d0: 28 49 45 6e 75 6d 46 4f 52 4d 41 54 45 54 43 2a  (IEnumFORMATETC*
21e0: 2a 29 3b 0a 7d 0a 0a 69 6e 74 65 72 66 61 63 65  *);.}..interface
21f0: 20 49 45 6e 75 6d 48 4c 49 54 45 4d 20 3a 20 49   IEnumHLITEM : I
2200: 55 6e 6b 6e 6f 77 6e 20 7b 0a 09 20 20 48 52 45  Unknown {..  HRE
2210: 53 55 4c 54 20 4e 65 78 74 28 55 4c 4f 4e 47 2c  SULT Next(ULONG,
2220: 20 48 4c 49 54 45 4d 2a 2c 20 55 4c 4f 4e 47 2a   HLITEM*, ULONG*
2230: 29 3b 0a 09 20 20 48 52 45 53 55 4c 54 20 53 6b  );..  HRESULT Sk
2240: 69 70 28 55 4c 4f 4e 47 29 3b 0a 09 20 20 48 52  ip(ULONG);..  HR
2250: 45 53 55 4c 54 20 52 65 73 65 74 28 29 3b 0a 09  ESULT Reset();..
2260: 20 20 48 52 45 53 55 4c 54 20 43 6c 6f 6e 65 28    HRESULT Clone(
2270: 49 45 6e 75 6d 48 4c 49 54 45 4d 2a 2a 29 3b 0a  IEnumHLITEM**);.
2280: 7d 0a 0a 69 6e 74 65 72 66 61 63 65 20 49 45 6e  }..interface IEn
2290: 75 6d 53 54 41 54 44 41 54 41 20 3a 20 49 55 6e  umSTATDATA : IUn
22a0: 6b 6e 6f 77 6e 20 7b 0a 09 20 20 48 52 45 53 55  known {..  HRESU
22b0: 4c 54 20 4e 65 78 74 28 55 4c 4f 4e 47 2c 20 53  LT Next(ULONG, S
22c0: 54 41 54 44 41 54 41 2a 2c 20 55 4c 4f 4e 47 2a  TATDATA*, ULONG*
22d0: 29 3b 0a 09 20 20 48 52 45 53 55 4c 54 20 53 6b  );..  HRESULT Sk
22e0: 69 70 28 55 4c 4f 4e 47 29 3b 0a 09 20 20 48 52  ip(ULONG);..  HR
22f0: 45 53 55 4c 54 20 52 65 73 65 74 28 29 3b 0a 09  ESULT Reset();..
2300: 20 20 48 52 45 53 55 4c 54 20 43 6c 6f 6e 65 28    HRESULT Clone(
2310: 49 45 6e 75 6d 53 54 41 54 44 41 54 41 2a 2a 29  IEnumSTATDATA**)
2320: 3b 0a 7d 0a 0a 69 6e 74 65 72 66 61 63 65 20 49  ;.}..interface I
2330: 45 6e 75 6d 53 54 41 54 50 52 4f 50 53 45 54 53  EnumSTATPROPSETS
2340: 54 47 20 3a 20 49 55 6e 6b 6e 6f 77 6e 20 7b 0a  TG : IUnknown {.
2350: 09 20 20 48 52 45 53 55 4c 54 20 4e 65 78 74 28  .  HRESULT Next(
2360: 55 4c 4f 4e 47 2c 20 53 54 41 54 50 52 4f 50 53  ULONG, STATPROPS
2370: 45 54 53 54 47 2a 2c 20 55 4c 4f 4e 47 2a 29 3b  ETSTG*, ULONG*);
2380: 0a 09 20 20 48 52 45 53 55 4c 54 20 53 6b 69 70  ..  HRESULT Skip
2390: 28 55 4c 4f 4e 47 29 3b 0a 09 20 20 48 52 45 53  (ULONG);..  HRES
23a0: 55 4c 54 20 52 65 73 65 74 28 29 3b 0a 09 20 20  ULT Reset();..  
23b0: 48 52 45 53 55 4c 54 20 43 6c 6f 6e 65 28 49 45  HRESULT Clone(IE
23c0: 6e 75 6d 53 54 41 54 50 52 4f 50 53 45 54 53 54  numSTATPROPSETST
23d0: 47 2a 2a 29 3b 0a 7d 0a 0a 69 6e 74 65 72 66 61  G**);.}..interfa
23e0: 63 65 20 49 45 6e 75 6d 53 54 41 54 50 52 4f 50  ce IEnumSTATPROP
23f0: 53 54 47 20 3a 20 49 55 6e 6b 6e 6f 77 6e 20 7b  STG : IUnknown {
2400: 0a 09 20 20 48 52 45 53 55 4c 54 20 4e 65 78 74  ..  HRESULT Next
2410: 28 55 4c 4f 4e 47 2c 20 53 54 41 54 50 52 4f 50  (ULONG, STATPROP
2420: 53 54 47 2a 2c 20 55 4c 4f 4e 47 2a 29 3b 0a 09  STG*, ULONG*);..
2430: 20 20 48 52 45 53 55 4c 54 20 53 6b 69 70 28 55    HRESULT Skip(U
2440: 4c 4f 4e 47 29 3b 0a 09 20 20 48 52 45 53 55 4c  LONG);..  HRESUL
2450: 54 20 52 65 73 65 74 28 29 3b 0a 09 20 20 48 52  T Reset();..  HR
2460: 45 53 55 4c 54 20 43 6c 6f 6e 65 28 49 45 6e 75  ESULT Clone(IEnu
2470: 6d 53 54 41 54 50 52 4f 50 53 54 47 2a 2a 29 3b  mSTATPROPSTG**);
2480: 0a 7d 0a 0a 69 6e 74 65 72 66 61 63 65 20 49 45  .}..interface IE
2490: 6e 75 6d 53 54 41 54 53 54 47 20 3a 20 49 55 6e  numSTATSTG : IUn
24a0: 6b 6e 6f 77 6e 20 7b 0a 09 20 20 48 52 45 53 55  known {..  HRESU
24b0: 4c 54 20 4e 65 78 74 28 55 4c 4f 4e 47 2c 20 53  LT Next(ULONG, S
24c0: 54 41 54 53 54 47 2a 2c 20 55 4c 4f 4e 47 2a 29  TATSTG*, ULONG*)
24d0: 3b 0a 09 20 20 48 52 45 53 55 4c 54 20 53 6b 69  ;..  HRESULT Ski
24e0: 70 28 55 4c 4f 4e 47 29 3b 0a 09 20 20 48 52 45  p(ULONG);..  HRE
24f0: 53 55 4c 54 20 52 65 73 65 74 28 29 3b 0a 09 20  SULT Reset();.. 
2500: 20 48 52 45 53 55 4c 54 20 43 6c 6f 6e 65 28 49   HRESULT Clone(I
2510: 45 6e 75 6d 53 54 41 54 53 54 47 2a 2a 29 3b 0a  EnumSTATSTG**);.
2520: 7d 0a 0a 69 6e 74 65 72 66 61 63 65 20 49 45 6e  }..interface IEn
2530: 75 6d 53 74 72 69 6e 67 20 3a 20 49 55 6e 6b 6e  umString : IUnkn
2540: 6f 77 6e 20 7b 0a 09 20 20 48 52 45 53 55 4c 54  own {..  HRESULT
2550: 20 4e 65 78 74 28 55 4c 4f 4e 47 2c 20 4c 50 4f   Next(ULONG, LPO
2560: 4c 45 53 54 52 2a 2c 20 55 4c 4f 4e 47 2a 29 3b  LESTR*, ULONG*);
2570: 0a 09 20 20 48 52 45 53 55 4c 54 20 53 6b 69 70  ..  HRESULT Skip
2580: 28 55 4c 4f 4e 47 29 3b 0a 09 20 20 48 52 45 53  (ULONG);..  HRES
2590: 55 4c 54 20 52 65 73 65 74 28 29 3b 0a 09 20 20  ULT Reset();..  
25a0: 48 52 45 53 55 4c 54 20 43 6c 6f 6e 65 28 49 45  HRESULT Clone(IE
25b0: 6e 75 6d 53 74 72 69 6e 67 2a 2a 29 3b 0a 7d 0a  numString**);.}.
25c0: 0a 69 6e 74 65 72 66 61 63 65 20 49 45 6e 75 6d  .interface IEnum
25d0: 4d 6f 6e 69 6b 65 72 20 3a 20 49 55 6e 6b 6e 6f  Moniker : IUnkno
25e0: 77 6e 20 7b 0a 09 20 20 48 52 45 53 55 4c 54 20  wn {..  HRESULT 
25f0: 4e 65 78 74 28 55 4c 4f 4e 47 2c 20 49 4d 6f 6e  Next(ULONG, IMon
2600: 69 6b 65 72 2a 2c 20 55 4c 4f 4e 47 2a 29 3b 0a  iker*, ULONG*);.
2610: 09 20 20 48 52 45 53 55 4c 54 20 53 6b 69 70 28  .  HRESULT Skip(
2620: 55 4c 4f 4e 47 29 3b 0a 09 20 20 48 52 45 53 55  ULONG);..  HRESU
2630: 4c 54 20 52 65 73 65 74 28 29 3b 0a 09 20 20 48  LT Reset();..  H
2640: 52 45 53 55 4c 54 20 43 6c 6f 6e 65 28 49 45 6e  RESULT Clone(IEn
2650: 75 6d 4d 6f 6e 69 6b 65 72 2a 2a 29 3b 0a 7d 0a  umMoniker**);.}.
2660: 0a 0a 69 6e 74 65 72 66 61 63 65 20 49 45 6e 75  ..interface IEnu
2670: 6d 55 6e 6b 6e 6f 77 6e 20 3a 20 49 55 6e 6b 6e  mUnknown : IUnkn
2680: 6f 77 6e 20 7b 0a 09 20 20 48 52 45 53 55 4c 54  own {..  HRESULT
2690: 20 4e 65 78 74 28 55 4c 4f 4e 47 2c 20 49 55 6e   Next(ULONG, IUn
26a0: 6b 6e 6f 77 6e 2a 2c 20 55 4c 4f 4e 47 2a 29 3b  known*, ULONG*);
26b0: 0a 09 20 20 48 52 45 53 55 4c 54 20 53 6b 69 70  ..  HRESULT Skip
26c0: 28 55 4c 4f 4e 47 29 3b 0a 09 20 20 48 52 45 53  (ULONG);..  HRES
26d0: 55 4c 54 20 52 65 73 65 74 28 29 3b 0a 09 20 20  ULT Reset();..  
26e0: 48 52 45 53 55 4c 54 20 43 6c 6f 6e 65 28 49 45  HRESULT Clone(IE
26f0: 6e 75 6d 55 6e 6b 6e 6f 77 6e 2a 2a 29 3b 0a 7d  numUnknown**);.}
2700: 0a 0a 69 6e 74 65 72 66 61 63 65 20 49 53 65 71  ..interface ISeq
2710: 75 65 6e 74 69 61 6c 53 74 72 65 61 6d 20 3a 20  uentialStream : 
2720: 49 55 6e 6b 6e 6f 77 6e 20 7b 0a 09 48 52 45 53  IUnknown {..HRES
2730: 55 4c 54 20 52 65 61 64 28 76 6f 69 64 2a 2c 20  ULT Read(void*, 
2740: 55 4c 4f 4e 47 2c 20 55 4c 4f 4e 47 2a 29 3b 0a  ULONG, ULONG*);.
2750: 09 48 52 45 53 55 4c 54 20 57 72 69 74 65 28 76  .HRESULT Write(v
2760: 6f 69 64 2a 20 2c 20 55 4c 4f 4e 47 2c 20 55 4c  oid* , ULONG, UL
2770: 4f 4e 47 2a 29 3b 0a 7d 0a 0a 69 6e 74 65 72 66  ONG*);.}..interf
2780: 61 63 65 20 49 53 74 72 65 61 6d 20 3a 20 49 53  ace IStream : IS
2790: 65 71 75 65 6e 74 69 61 6c 53 74 72 65 61 6d 20  equentialStream 
27a0: 7b 0a 09 48 52 45 53 55 4c 54 20 53 65 65 6b 28  {..HRESULT Seek(
27b0: 4c 41 52 47 45 5f 49 4e 54 45 47 45 52 2c 20 44  LARGE_INTEGER, D
27c0: 57 4f 52 44 2c 20 55 4c 41 52 47 45 5f 49 4e 54  WORD, ULARGE_INT
27d0: 45 47 45 52 2a 29 3b 0a 09 48 52 45 53 55 4c 54  EGER*);..HRESULT
27e0: 20 53 65 74 53 69 7a 65 28 55 4c 41 52 47 45 5f   SetSize(ULARGE_
27f0: 49 4e 54 45 47 45 52 29 3b 0a 09 48 52 45 53 55  INTEGER);..HRESU
2800: 4c 54 20 43 6f 70 79 54 6f 28 49 53 74 72 65 61  LT CopyTo(IStrea
2810: 6d 2c 20 55 4c 41 52 47 45 5f 49 4e 54 45 47 45  m, ULARGE_INTEGE
2820: 52 2c 20 55 4c 41 52 47 45 5f 49 4e 54 45 47 45  R, ULARGE_INTEGE
2830: 52 2a 2c 20 55 4c 41 52 47 45 5f 49 4e 54 45 47  R*, ULARGE_INTEG
2840: 45 52 2a 29 3b 0a 09 48 52 45 53 55 4c 54 20 43  ER*);..HRESULT C
2850: 6f 6d 6d 69 74 28 44 57 4f 52 44 29 3b 0a 09 48  ommit(DWORD);..H
2860: 52 45 53 55 4c 54 20 52 65 76 65 72 74 28 29 3b  RESULT Revert();
2870: 0a 09 48 52 45 53 55 4c 54 20 4c 6f 63 6b 52 65  ..HRESULT LockRe
2880: 67 69 6f 6e 28 55 4c 41 52 47 45 5f 49 4e 54 45  gion(ULARGE_INTE
2890: 47 45 52 2c 20 55 4c 41 52 47 45 5f 49 4e 54 45  GER, ULARGE_INTE
28a0: 47 45 52 2c 20 44 57 4f 52 44 29 3b 0a 09 48 52  GER, DWORD);..HR
28b0: 45 53 55 4c 54 20 55 6e 6c 6f 63 6b 52 65 67 69  ESULT UnlockRegi
28c0: 6f 6e 28 55 4c 41 52 47 45 5f 49 4e 54 45 47 45  on(ULARGE_INTEGE
28d0: 52 2c 20 55 4c 41 52 47 45 5f 49 4e 54 45 47 45  R, ULARGE_INTEGE
28e0: 52 2c 20 44 57 4f 52 44 29 3b 0a 09 48 52 45 53  R, DWORD);..HRES
28f0: 55 4c 54 20 53 74 61 74 28 53 54 41 54 53 54 47  ULT Stat(STATSTG
2900: 2a 2c 20 44 57 4f 52 44 29 3b 0a 09 48 52 45 53  *, DWORD);..HRES
2910: 55 4c 54 20 43 6c 6f 6e 65 28 4c 50 53 54 52 45  ULT Clone(LPSTRE
2920: 41 4d 2a 29 3b 0a 7d 0a 0a 69 6e 74 65 72 66 61  AM*);.}..interfa
2930: 63 65 20 49 4d 61 72 73 68 61 6c 20 3a 20 49 55  ce IMarshal : IU
2940: 6e 6b 6e 6f 77 6e 20 7b 0a 09 48 52 45 53 55 4c  nknown {..HRESUL
2950: 54 20 47 65 74 55 6e 6d 61 72 73 68 61 6c 43 6c  T GetUnmarshalCl
2960: 61 73 73 28 52 45 46 49 49 44 2c 20 50 56 4f 49  ass(REFIID, PVOI
2970: 44 2c 20 44 57 4f 52 44 2c 20 50 56 4f 49 44 2c  D, DWORD, PVOID,
2980: 20 44 57 4f 52 44 2c 20 43 4c 53 49 44 2a 29 3b   DWORD, CLSID*);
2990: 0a 09 48 52 45 53 55 4c 54 20 47 65 74 4d 61 72  ..HRESULT GetMar
29a0: 73 68 61 6c 53 69 7a 65 4d 61 78 28 52 45 46 49  shalSizeMax(REFI
29b0: 49 44 2c 20 50 56 4f 49 44 2c 20 44 57 4f 52 44  ID, PVOID, DWORD
29c0: 2c 20 50 56 4f 49 44 2c 20 50 44 57 4f 52 44 2c  , PVOID, PDWORD,
29d0: 20 55 4c 4f 4e 47 2a 29 3b 0a 09 48 52 45 53 55   ULONG*);..HRESU
29e0: 4c 54 20 4d 61 72 73 68 61 6c 49 6e 74 65 72 66  LT MarshalInterf
29f0: 61 63 65 28 49 53 74 72 65 61 6d 2c 20 52 45 46  ace(IStream, REF
2a00: 49 49 44 2c 20 50 56 4f 49 44 2c 20 44 57 4f 52  IID, PVOID, DWOR
2a10: 44 2c 20 50 56 4f 49 44 2c 20 44 57 4f 52 44 29  D, PVOID, DWORD)
2a20: 3b 0a 09 48 52 45 53 55 4c 54 20 55 6e 6d 61 72  ;..HRESULT Unmar
2a30: 73 68 61 6c 49 6e 74 65 72 66 61 63 65 28 49 53  shalInterface(IS
2a40: 74 72 65 61 6d 2c 20 52 45 46 49 49 44 2c 20 76  tream, REFIID, v
2a50: 6f 69 64 2a 2a 29 3b 0a 09 48 52 45 53 55 4c 54  oid**);..HRESULT
2a60: 20 52 65 6c 65 61 73 65 4d 61 72 73 68 61 6c 44   ReleaseMarshalD
2a70: 61 74 61 28 49 53 74 72 65 61 6d 29 3b 0a 09 48  ata(IStream);..H
2a80: 52 45 53 55 4c 54 20 44 69 73 63 6f 6e 6e 65 63  RESULT Disconnec
2a90: 74 4f 62 6a 65 63 74 28 44 57 4f 52 44 29 3b 0a  tObject(DWORD);.
2aa0: 7d 0a 0a 69 6e 74 65 72 66 61 63 65 20 49 53 74  }..interface ISt
2ab0: 64 4d 61 72 73 68 61 6c 49 6e 66 6f 20 3a 20 49  dMarshalInfo : I
2ac0: 55 6e 6b 6e 6f 77 6e 20 7b 0a 09 48 52 45 53 55  Unknown {..HRESU
2ad0: 4c 54 20 47 65 74 43 6c 61 73 73 46 6f 72 48 61  LT GetClassForHa
2ae0: 6e 64 6c 65 72 28 44 57 4f 52 44 2c 20 50 56 4f  ndler(DWORD, PVO
2af0: 49 44 2c 20 43 4c 53 49 44 2a 29 3b 0a 7d 0a 0a  ID, CLSID*);.}..
2b00: 69 6e 74 65 72 66 61 63 65 20 49 4d 61 6c 6c 6f  interface IMallo
2b10: 63 20 3a 20 49 55 6e 6b 6e 6f 77 6e 20 7b 0a 09  c : IUnknown {..
2b20: 76 6f 69 64 2a 20 41 6c 6c 6f 63 28 55 4c 4f 4e  void* Alloc(ULON
2b30: 47 29 3b 0a 09 76 6f 69 64 2a 20 52 65 61 6c 6c  G);..void* Reall
2b40: 6f 63 28 76 6f 69 64 2a 2c 20 55 4c 4f 4e 47 29  oc(void*, ULONG)
2b50: 3b 0a 09 76 6f 69 64 20 46 72 65 65 28 76 6f 69  ;..void Free(voi
2b60: 64 2a 29 3b 0a 09 55 4c 4f 4e 47 20 47 65 74 53  d*);..ULONG GetS
2b70: 69 7a 65 28 76 6f 69 64 2a 29 3b 0a 09 69 6e 74  ize(void*);..int
2b80: 20 44 69 64 41 6c 6c 6f 63 28 76 6f 69 64 2a 29   DidAlloc(void*)
2b90: 3b 0a 09 76 6f 69 64 20 48 65 61 70 4d 69 6e 69  ;..void HeapMini
2ba0: 6d 69 7a 65 28 29 3b 0a 7d 0a 0a 69 6e 74 65 72  mize();.}..inter
2bb0: 66 61 63 65 20 49 4d 61 6c 6c 6f 63 53 70 79 20  face IMallocSpy 
2bc0: 3a 20 49 55 6e 6b 6e 6f 77 6e 20 7b 0a 09 55 4c  : IUnknown {..UL
2bd0: 4f 4e 47 20 50 72 65 41 6c 6c 6f 63 28 55 4c 4f  ONG PreAlloc(ULO
2be0: 4e 47 29 3b 0a 09 76 6f 69 64 2a 20 50 6f 73 74  NG);..void* Post
2bf0: 41 6c 6c 6f 63 28 76 6f 69 64 2a 29 3b 0a 09 76  Alloc(void*);..v
2c00: 6f 69 64 2a 20 50 72 65 46 72 65 65 28 76 6f 69  oid* PreFree(voi
2c10: 64 2a 2c 20 42 4f 4f 4c 29 3b 0a 09 76 6f 69 64  d*, BOOL);..void
2c20: 20 50 6f 73 74 46 72 65 65 28 42 4f 4f 4c 29 3b   PostFree(BOOL);
2c30: 0a 09 55 4c 4f 4e 47 20 50 72 65 52 65 61 6c 6c  ..ULONG PreReall
2c40: 6f 63 28 76 6f 69 64 2a 2c 20 55 4c 4f 4e 47 2c  oc(void*, ULONG,
2c50: 20 76 6f 69 64 2a 2a 2c 20 42 4f 4f 4c 29 3b 0a   void**, BOOL);.
2c60: 09 76 6f 69 64 2a 20 50 6f 73 74 52 65 61 6c 6c  .void* PostReall
2c70: 6f 63 28 76 6f 69 64 2a 2c 20 42 4f 4f 4c 29 3b  oc(void*, BOOL);
2c80: 0a 09 76 6f 69 64 2a 20 50 72 65 47 65 74 53 69  ..void* PreGetSi
2c90: 7a 65 28 76 6f 69 64 2a 2c 20 42 4f 4f 4c 29 3b  ze(void*, BOOL);
2ca0: 0a 09 55 4c 4f 4e 47 20 50 6f 73 74 47 65 74 53  ..ULONG PostGetS
2cb0: 69 7a 65 28 55 4c 4f 4e 47 2c 20 42 4f 4f 4c 29  ize(ULONG, BOOL)
2cc0: 3b 0a 09 76 6f 69 64 2a 20 50 72 65 44 69 64 41  ;..void* PreDidA
2cd0: 6c 6c 6f 63 28 76 6f 69 64 2a 2c 20 42 4f 4f 4c  lloc(void*, BOOL
2ce0: 29 3b 0a 09 69 6e 74 20 50 6f 73 74 44 69 64 41  );..int PostDidA
2cf0: 6c 6c 6f 63 28 76 6f 69 64 2a 2c 20 42 4f 4f 4c  lloc(void*, BOOL
2d00: 2c 20 69 6e 74 29 3b 0a 09 76 6f 69 64 20 50 72  , int);..void Pr
2d10: 65 48 65 61 70 4d 69 6e 69 6d 69 7a 65 28 29 3b  eHeapMinimize();
2d20: 0a 09 76 6f 69 64 20 50 6f 73 74 48 65 61 70 4d  ..void PostHeapM
2d30: 69 6e 69 6d 69 7a 65 28 29 3b 0a 7d 0a 0a 69 6e  inimize();.}..in
2d40: 74 65 72 66 61 63 65 20 49 4d 65 73 73 61 67 65  terface IMessage
2d50: 46 69 6c 74 65 72 20 3a 20 49 55 6e 6b 6e 6f 77  Filter : IUnknow
2d60: 6e 20 7b 0a 09 44 57 4f 52 44 20 48 61 6e 64 6c  n {..DWORD Handl
2d70: 65 49 6e 43 6f 6d 69 6e 67 43 61 6c 6c 28 44 57  eInComingCall(DW
2d80: 4f 52 44 2c 20 48 54 41 53 4b 2c 20 44 57 4f 52  ORD, HTASK, DWOR
2d90: 44 2c 20 4c 50 49 4e 54 45 52 46 41 43 45 49 4e  D, LPINTERFACEIN
2da0: 46 4f 29 3b 0a 09 44 57 4f 52 44 20 52 65 74 72  FO);..DWORD Retr
2db0: 79 52 65 6a 65 63 74 65 64 43 61 6c 6c 28 48 54  yRejectedCall(HT
2dc0: 41 53 4b 2c 20 44 57 4f 52 44 2c 20 44 57 4f 52  ASK, DWORD, DWOR
2dd0: 44 29 3b 0a 09 44 57 4f 52 44 20 4d 65 73 73 61  D);..DWORD Messa
2de0: 67 65 50 65 6e 64 69 6e 67 28 48 54 41 53 4b 2c  gePending(HTASK,
2df0: 20 44 57 4f 52 44 2c 20 44 57 4f 52 44 29 3b 0a   DWORD, DWORD);.
2e00: 7d 0a 0a 0a 69 6e 74 65 72 66 61 63 65 20 49 50  }...interface IP
2e10: 65 72 73 69 73 74 20 3a 20 49 55 6e 6b 6e 6f 77  ersist : IUnknow
2e20: 6e 20 7b 0a 09 48 52 45 53 55 4c 54 20 47 65 74  n {..HRESULT Get
2e30: 43 6c 61 73 73 49 44 28 43 4c 53 49 44 2a 29 3b  ClassID(CLSID*);
2e40: 0a 7d 0a 0a 69 6e 74 65 72 66 61 63 65 20 49 50  .}..interface IP
2e50: 65 72 73 69 73 74 53 74 72 65 61 6d 20 3a 20 49  ersistStream : I
2e60: 50 65 72 73 69 73 74 20 7b 0a 09 48 52 45 53 55  Persist {..HRESU
2e70: 4c 54 20 49 73 44 69 72 74 79 28 29 3b 0a 09 48  LT IsDirty();..H
2e80: 52 45 53 55 4c 54 20 4c 6f 61 64 28 49 53 74 72  RESULT Load(IStr
2e90: 65 61 6d 2a 29 3b 0a 09 48 52 45 53 55 4c 54 20  eam*);..HRESULT 
2ea0: 53 61 76 65 28 49 53 74 72 65 61 6d 2a 2c 20 42  Save(IStream*, B
2eb0: 4f 4f 4c 29 3b 0a 09 48 52 45 53 55 4c 54 20 47  OOL);..HRESULT G
2ec0: 65 74 53 69 7a 65 4d 61 78 28 50 55 4c 41 52 47  etSizeMax(PULARG
2ed0: 45 5f 49 4e 54 45 47 45 52 29 3b 0a 7d 0a 0a 69  E_INTEGER);.}..i
2ee0: 6e 74 65 72 66 61 63 65 20 49 52 75 6e 6e 69 6e  nterface IRunnin
2ef0: 67 4f 62 6a 65 63 74 54 61 62 6c 65 20 3a 20 49  gObjectTable : I
2f00: 55 6e 6b 6e 6f 77 6e 20 7b 0a 09 48 52 45 53 55  Unknown {..HRESU
2f10: 4c 54 20 52 65 67 69 73 74 65 72 28 44 57 4f 52  LT Register(DWOR
2f20: 44 2c 20 4c 50 55 4e 4b 4e 4f 57 4e 2c 20 4c 50  D, LPUNKNOWN, LP
2f30: 4d 4f 4e 49 4b 45 52 2c 20 50 44 57 4f 52 44 29  MONIKER, PDWORD)
2f40: 3b 0a 09 48 52 45 53 55 4c 54 20 52 65 76 6f 6b  ;..HRESULT Revok
2f50: 65 28 44 57 4f 52 44 29 3b 0a 09 48 52 45 53 55  e(DWORD);..HRESU
2f60: 4c 54 20 49 73 52 75 6e 6e 69 6e 67 28 4c 50 4d  LT IsRunning(LPM
2f70: 4f 4e 49 4b 45 52 29 3b 0a 09 48 52 45 53 55 4c  ONIKER);..HRESUL
2f80: 54 20 47 65 74 4f 62 6a 65 63 74 28 4c 50 4d 4f  T GetObject(LPMO
2f90: 4e 49 4b 45 52 2c 20 4c 50 55 4e 4b 4e 4f 57 4e  NIKER, LPUNKNOWN
2fa0: 2a 29 3b 0a 09 48 52 45 53 55 4c 54 20 4e 6f 74  *);..HRESULT Not
2fb0: 65 43 68 61 6e 67 65 54 69 6d 65 28 44 57 4f 52  eChangeTime(DWOR
2fc0: 44 2c 20 4c 50 46 49 4c 45 54 49 4d 45 29 3b 0a  D, LPFILETIME);.
2fd0: 09 48 52 45 53 55 4c 54 20 47 65 74 54 69 6d 65  .HRESULT GetTime
2fe0: 4f 66 4c 61 73 74 43 68 61 6e 67 65 28 4c 50 4d  OfLastChange(LPM
2ff0: 4f 4e 49 4b 45 52 2c 20 4c 50 46 49 4c 45 54 49  ONIKER, LPFILETI
3000: 4d 45 29 3b 0a 09 48 52 45 53 55 4c 54 20 45 6e  ME);..HRESULT En
3010: 75 6d 52 75 6e 6e 69 6e 67 28 49 45 6e 75 6d 4d  umRunning(IEnumM
3020: 6f 6e 69 6b 65 72 2a 2a 29 3b 0a 7d 0a 0a 69 6e  oniker**);.}..in
3030: 74 65 72 66 61 63 65 20 49 42 69 6e 64 43 74 78  terface IBindCtx
3040: 20 3a 20 49 55 6e 6b 6e 6f 77 6e 20 7b 0a 09 48   : IUnknown {..H
3050: 52 45 53 55 4c 54 20 52 65 67 69 73 74 65 72 4f  RESULT RegisterO
3060: 62 6a 65 63 74 42 6f 75 6e 64 28 4c 50 55 4e 4b  bjectBound(LPUNK
3070: 4e 4f 57 4e 29 3b 0a 09 48 52 45 53 55 4c 54 20  NOWN);..HRESULT 
3080: 52 65 76 6f 6b 65 4f 62 6a 65 63 74 42 6f 75 6e  RevokeObjectBoun
3090: 64 28 4c 50 55 4e 4b 4e 4f 57 4e 29 3b 0a 09 48  d(LPUNKNOWN);..H
30a0: 52 45 53 55 4c 54 20 52 65 6c 65 61 73 65 42 6f  RESULT ReleaseBo
30b0: 75 6e 64 4f 62 6a 65 63 74 73 28 29 3b 0a 09 48  undObjects();..H
30c0: 52 45 53 55 4c 54 20 53 65 74 42 69 6e 64 4f 70  RESULT SetBindOp
30d0: 74 69 6f 6e 73 28 4c 50 42 49 4e 44 5f 4f 50 54  tions(LPBIND_OPT
30e0: 53 29 3b 0a 09 48 52 45 53 55 4c 54 20 47 65 74  S);..HRESULT Get
30f0: 42 69 6e 64 4f 70 74 69 6f 6e 73 28 4c 50 42 49  BindOptions(LPBI
3100: 4e 44 5f 4f 50 54 53 29 3b 0a 09 48 52 45 53 55  ND_OPTS);..HRESU
3110: 4c 54 20 47 65 74 52 75 6e 6e 69 6e 67 4f 62 6a  LT GetRunningObj
3120: 65 63 74 54 61 62 6c 65 28 49 52 75 6e 6e 69 6e  ectTable(IRunnin
3130: 67 4f 62 6a 65 63 74 54 61 62 6c 65 2a 2a 29 3b  gObjectTable**);
3140: 0a 09 48 52 45 53 55 4c 54 20 52 65 67 69 73 74  ..HRESULT Regist
3150: 65 72 4f 62 6a 65 63 74 50 61 72 61 6d 28 4c 50  erObjectParam(LP
3160: 4f 4c 45 53 54 52 2c 20 49 55 6e 6b 6e 6f 77 6e  OLESTR, IUnknown
3170: 2a 29 3b 0a 09 48 52 45 53 55 4c 54 20 47 65 74  *);..HRESULT Get
3180: 4f 62 6a 65 63 74 50 61 72 61 6d 28 4c 50 4f 4c  ObjectParam(LPOL
3190: 45 53 54 52 2c 20 49 55 6e 6b 6e 6f 77 6e 2a 2a  ESTR, IUnknown**
31a0: 29 3b 0a 09 48 52 45 53 55 4c 54 20 45 6e 75 6d  );..HRESULT Enum
31b0: 4f 62 6a 65 63 74 50 61 72 61 6d 28 49 45 6e 75  ObjectParam(IEnu
31c0: 6d 53 74 72 69 6e 67 2a 2a 29 3b 0a 09 48 52 45  mString**);..HRE
31d0: 53 55 4c 54 20 52 65 76 6f 6b 65 4f 62 6a 65 63  SULT RevokeObjec
31e0: 74 50 61 72 61 6d 28 4c 50 4f 4c 45 53 54 52 29  tParam(LPOLESTR)
31f0: 3b 0a 7d 0a 0a 69 6e 74 65 72 66 61 63 65 20 49  ;.}..interface I
3200: 4d 6f 6e 69 6b 65 72 3a 20 49 50 65 72 73 69 73  Moniker: IPersis
3210: 74 53 74 72 65 61 6d 20 7b 0a 09 48 52 45 53 55  tStream {..HRESU
3220: 4c 54 20 42 69 6e 64 54 6f 4f 62 6a 65 63 74 28  LT BindToObject(
3230: 49 42 69 6e 64 43 74 78 2a 2c 20 49 4d 6f 6e 69  IBindCtx*, IMoni
3240: 6b 65 72 2a 2c 20 52 45 46 49 49 44 2c 20 50 56  ker*, REFIID, PV
3250: 4f 49 44 2a 29 3b 0a 09 48 52 45 53 55 4c 54 20  OID*);..HRESULT 
3260: 42 69 6e 64 54 6f 53 74 6f 72 61 67 65 28 49 42  BindToStorage(IB
3270: 69 6e 64 43 74 78 2a 2c 20 49 4d 6f 6e 69 6b 65  indCtx*, IMonike
3280: 72 2a 2c 20 52 45 46 49 49 44 2c 20 50 56 4f 49  r*, REFIID, PVOI
3290: 44 2a 29 3b 0a 09 48 52 45 53 55 4c 54 20 52 65  D*);..HRESULT Re
32a0: 64 75 63 65 28 49 42 69 6e 64 43 74 78 2a 2c 20  duce(IBindCtx*, 
32b0: 44 57 4f 52 44 2c 20 49 4d 6f 6e 69 6b 65 72 2a  DWORD, IMoniker*
32c0: 2a 2c 20 49 4d 6f 6e 69 6b 65 72 2a 2a 29 3b 0a  *, IMoniker**);.
32d0: 09 48 52 45 53 55 4c 54 20 43 6f 6d 70 6f 73 65  .HRESULT Compose
32e0: 57 69 74 68 28 49 4d 6f 6e 69 6b 65 72 2a 2c 20  With(IMoniker*, 
32f0: 42 4f 4f 4c 2c 20 49 4d 6f 6e 69 6b 65 72 2a 2a  BOOL, IMoniker**
3300: 29 3b 0a 09 48 52 45 53 55 4c 54 20 45 6e 75 6d  );..HRESULT Enum
3310: 28 42 4f 4f 4c 2c 20 49 45 6e 75 6d 4d 6f 6e 69  (BOOL, IEnumMoni
3320: 6b 65 72 2a 2a 29 3b 0a 09 48 52 45 53 55 4c 54  ker**);..HRESULT
3330: 20 49 73 45 71 75 61 6c 28 49 4d 6f 6e 69 6b 65   IsEqual(IMonike
3340: 72 2a 29 3b 0a 09 48 52 45 53 55 4c 54 20 48 61  r*);..HRESULT Ha
3350: 73 68 28 50 44 57 4f 52 44 29 3b 0a 09 48 52 45  sh(PDWORD);..HRE
3360: 53 55 4c 54 20 49 73 52 75 6e 6e 69 6e 67 28 49  SULT IsRunning(I
3370: 42 69 6e 64 43 74 78 2a 2c 20 49 4d 6f 6e 69 6b  BindCtx*, IMonik
3380: 65 72 2a 2c 20 49 4d 6f 6e 69 6b 65 72 2a 29 3b  er*, IMoniker*);
3390: 0a 09 48 52 45 53 55 4c 54 20 47 65 74 54 69 6d  ..HRESULT GetTim
33a0: 65 4f 66 4c 61 73 74 43 68 61 6e 67 65 28 49 42  eOfLastChange(IB
33b0: 69 6e 64 43 74 78 2a 2c 20 49 4d 6f 6e 69 6b 65  indCtx*, IMonike
33c0: 72 2a 2c 20 4c 50 46 49 4c 45 54 49 4d 45 29 3b  r*, LPFILETIME);
33d0: 0a 09 48 52 45 53 55 4c 54 20 49 6e 76 65 72 73  ..HRESULT Invers
33e0: 65 28 49 4d 6f 6e 69 6b 65 72 2a 2a 29 3b 0a 09  e(IMoniker**);..
33f0: 48 52 45 53 55 4c 54 20 43 6f 6d 6d 6f 6e 50 72  HRESULT CommonPr
3400: 65 66 69 78 57 69 74 68 28 49 4d 6f 6e 69 6b 65  efixWith(IMonike
3410: 72 2a 2c 20 49 4d 6f 6e 69 6b 65 72 2a 2a 29 3b  r*, IMoniker**);
3420: 0a 09 48 52 45 53 55 4c 54 20 52 65 6c 61 74 69  ..HRESULT Relati
3430: 76 65 50 61 74 68 54 6f 28 49 4d 6f 6e 69 6b 65  vePathTo(IMonike
3440: 72 2a 2c 20 49 4d 6f 6e 69 6b 65 72 2a 2a 29 3b  r*, IMoniker**);
3450: 0a 09 48 52 45 53 55 4c 54 20 47 65 74 44 69 73  ..HRESULT GetDis
3460: 70 6c 61 79 4e 61 6d 65 28 49 42 69 6e 64 43 74  playName(IBindCt
3470: 78 2a 2c 20 49 4d 6f 6e 69 6b 65 72 2a 2c 20 4c  x*, IMoniker*, L
3480: 50 4f 4c 45 53 54 52 2a 29 3b 0a 09 48 52 45 53  POLESTR*);..HRES
3490: 55 4c 54 20 50 61 72 73 65 44 69 73 70 6c 61 79  ULT ParseDisplay
34a0: 4e 61 6d 65 28 49 42 69 6e 64 43 74 78 2a 2c 20  Name(IBindCtx*, 
34b0: 49 4d 6f 6e 69 6b 65 72 2a 2c 20 4c 50 4f 4c 45  IMoniker*, LPOLE
34c0: 53 54 52 2c 20 55 4c 4f 4e 47 2a 2c 20 49 4d 6f  STR, ULONG*, IMo
34d0: 6e 69 6b 65 72 2a 2a 29 3b 0a 09 48 52 45 53 55  niker**);..HRESU
34e0: 4c 54 20 49 73 53 79 73 74 65 6d 4d 6f 6e 69 6b  LT IsSystemMonik
34f0: 65 72 28 50 44 57 4f 52 44 29 3b 0a 7d 0a 0a 69  er(PDWORD);.}..i
3500: 6e 74 65 72 66 61 63 65 20 49 50 65 72 73 69 73  nterface IPersis
3510: 74 53 74 6f 72 61 67 65 20 3a 20 49 50 65 72 73  tStorage : IPers
3520: 69 73 74 0a 7b 0a 09 48 52 45 53 55 4c 54 20 49  ist.{..HRESULT I
3530: 73 44 69 72 74 79 28 29 3b 0a 09 48 52 45 53 55  sDirty();..HRESU
3540: 4c 54 20 49 6e 69 74 4e 65 77 28 4c 50 53 54 4f  LT InitNew(LPSTO
3550: 52 41 47 45 29 3b 0a 09 48 52 45 53 55 4c 54 20  RAGE);..HRESULT 
3560: 4c 6f 61 64 28 4c 50 53 54 4f 52 41 47 45 29 3b  Load(LPSTORAGE);
3570: 0a 09 48 52 45 53 55 4c 54 20 53 61 76 65 28 4c  ..HRESULT Save(L
3580: 50 53 54 4f 52 41 47 45 2c 20 42 4f 4f 4c 29 3b  PSTORAGE, BOOL);
3590: 0a 09 48 52 45 53 55 4c 54 20 53 61 76 65 43 6f  ..HRESULT SaveCo
35a0: 6d 70 6c 65 74 65 64 28 4c 50 53 54 4f 52 41 47  mpleted(LPSTORAG
35b0: 45 29 3b 0a 09 48 52 45 53 55 4c 54 20 48 61 6e  E);..HRESULT Han
35c0: 64 73 4f 66 66 53 74 6f 72 61 67 65 28 29 3b 0a  dsOffStorage();.
35d0: 7d 0a 0a 69 6e 74 65 72 66 61 63 65 20 49 50 65  }..interface IPe
35e0: 72 73 69 73 74 46 69 6c 65 20 3a 20 49 50 65 72  rsistFile : IPer
35f0: 73 69 73 74 0a 7b 0a 09 48 52 45 53 55 4c 54 20  sist.{..HRESULT 
3600: 49 73 44 69 72 74 79 28 29 3b 0a 09 48 52 45 53  IsDirty();..HRES
3610: 55 4c 54 20 4c 6f 61 64 28 4c 50 43 4f 4c 45 53  ULT Load(LPCOLES
3620: 54 52 2c 20 44 57 4f 52 44 29 3b 0a 09 48 52 45  TR, DWORD);..HRE
3630: 53 55 4c 54 20 53 61 76 65 28 4c 50 43 4f 4c 45  SULT Save(LPCOLE
3640: 53 54 52 2c 20 42 4f 4f 4c 29 3b 0a 09 48 52 45  STR, BOOL);..HRE
3650: 53 55 4c 54 20 53 61 76 65 43 6f 6d 70 6c 65 74  SULT SaveComplet
3660: 65 64 28 4c 50 43 4f 4c 45 53 54 52 29 3b 0a 09  ed(LPCOLESTR);..
3670: 48 52 45 53 55 4c 54 20 47 65 74 43 75 72 46 69  HRESULT GetCurFi
3680: 6c 65 28 4c 50 4f 4c 45 53 54 52 2a 29 3b 0a 7d  le(LPOLESTR*);.}
3690: 0a 0a 69 6e 74 65 72 66 61 63 65 20 49 41 64 76  ..interface IAdv
36a0: 69 73 65 53 69 6e 6b 20 3a 20 49 55 6e 6b 6e 6f  iseSink : IUnkno
36b0: 77 6e 20 7b 0a 09 48 52 45 53 55 4c 54 20 51 75  wn {..HRESULT Qu
36c0: 65 72 79 49 6e 74 65 72 66 61 63 65 28 52 45 46  eryInterface(REF
36d0: 49 49 44 2c 20 50 56 4f 49 44 2a 29 3b 0a 09 55  IID, PVOID*);..U
36e0: 4c 4f 4e 47 20 41 64 64 52 65 66 28 29 3b 0a 09  LONG AddRef();..
36f0: 55 4c 4f 4e 47 20 52 65 6c 65 61 73 65 28 29 3b  ULONG Release();
3700: 0a 09 76 6f 69 64 20 4f 6e 44 61 74 61 43 68 61  ..void OnDataCha
3710: 6e 67 65 28 46 4f 52 4d 41 54 45 54 43 2a 2c 20  nge(FORMATETC*, 
3720: 53 54 47 4d 45 44 49 55 4d 2a 29 3b 0a 09 76 6f  STGMEDIUM*);..vo
3730: 69 64 20 4f 6e 56 69 65 77 43 68 61 6e 67 65 28  id OnViewChange(
3740: 44 57 4f 52 44 2c 20 4c 4f 4e 47 29 3b 0a 09 76  DWORD, LONG);..v
3750: 6f 69 64 20 4f 6e 52 65 6e 61 6d 65 28 49 4d 6f  oid OnRename(IMo
3760: 6e 69 6b 65 72 2a 29 3b 0a 09 76 6f 69 64 20 4f  niker*);..void O
3770: 6e 53 61 76 65 28 29 3b 0a 09 76 6f 69 64 20 4f  nSave();..void O
3780: 6e 43 6c 6f 73 65 28 29 3b 0a 7d 0a 0a 69 6e 74  nClose();.}..int
3790: 65 72 66 61 63 65 20 49 41 64 76 69 73 65 53 69  erface IAdviseSi
37a0: 6e 6b 32 20 3a 20 49 41 64 76 69 73 65 53 69 6e  nk2 : IAdviseSin
37b0: 6b 0a 7b 0a 09 76 6f 69 64 20 4f 6e 4c 69 6e 6b  k.{..void OnLink
37c0: 53 72 63 43 68 61 6e 67 65 28 49 4d 6f 6e 69 6b  SrcChange(IMonik
37d0: 65 72 2a 29 3b 0a 7d 0a 0a 69 6e 74 65 72 66 61  er*);.}..interfa
37e0: 63 65 20 49 44 61 74 61 4f 62 6a 65 63 74 20 3a  ce IDataObject :
37f0: 20 49 55 6e 6b 6e 6f 77 6e 20 7b 0a 09 48 52 45   IUnknown {..HRE
3800: 53 55 4c 54 20 47 65 74 44 61 74 61 28 46 4f 52  SULT GetData(FOR
3810: 4d 41 54 45 54 43 2a 2c 20 53 54 47 4d 45 44 49  MATETC*, STGMEDI
3820: 55 4d 2a 29 3b 0a 09 48 52 45 53 55 4c 54 20 47  UM*);..HRESULT G
3830: 65 74 44 61 74 61 48 65 72 65 28 46 4f 52 4d 41  etDataHere(FORMA
3840: 54 45 54 43 2a 2c 20 53 54 47 4d 45 44 49 55 4d  TETC*, STGMEDIUM
3850: 2a 29 3b 0a 09 48 52 45 53 55 4c 54 20 51 75 65  *);..HRESULT Que
3860: 72 79 47 65 74 44 61 74 61 28 46 4f 52 4d 41 54  ryGetData(FORMAT
3870: 45 54 43 2a 29 3b 0a 09 48 52 45 53 55 4c 54 20  ETC*);..HRESULT 
3880: 47 65 74 43 61 6e 6f 6e 69 63 61 6c 46 6f 72 6d  GetCanonicalForm
3890: 61 74 45 74 63 28 46 4f 52 4d 41 54 45 54 43 2a  atEtc(FORMATETC*
38a0: 2c 20 46 4f 52 4d 41 54 45 54 43 2a 29 3b 0a 09  , FORMATETC*);..
38b0: 48 52 45 53 55 4c 54 20 53 65 74 44 61 74 61 28  HRESULT SetData(
38c0: 46 4f 52 4d 41 54 45 54 43 2a 2c 20 53 54 47 4d  FORMATETC*, STGM
38d0: 45 44 49 55 4d 2a 2c 20 42 4f 4f 4c 29 3b 0a 09  EDIUM*, BOOL);..
38e0: 48 52 45 53 55 4c 54 20 45 6e 75 6d 46 6f 72 6d  HRESULT EnumForm
38f0: 61 74 45 74 63 28 44 57 4f 52 44 2c 20 49 45 6e  atEtc(DWORD, IEn
3900: 75 6d 46 4f 52 4d 41 54 45 54 43 2a 2a 29 3b 0a  umFORMATETC**);.
3910: 09 48 52 45 53 55 4c 54 20 44 41 64 76 69 73 65  .HRESULT DAdvise
3920: 28 46 4f 52 4d 41 54 45 54 43 2a 2c 20 44 57 4f  (FORMATETC*, DWO
3930: 52 44 2c 20 49 41 64 76 69 73 65 53 69 6e 6b 2a  RD, IAdviseSink*
3940: 2c 20 50 44 57 4f 52 44 29 3b 0a 09 48 52 45 53  , PDWORD);..HRES
3950: 55 4c 54 20 44 55 6e 61 64 76 69 73 65 28 44 57  ULT DUnadvise(DW
3960: 4f 52 44 29 3b 0a 09 48 52 45 53 55 4c 54 20 45  ORD);..HRESULT E
3970: 6e 75 6d 44 41 64 76 69 73 65 28 49 45 6e 75 6d  numDAdvise(IEnum
3980: 53 54 41 54 44 41 54 41 2a 2a 29 3b 0a 7d 0a 0a  STATDATA**);.}..
3990: 69 6e 74 65 72 66 61 63 65 20 49 44 61 74 61 41  interface IDataA
39a0: 64 76 69 73 65 48 6f 6c 64 65 72 20 3a 20 49 55  dviseHolder : IU
39b0: 6e 6b 6e 6f 77 6e 20 7b 0a 09 48 52 45 53 55 4c  nknown {..HRESUL
39c0: 54 20 41 64 76 69 73 65 28 49 44 61 74 61 4f 62  T Advise(IDataOb
39d0: 6a 65 63 74 2a 2c 20 46 4f 52 4d 41 54 45 54 43  ject*, FORMATETC
39e0: 2a 2c 20 44 57 4f 52 44 2c 20 49 41 64 76 69 73  *, DWORD, IAdvis
39f0: 65 53 69 6e 6b 2a 2c 20 50 44 57 4f 52 44 29 3b  eSink*, PDWORD);
3a00: 0a 09 48 52 45 53 55 4c 54 20 55 6e 61 64 76 69  ..HRESULT Unadvi
3a10: 73 65 28 44 57 4f 52 44 29 3b 0a 09 48 52 45 53  se(DWORD);..HRES
3a20: 55 4c 54 20 45 6e 75 6d 41 64 76 69 73 65 28 49  ULT EnumAdvise(I
3a30: 45 6e 75 6d 53 54 41 54 44 41 54 41 2a 2a 29 3b  EnumSTATDATA**);
3a40: 0a 09 48 52 45 53 55 4c 54 20 53 65 6e 64 4f 6e  ..HRESULT SendOn
3a50: 44 61 74 61 43 68 61 6e 67 65 28 49 44 61 74 61  DataChange(IData
3a60: 4f 62 6a 65 63 74 2a 2c 20 44 57 4f 52 44 2c 20  Object*, DWORD, 
3a70: 44 57 4f 52 44 29 3b 0a 7d 0a 0a 69 6e 74 65 72  DWORD);.}..inter
3a80: 66 61 63 65 20 49 53 74 6f 72 61 67 65 20 3a 20  face IStorage : 
3a90: 49 55 6e 6b 6e 6f 77 6e 20 7b 0a 09 48 52 45 53  IUnknown {..HRES
3aa0: 55 4c 54 20 43 72 65 61 74 65 53 74 72 65 61 6d  ULT CreateStream
3ab0: 28 4c 50 43 57 53 54 52 2c 20 44 57 4f 52 44 2c  (LPCWSTR, DWORD,
3ac0: 20 44 57 4f 52 44 2c 20 44 57 4f 52 44 2c 20 49   DWORD, DWORD, I
3ad0: 53 74 72 65 61 6d 2a 29 3b 0a 09 48 52 45 53 55  Stream*);..HRESU
3ae0: 4c 54 20 4f 70 65 6e 53 74 72 65 61 6d 28 4c 50  LT OpenStream(LP
3af0: 43 57 53 54 52 2c 20 50 56 4f 49 44 2c 20 44 57  CWSTR, PVOID, DW
3b00: 4f 52 44 2c 20 44 57 4f 52 44 2c 20 49 53 74 72  ORD, DWORD, IStr
3b10: 65 61 6d 2a 29 3b 0a 09 48 52 45 53 55 4c 54 20  eam*);..HRESULT 
3b20: 43 72 65 61 74 65 53 74 6f 72 61 67 65 28 4c 50  CreateStorage(LP
3b30: 43 57 53 54 52 2c 20 44 57 4f 52 44 2c 20 44 57  CWSTR, DWORD, DW
3b40: 4f 52 44 2c 20 44 57 4f 52 44 2c 20 49 53 74 6f  ORD, DWORD, ISto
3b50: 72 61 67 65 2a 29 3b 0a 09 48 52 45 53 55 4c 54  rage*);..HRESULT
3b60: 20 4f 70 65 6e 53 74 6f 72 61 67 65 28 4c 50 43   OpenStorage(LPC
3b70: 57 53 54 52 2c 20 49 53 74 6f 72 61 67 65 2c 20  WSTR, IStorage, 
3b80: 44 57 4f 52 44 2c 20 53 4e 42 2c 20 44 57 4f 52  DWORD, SNB, DWOR
3b90: 44 2c 20 49 53 74 6f 72 61 67 65 2a 29 3b 0a 09  D, IStorage*);..
3ba0: 48 52 45 53 55 4c 54 20 43 6f 70 79 54 6f 28 44  HRESULT CopyTo(D
3bb0: 57 4f 52 44 2c 20 49 49 44 2a 20 2c 20 53 4e 42  WORD, IID* , SNB
3bc0: 2c 20 49 53 74 6f 72 61 67 65 29 3b 0a 09 48 52  , IStorage);..HR
3bd0: 45 53 55 4c 54 20 4d 6f 76 65 45 6c 65 6d 65 6e  ESULT MoveElemen
3be0: 74 54 6f 28 4c 50 43 57 53 54 52 2c 20 49 53 74  tTo(LPCWSTR, ISt
3bf0: 6f 72 61 67 65 2c 20 4c 50 43 57 53 54 52 2c 20  orage, LPCWSTR, 
3c00: 44 57 4f 52 44 29 3b 0a 09 48 52 45 53 55 4c 54  DWORD);..HRESULT
3c10: 20 43 6f 6d 6d 69 74 28 44 57 4f 52 44 29 3b 0a   Commit(DWORD);.
3c20: 09 48 52 45 53 55 4c 54 20 52 65 76 65 72 74 28  .HRESULT Revert(
3c30: 29 3b 0a 09 48 52 45 53 55 4c 54 20 45 6e 75 6d  );..HRESULT Enum
3c40: 45 6c 65 6d 65 6e 74 73 28 44 57 4f 52 44 2c 20  Elements(DWORD, 
3c50: 50 56 4f 49 44 2c 20 44 57 4f 52 44 2c 20 49 45  PVOID, DWORD, IE
3c60: 6e 75 6d 53 54 41 54 53 54 47 2a 29 3b 0a 09 48  numSTATSTG*);..H
3c70: 52 45 53 55 4c 54 20 44 65 73 74 72 6f 79 45 6c  RESULT DestroyEl
3c80: 65 6d 65 6e 74 28 4c 50 43 57 53 54 52 29 3b 0a  ement(LPCWSTR);.
3c90: 09 48 52 45 53 55 4c 54 20 52 65 6e 61 6d 65 45  .HRESULT RenameE
3ca0: 6c 65 6d 65 6e 74 28 4c 50 43 57 53 54 52 2c 20  lement(LPCWSTR, 
3cb0: 4c 50 43 57 53 54 52 29 3b 0a 09 48 52 45 53 55  LPCWSTR);..HRESU
3cc0: 4c 54 20 53 65 74 45 6c 65 6d 65 6e 74 54 69 6d  LT SetElementTim
3cd0: 65 73 28 4c 50 43 57 53 54 52 2c 20 46 49 4c 45  es(LPCWSTR, FILE
3ce0: 54 49 4d 45 2a 20 2c 20 46 49 4c 45 54 49 4d 45  TIME* , FILETIME
3cf0: 2a 20 2c 20 46 49 4c 45 54 49 4d 45 2a 20 29 3b  * , FILETIME* );
3d00: 0a 09 48 52 45 53 55 4c 54 20 53 65 74 43 6c 61  ..HRESULT SetCla
3d10: 73 73 28 52 45 46 43 4c 53 49 44 29 3b 0a 09 48  ss(REFCLSID);..H
3d20: 52 45 53 55 4c 54 20 53 65 74 53 74 61 74 65 42  RESULT SetStateB
3d30: 69 74 73 28 44 57 4f 52 44 2c 20 44 57 4f 52 44  its(DWORD, DWORD
3d40: 29 3b 0a 09 48 52 45 53 55 4c 54 20 53 74 61 74  );..HRESULT Stat
3d50: 28 53 54 41 54 53 54 47 2a 2c 20 44 57 4f 52 44  (STATSTG*, DWORD
3d60: 29 3b 0a 7d 0a 0a 2f 2f 20 46 49 58 4d 45 3a 20  );.}..// FIXME: 
3d70: 47 65 74 43 6c 61 73 73 49 44 20 66 72 6f 6d 20  GetClassID from 
3d80: 49 50 65 72 73 69 73 74 20 6e 6f 74 20 74 68 65  IPersist not the
3d90: 72 65 20 2d 20 77 68 61 74 20 74 6f 20 64 6f 20  re - what to do 
3da0: 61 62 6f 75 74 20 69 74 3f 0a 69 6e 74 65 72 66  about it?.interf
3db0: 61 63 65 20 49 52 6f 6f 74 53 74 6f 72 61 67 65  ace IRootStorage
3dc0: 20 3a 20 49 50 65 72 73 69 73 74 20 7b 0a 09 48   : IPersist {..H
3dd0: 52 45 53 55 4c 54 20 51 75 65 72 79 49 6e 74 65  RESULT QueryInte
3de0: 72 66 61 63 65 28 52 45 46 49 49 44 2c 20 50 56  rface(REFIID, PV
3df0: 4f 49 44 2a 29 3b 0a 09 55 4c 4f 4e 47 20 41 64  OID*);..ULONG Ad
3e00: 64 52 65 66 28 29 3b 0a 09 55 4c 4f 4e 47 20 52  dRef();..ULONG R
3e10: 65 6c 65 61 73 65 28 29 3b 0a 09 48 52 45 53 55  elease();..HRESU
3e20: 4c 54 20 53 77 69 74 63 68 54 6f 46 69 6c 65 28  LT SwitchToFile(
3e30: 4c 50 4f 4c 45 53 54 52 29 3b 0a 7d 0a 0a 69 6e  LPOLESTR);.}..in
3e40: 74 65 72 66 61 63 65 20 49 52 70 63 43 68 61 6e  terface IRpcChan
3e50: 6e 65 6c 42 75 66 66 65 72 20 3a 20 49 55 6e 6b  nelBuffer : IUnk
3e60: 6e 6f 77 6e 20 7b 0a 09 48 52 45 53 55 4c 54 20  nown {..HRESULT 
3e70: 47 65 74 42 75 66 66 65 72 28 52 50 43 4f 4c 45  GetBuffer(RPCOLE
3e80: 4d 45 53 53 41 47 45 2a 2c 20 52 45 46 49 49 44  MESSAGE*, REFIID
3e90: 29 3b 0a 09 48 52 45 53 55 4c 54 20 53 65 6e 64  );..HRESULT Send
3ea0: 52 65 63 65 69 76 65 28 52 50 43 4f 4c 45 4d 45  Receive(RPCOLEME
3eb0: 53 53 41 47 45 2a 2c 20 50 55 4c 4f 4e 47 29 3b  SSAGE*, PULONG);
3ec0: 0a 09 48 52 45 53 55 4c 54 20 46 72 65 65 42 75  ..HRESULT FreeBu
3ed0: 66 66 65 72 28 52 50 43 4f 4c 45 4d 45 53 53 41  ffer(RPCOLEMESSA
3ee0: 47 45 2a 29 3b 0a 09 48 52 45 53 55 4c 54 20 47  GE*);..HRESULT G
3ef0: 65 74 44 65 73 74 43 74 78 28 50 44 57 4f 52 44  etDestCtx(PDWORD
3f00: 2c 20 50 56 4f 49 44 2a 29 3b 0a 09 48 52 45 53  , PVOID*);..HRES
3f10: 55 4c 54 20 49 73 43 6f 6e 6e 65 63 74 65 64 28  ULT IsConnected(
3f20: 29 3b 0a 7d 0a 0a 69 6e 74 65 72 66 61 63 65 20  );.}..interface 
3f30: 49 52 70 63 50 72 6f 78 79 42 75 66 66 65 72 20  IRpcProxyBuffer 
3f40: 3a 20 49 55 6e 6b 6e 6f 77 6e 20 7b 0a 09 48 52  : IUnknown {..HR
3f50: 45 53 55 4c 54 20 43 6f 6e 6e 65 63 74 28 49 52  ESULT Connect(IR
3f60: 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a  pcChannelBuffer*
3f70: 29 3b 0a 09 76 6f 69 64 20 44 69 73 63 6f 6e 6e  );..void Disconn
3f80: 65 63 74 28 29 3b 0a 7d 0a 0a 69 6e 74 65 72 66  ect();.}..interf
3f90: 61 63 65 20 49 52 70 63 53 74 75 62 42 75 66 66  ace IRpcStubBuff
3fa0: 65 72 20 3a 20 49 55 6e 6b 6e 6f 77 6e 20 7b 0a  er : IUnknown {.
3fb0: 09 48 52 45 53 55 4c 54 20 43 6f 6e 6e 65 63 74  .HRESULT Connect
3fc0: 28 4c 50 55 4e 4b 4e 4f 57 4e 29 3b 0a 09 76 6f  (LPUNKNOWN);..vo
3fd0: 69 64 20 44 69 73 63 6f 6e 6e 65 63 74 28 29 3b  id Disconnect();
3fe0: 0a 09 48 52 45 53 55 4c 54 20 49 6e 76 6f 6b 65  ..HRESULT Invoke
3ff0: 28 52 50 43 4f 4c 45 4d 45 53 53 41 47 45 2a 2c  (RPCOLEMESSAGE*,
4000: 20 4c 50 52 50 43 53 54 55 42 42 55 46 46 45 52   LPRPCSTUBBUFFER
4010: 29 3b 0a 09 4c 50 52 50 43 53 54 55 42 42 55 46  );..LPRPCSTUBBUF
4020: 46 45 52 20 49 73 49 49 44 53 75 70 70 6f 72 74  FER IsIIDSupport
4030: 65 64 28 52 45 46 49 49 44 29 3b 0a 09 55 4c 4f  ed(REFIID);..ULO
4040: 4e 47 20 43 6f 75 6e 74 52 65 66 73 28 29 3b 0a  NG CountRefs();.
4050: 09 48 52 45 53 55 4c 54 20 44 65 62 75 67 53 65  .HRESULT DebugSe
4060: 72 76 65 72 51 75 65 72 79 49 6e 74 65 72 66 61  rverQueryInterfa
4070: 63 65 28 50 56 4f 49 44 2a 29 3b 0a 09 48 52 45  ce(PVOID*);..HRE
4080: 53 55 4c 54 20 44 65 62 75 67 53 65 72 76 65 72  SULT DebugServer
4090: 52 65 6c 65 61 73 65 28 50 56 4f 49 44 29 3b 0a  Release(PVOID);.
40a0: 7d 0a 0a 69 6e 74 65 72 66 61 63 65 20 49 50 53  }..interface IPS
40b0: 46 61 63 74 6f 72 79 42 75 66 66 65 72 20 3a 20  FactoryBuffer : 
40c0: 49 55 6e 6b 6e 6f 77 6e 20 7b 0a 09 48 52 45 53  IUnknown {..HRES
40d0: 55 4c 54 20 43 72 65 61 74 65 50 72 6f 78 79 28  ULT CreateProxy(
40e0: 4c 50 55 4e 4b 4e 4f 57 4e 2c 20 52 45 46 49 49  LPUNKNOWN, REFII
40f0: 44 2c 20 4c 50 52 50 43 50 52 4f 58 59 42 55 46  D, LPRPCPROXYBUF
4100: 46 45 52 2a 2c 20 50 56 4f 49 44 2a 29 3b 0a 09  FER*, PVOID*);..
4110: 48 52 45 53 55 4c 54 20 43 72 65 61 74 65 53 74  HRESULT CreateSt
4120: 75 62 28 52 45 46 49 49 44 2c 20 4c 50 55 4e 4b  ub(REFIID, LPUNK
4130: 4e 4f 57 4e 2c 20 4c 50 52 50 43 53 54 55 42 42  NOWN, LPRPCSTUBB
4140: 55 46 46 45 52 2a 29 3b 0a 7d 0a 61 6c 69 61 73  UFFER*);.}.alias
4150: 20 49 50 53 46 61 63 74 6f 72 79 42 75 66 66 65   IPSFactoryBuffe
4160: 72 2a 20 4c 50 50 53 46 41 43 54 4f 52 59 42 55  r* LPPSFACTORYBU
4170: 46 46 45 52 3b 0a 0a 69 6e 74 65 72 66 61 63 65  FFER;..interface
4180: 20 49 4c 6f 63 6b 42 79 74 65 73 20 3a 20 49 55   ILockBytes : IU
4190: 6e 6b 6e 6f 77 6e 20 7b 0a 09 48 52 45 53 55 4c  nknown {..HRESUL
41a0: 54 20 52 65 61 64 41 74 28 55 4c 41 52 47 45 5f  T ReadAt(ULARGE_
41b0: 49 4e 54 45 47 45 52 2c 20 50 56 4f 49 44 2c 20  INTEGER, PVOID, 
41c0: 55 4c 4f 4e 47 2c 20 55 4c 4f 4e 47 2a 29 3b 0a  ULONG, ULONG*);.
41d0: 09 48 52 45 53 55 4c 54 20 57 72 69 74 65 41 74  .HRESULT WriteAt
41e0: 28 55 4c 41 52 47 45 5f 49 4e 54 45 47 45 52 2c  (ULARGE_INTEGER,
41f0: 20 50 43 56 4f 49 44 2c 20 55 4c 4f 4e 47 2c 20   PCVOID, ULONG, 
4200: 55 4c 4f 4e 47 2a 29 3b 0a 09 48 52 45 53 55 4c  ULONG*);..HRESUL
4210: 54 20 46 6c 75 73 68 28 29 3b 0a 09 48 52 45 53  T Flush();..HRES
4220: 55 4c 54 20 53 65 74 53 69 7a 65 28 55 4c 41 52  ULT SetSize(ULAR
4230: 47 45 5f 49 4e 54 45 47 45 52 29 3b 0a 09 48 52  GE_INTEGER);..HR
4240: 45 53 55 4c 54 20 4c 6f 63 6b 52 65 67 69 6f 6e  ESULT LockRegion
4250: 28 55 4c 41 52 47 45 5f 49 4e 54 45 47 45 52 2c  (ULARGE_INTEGER,
4260: 20 55 4c 41 52 47 45 5f 49 4e 54 45 47 45 52 2c   ULARGE_INTEGER,
4270: 20 44 57 4f 52 44 29 3b 0a 09 48 52 45 53 55 4c   DWORD);..HRESUL
4280: 54 20 55 6e 6c 6f 63 6b 52 65 67 69 6f 6e 28 55  T UnlockRegion(U
4290: 4c 41 52 47 45 5f 49 4e 54 45 47 45 52 2c 20 55  LARGE_INTEGER, U
42a0: 4c 41 52 47 45 5f 49 4e 54 45 47 45 52 2c 20 44  LARGE_INTEGER, D
42b0: 57 4f 52 44 29 3b 0a 09 48 52 45 53 55 4c 54 20  WORD);..HRESULT 
42c0: 53 74 61 74 28 53 54 41 54 53 54 47 2a 2c 20 44  Stat(STATSTG*, D
42d0: 57 4f 52 44 29 3b 0a 7d 0a 0a 69 6e 74 65 72 66  WORD);.}..interf
42e0: 61 63 65 20 49 45 78 74 65 72 6e 61 6c 43 6f 6e  ace IExternalCon
42f0: 6e 65 63 74 69 6f 6e 20 3a 20 49 55 6e 6b 6e 6f  nection : IUnkno
4300: 77 6e 20 7b 0a 09 48 52 45 53 55 4c 54 20 41 64  wn {..HRESULT Ad
4310: 64 43 6f 6e 6e 65 63 74 69 6f 6e 28 44 57 4f 52  dConnection(DWOR
4320: 44 2c 20 44 57 4f 52 44 29 3b 0a 09 48 52 45 53  D, DWORD);..HRES
4330: 55 4c 54 20 52 65 6c 65 61 73 65 43 6f 6e 6e 65  ULT ReleaseConne
4340: 63 74 69 6f 6e 28 44 57 4f 52 44 2c 20 44 57 4f  ction(DWORD, DWO
4350: 52 44 2c 20 42 4f 4f 4c 29 3b 0a 7d 0a 0a 69 6e  RD, BOOL);.}..in
4360: 74 65 72 66 61 63 65 20 49 52 75 6e 6e 61 62 6c  terface IRunnabl
4370: 65 4f 62 6a 65 63 74 20 3a 20 49 55 6e 6b 6e 6f  eObject : IUnkno
4380: 77 6e 20 7b 0a 09 48 52 45 53 55 4c 54 20 47 65  wn {..HRESULT Ge
4390: 74 52 75 6e 6e 69 6e 67 43 6c 61 73 73 28 4c 50  tRunningClass(LP
43a0: 43 4c 53 49 44 29 3b 0a 09 48 52 45 53 55 4c 54  CLSID);..HRESULT
43b0: 20 52 75 6e 28 4c 50 42 43 29 3b 0a 09 42 4f 4f   Run(LPBC);..BOO
43c0: 4c 20 49 73 52 75 6e 6e 69 6e 67 28 29 3b 0a 09  L IsRunning();..
43d0: 48 52 45 53 55 4c 54 20 4c 6f 63 6b 52 75 6e 6e  HRESULT LockRunn
43e0: 69 6e 67 28 42 4f 4f 4c 2c 20 42 4f 4f 4c 29 3b  ing(BOOL, BOOL);
43f0: 0a 09 48 52 45 53 55 4c 54 20 53 65 74 43 6f 6e  ..HRESULT SetCon
4400: 74 61 69 6e 65 64 4f 62 6a 65 63 74 28 42 4f 4f  tainedObject(BOO
4410: 4c 29 3b 0a 7d 0a 0a 69 6e 74 65 72 66 61 63 65  L);.}..interface
4420: 20 49 52 4f 54 44 61 74 61 20 3a 20 49 55 6e 6b   IROTData : IUnk
4430: 6e 6f 77 6e 20 7b 0a 09 48 52 45 53 55 4c 54 20  nown {..HRESULT 
4440: 47 65 74 43 6f 6d 70 61 72 69 73 6f 6e 44 61 74  GetComparisonDat
4450: 61 28 50 56 4f 49 44 2c 20 55 4c 4f 4e 47 2c 20  a(PVOID, ULONG, 
4460: 50 55 4c 4f 4e 47 29 3b 0a 7d 0a 0a 69 6e 74 65  PULONG);.}..inte
4470: 72 66 61 63 65 20 49 43 68 61 6e 6e 65 6c 48 6f  rface IChannelHo
4480: 6f 6b 20 3a 20 49 55 6e 6b 6e 6f 77 6e 20 7b 0a  ok : IUnknown {.
4490: 09 76 6f 69 64 20 43 6c 69 65 6e 74 47 65 74 53  .void ClientGetS
44a0: 69 7a 65 28 52 45 46 47 55 49 44 2c 20 52 45 46  ize(REFGUID, REF
44b0: 49 49 44 2c 20 50 55 4c 4f 4e 47 29 3b 0a 09 76  IID, PULONG);..v
44c0: 6f 69 64 20 43 6c 69 65 6e 74 46 69 6c 6c 42 75  oid ClientFillBu
44d0: 66 66 65 72 28 52 45 46 47 55 49 44 2c 20 52 45  ffer(REFGUID, RE
44e0: 46 49 49 44 2c 20 50 55 4c 4f 4e 47 2c 20 50 56  FIID, PULONG, PV
44f0: 4f 49 44 29 3b 0a 09 76 6f 69 64 20 43 6c 69 65  OID);..void Clie
4500: 6e 74 4e 6f 74 69 66 79 28 52 45 46 47 55 49 44  ntNotify(REFGUID
4510: 2c 20 52 45 46 49 49 44 2c 20 55 4c 4f 4e 47 2c  , REFIID, ULONG,
4520: 20 50 56 4f 49 44 2c 20 44 57 4f 52 44 2c 20 48   PVOID, DWORD, H
4530: 52 45 53 55 4c 54 29 3b 0a 09 76 6f 69 64 20 53  RESULT);..void S
4540: 65 72 76 65 72 4e 6f 74 69 66 79 28 52 45 46 47  erverNotify(REFG
4550: 55 49 44 2c 20 52 45 46 49 49 44 2c 20 55 4c 4f  UID, REFIID, ULO
4560: 4e 47 2c 20 50 56 4f 49 44 2c 20 44 57 4f 52 44  NG, PVOID, DWORD
4570: 29 3b 0a 09 76 6f 69 64 20 53 65 72 76 65 72 47  );..void ServerG
4580: 65 74 53 69 7a 65 28 52 45 46 47 55 49 44 2c 20  etSize(REFGUID, 
4590: 52 45 46 49 49 44 2c 20 48 52 45 53 55 4c 54 2c  REFIID, HRESULT,
45a0: 20 50 55 4c 4f 4e 47 29 3b 0a 09 76 6f 69 64 20   PULONG);..void 
45b0: 53 65 72 76 65 72 46 69 6c 6c 42 75 66 66 65 72  ServerFillBuffer
45c0: 28 52 45 46 47 55 49 44 2c 20 52 45 46 49 49 44  (REFGUID, REFIID
45d0: 2c 20 50 55 4c 4f 4e 47 2c 20 50 56 4f 49 44 2c  , PULONG, PVOID,
45e0: 20 48 52 45 53 55 4c 54 29 3b 0a 7d 0a 0a 69 6e   HRESULT);.}..in
45f0: 74 65 72 66 61 63 65 20 49 50 72 6f 70 65 72 74  terface IPropert
4600: 79 53 74 6f 72 61 67 65 20 3a 20 49 55 6e 6b 6e  yStorage : IUnkn
4610: 6f 77 6e 20 7b 0a 09 48 52 45 53 55 4c 54 20 52  own {..HRESULT R
4620: 65 61 64 4d 75 6c 74 69 70 6c 65 28 55 4c 4f 4e  eadMultiple(ULON
4630: 47 2c 20 50 52 4f 50 53 50 45 43 2a 20 2c 20 50  G, PROPSPEC* , P
4640: 52 4f 50 56 41 52 49 41 4e 54 2a 29 3b 0a 09 48  ROPVARIANT*);..H
4650: 52 45 53 55 4c 54 20 57 72 69 74 65 4d 75 6c 74  RESULT WriteMult
4660: 69 70 6c 65 28 55 4c 4f 4e 47 2c 20 50 52 4f 50  iple(ULONG, PROP
4670: 53 50 45 43 2a 20 2c 20 50 52 4f 50 56 41 52 49  SPEC* , PROPVARI
4680: 41 4e 54 2a 2c 20 50 52 4f 50 49 44 29 3b 0a 09  ANT*, PROPID);..
4690: 48 52 45 53 55 4c 54 20 44 65 6c 65 74 65 4d 75  HRESULT DeleteMu
46a0: 6c 74 69 70 6c 65 28 55 4c 4f 4e 47 2c 20 50 52  ltiple(ULONG, PR
46b0: 4f 50 53 50 45 43 2a 20 29 3b 0a 09 48 52 45 53  OPSPEC* );..HRES
46c0: 55 4c 54 20 52 65 61 64 50 72 6f 70 65 72 74 79  ULT ReadProperty
46d0: 4e 61 6d 65 73 28 55 4c 4f 4e 47 2c 20 50 52 4f  Names(ULONG, PRO
46e0: 50 49 44 2a 20 2c 20 4c 50 57 53 54 52 2a 29 3b  PID* , LPWSTR*);
46f0: 0a 09 48 52 45 53 55 4c 54 20 57 72 69 74 65 50  ..HRESULT WriteP
4700: 72 6f 70 65 72 74 79 4e 61 6d 65 73 28 55 4c 4f  ropertyNames(ULO
4710: 4e 47 2c 20 50 52 4f 50 49 44 2a 20 2c 20 4c 50  NG, PROPID* , LP
4720: 57 53 54 52 2a 20 29 3b 0a 09 48 52 45 53 55 4c  WSTR* );..HRESUL
4730: 54 20 44 65 6c 65 74 65 50 72 6f 70 65 72 74 79  T DeleteProperty
4740: 4e 61 6d 65 73 28 55 4c 4f 4e 47 2c 20 50 52 4f  Names(ULONG, PRO
4750: 50 49 44 2a 20 29 3b 0a 09 48 52 45 53 55 4c 54  PID* );..HRESULT
4760: 20 53 65 74 43 6c 61 73 73 28 52 45 46 43 4c 53   SetClass(REFCLS
4770: 49 44 29 3b 0a 09 48 52 45 53 55 4c 54 20 43 6f  ID);..HRESULT Co
4780: 6d 6d 69 74 28 44 57 4f 52 44 29 3b 0a 09 48 52  mmit(DWORD);..HR
4790: 45 53 55 4c 54 20 52 65 76 65 72 74 28 29 3b 0a  ESULT Revert();.
47a0: 09 48 52 45 53 55 4c 54 20 45 6e 75 6d 28 49 45  .HRESULT Enum(IE
47b0: 6e 75 6d 53 54 41 54 50 52 4f 50 53 54 47 2a 2a  numSTATPROPSTG**
47c0: 29 3b 0a 09 48 52 45 53 55 4c 54 20 53 74 61 74  );..HRESULT Stat
47d0: 28 53 54 41 54 50 52 4f 50 53 54 47 2a 29 3b 0a  (STATPROPSTG*);.
47e0: 09 48 52 45 53 55 4c 54 20 53 65 74 54 69 6d 65  .HRESULT SetTime
47f0: 73 28 46 49 4c 45 54 49 4d 45 2a 20 2c 20 46 49  s(FILETIME* , FI
4800: 4c 45 54 49 4d 45 2a 20 2c 20 46 49 4c 45 54 49  LETIME* , FILETI
4810: 4d 45 2a 20 29 3b 0a 7d 0a 0a 69 6e 74 65 72 66  ME* );.}..interf
4820: 61 63 65 20 49 50 72 6f 70 65 72 74 79 53 65 74  ace IPropertySet
4830: 53 74 6f 72 61 67 65 20 3a 20 49 55 6e 6b 6e 6f  Storage : IUnkno
4840: 77 6e 20 7b 0a 09 48 52 45 53 55 4c 54 20 43 72  wn {..HRESULT Cr
4850: 65 61 74 65 28 52 45 46 46 4d 54 49 44 2c 20 43  eate(REFFMTID, C
4860: 4c 53 49 44 2a 2c 20 44 57 4f 52 44 2c 20 44 57  LSID*, DWORD, DW
4870: 4f 52 44 2c 20 4c 50 50 52 4f 50 45 52 54 59 53  ORD, LPPROPERTYS
4880: 54 4f 52 41 47 45 2a 29 3b 0a 09 48 52 45 53 55  TORAGE*);..HRESU
4890: 4c 54 20 4f 70 65 6e 28 52 45 46 46 4d 54 49 44  LT Open(REFFMTID
48a0: 2c 20 44 57 4f 52 44 2c 20 4c 50 50 52 4f 50 45  , DWORD, LPPROPE
48b0: 52 54 59 53 54 4f 52 41 47 45 2a 29 3b 0a 09 48  RTYSTORAGE*);..H
48c0: 52 45 53 55 4c 54 20 44 65 6c 65 74 65 28 52 45  RESULT Delete(RE
48d0: 46 46 4d 54 49 44 29 3b 0a 09 48 52 45 53 55 4c  FFMTID);..HRESUL
48e0: 54 20 45 6e 75 6d 28 49 45 6e 75 6d 53 54 41 54  T Enum(IEnumSTAT
48f0: 50 52 4f 50 53 45 54 53 54 47 2a 2a 29 3b 0a 7d  PROPSETSTG**);.}
4900: 0a 0a 69 6e 74 65 72 66 61 63 65 20 49 43 6c 69  ..interface ICli
4910: 65 6e 74 53 65 63 75 72 69 74 79 20 3a 20 49 55  entSecurity : IU
4920: 6e 6b 6e 6f 77 6e 20 7b 0a 09 48 52 45 53 55 4c  nknown {..HRESUL
4930: 54 20 51 75 65 72 79 42 6c 61 6e 6b 65 74 28 50  T QueryBlanket(P
4940: 56 4f 49 44 2c 20 50 44 57 4f 52 44 2c 20 50 44  VOID, PDWORD, PD
4950: 57 4f 52 44 2c 20 4f 4c 45 43 48 41 52 2a 2a 2c  WORD, OLECHAR**,
4960: 20 50 44 57 4f 52 44 2c 20 50 44 57 4f 52 44 2c   PDWORD, PDWORD,
4970: 20 52 50 43 5f 41 55 54 48 5f 49 44 45 4e 54 49   RPC_AUTH_IDENTI
4980: 54 59 5f 48 41 4e 44 4c 45 2a 2a 2c 20 50 44 57  TY_HANDLE**, PDW
4990: 4f 52 44 2a 29 3b 0a 09 48 52 45 53 55 4c 54 20  ORD*);..HRESULT 
49a0: 53 65 74 42 6c 61 6e 6b 65 74 28 50 56 4f 49 44  SetBlanket(PVOID
49b0: 2c 20 44 57 4f 52 44 2c 20 44 57 4f 52 44 2c 20  , DWORD, DWORD, 
49c0: 4c 50 57 53 54 52 2c 20 44 57 4f 52 44 2c 20 44  LPWSTR, DWORD, D
49d0: 57 4f 52 44 2c 20 52 50 43 5f 41 55 54 48 5f 49  WORD, RPC_AUTH_I
49e0: 44 45 4e 54 49 54 59 5f 48 41 4e 44 4c 45 2a 2c  DENTITY_HANDLE*,
49f0: 20 44 57 4f 52 44 29 3b 0a 09 48 52 45 53 55 4c   DWORD);..HRESUL
4a00: 54 20 43 6f 70 79 50 72 6f 78 79 28 4c 50 55 4e  T CopyProxy(LPUN
4a10: 4b 4e 4f 57 4e 2c 20 4c 50 55 4e 4b 4e 4f 57 4e  KNOWN, LPUNKNOWN
4a20: 2a 29 3b 0a 7d 0a 0a 69 6e 74 65 72 66 61 63 65  *);.}..interface
4a30: 20 49 53 65 72 76 65 72 53 65 63 75 72 69 74 79   IServerSecurity
4a40: 20 3a 20 49 55 6e 6b 6e 6f 77 6e 20 7b 0a 09 48   : IUnknown {..H
4a50: 52 45 53 55 4c 54 20 51 75 65 72 79 42 6c 61 6e  RESULT QueryBlan
4a60: 6b 65 74 28 50 44 57 4f 52 44 2c 20 50 44 57 4f  ket(PDWORD, PDWO
4a70: 52 44 2c 20 4f 4c 45 43 48 41 52 2a 2a 2c 20 50  RD, OLECHAR**, P
4a80: 44 57 4f 52 44 2c 20 50 44 57 4f 52 44 2c 20 52  DWORD, PDWORD, R
4a90: 50 43 5f 41 55 54 48 5a 5f 48 41 4e 44 4c 45 2a  PC_AUTHZ_HANDLE*
4aa0: 2c 20 50 44 57 4f 52 44 2a 29 3b 0a 09 48 52 45  , PDWORD*);..HRE
4ab0: 53 55 4c 54 20 49 6d 70 65 72 73 6f 6e 61 74 65  SULT Impersonate
4ac0: 43 6c 69 65 6e 74 28 29 3b 0a 09 48 52 45 53 55  Client();..HRESU
4ad0: 4c 54 20 52 65 76 65 72 74 54 6f 53 65 6c 66 28  LT RevertToSelf(
4ae0: 29 3b 0a 09 48 52 45 53 55 4c 54 20 49 73 49 6d  );..HRESULT IsIm
4af0: 70 65 72 73 6f 6e 61 74 69 6e 67 28 29 3b 0a 7d  personating();.}
4b00: 0a 0a 69 6e 74 65 72 66 61 63 65 20 49 43 6c 61  ..interface ICla
4b10: 73 73 41 63 74 69 76 61 74 6f 72 20 3a 20 49 55  ssActivator : IU
4b20: 6e 6b 6e 6f 77 6e 20 7b 0a 09 48 52 45 53 55 4c  nknown {..HRESUL
4b30: 54 20 47 65 74 43 6c 61 73 73 4f 62 6a 65 63 74  T GetClassObject
4b40: 28 52 45 46 43 4c 53 49 44 2c 20 44 57 4f 52 44  (REFCLSID, DWORD
4b50: 2c 20 4c 43 49 44 2c 20 52 45 46 49 49 44 2c 20  , LCID, REFIID, 
4b60: 50 56 4f 49 44 2a 29 3b 0a 7d 0a 0a 69 6e 74 65  PVOID*);.}..inte
4b70: 72 66 61 63 65 20 49 46 69 6c 6c 4c 6f 63 6b 42  rface IFillLockB
4b80: 79 74 65 73 20 3a 20 49 55 6e 6b 6e 6f 77 6e 20  ytes : IUnknown 
4b90: 7b 0a 09 48 52 45 53 55 4c 54 20 46 69 6c 6c 41  {..HRESULT FillA
4ba0: 70 70 65 6e 64 28 76 6f 69 64 2a 20 2c 20 55 4c  ppend(void* , UL
4bb0: 4f 4e 47 2c 20 50 55 4c 4f 4e 47 29 3b 0a 09 48  ONG, PULONG);..H
4bc0: 52 45 53 55 4c 54 20 46 69 6c 6c 41 74 28 55 4c  RESULT FillAt(UL
4bd0: 41 52 47 45 5f 49 4e 54 45 47 45 52 2c 20 76 6f  ARGE_INTEGER, vo
4be0: 69 64 2a 20 2c 20 55 4c 4f 4e 47 2c 20 50 55 4c  id* , ULONG, PUL
4bf0: 4f 4e 47 29 3b 0a 09 48 52 45 53 55 4c 54 20 53  ONG);..HRESULT S
4c00: 65 74 46 69 6c 6c 53 69 7a 65 28 55 4c 41 52 47  etFillSize(ULARG
4c10: 45 5f 49 4e 54 45 47 45 52 29 3b 0a 09 48 52 45  E_INTEGER);..HRE
4c20: 53 55 4c 54 20 54 65 72 6d 69 6e 61 74 65 28 42  SULT Terminate(B
4c30: 4f 4f 4c 29 3b 0a 7d 0a 0a 69 6e 74 65 72 66 61  OOL);.}..interfa
4c40: 63 65 20 49 50 72 6f 67 72 65 73 73 4e 6f 74 69  ce IProgressNoti
4c50: 66 79 20 3a 20 49 55 6e 6b 6e 6f 77 6e 20 7b 0a  fy : IUnknown {.
4c60: 09 48 52 45 53 55 4c 54 20 4f 6e 50 72 6f 67 72  .HRESULT OnProgr
4c70: 65 73 73 28 44 57 4f 52 44 2c 20 44 57 4f 52 44  ess(DWORD, DWORD
4c80: 2c 20 42 4f 4f 4c 2c 20 42 4f 4f 4c 29 3b 0a 7d  , BOOL, BOOL);.}
4c90: 0a 0a 69 6e 74 65 72 66 61 63 65 20 49 4c 61 79  ..interface ILay
4ca0: 6f 75 74 53 74 6f 72 61 67 65 20 3a 20 49 55 6e  outStorage : IUn
4cb0: 6b 6e 6f 77 6e 20 7b 0a 09 48 52 45 53 55 4c 54  known {..HRESULT
4cc0: 20 4c 61 79 6f 75 74 53 63 72 69 70 74 28 53 54   LayoutScript(ST
4cd0: 4f 52 41 47 45 4c 41 59 4f 55 54 2a 2c 20 44 57  ORAGELAYOUT*, DW
4ce0: 4f 52 44 2c 20 44 57 4f 52 44 29 3b 0a 09 48 52  ORD, DWORD);..HR
4cf0: 45 53 55 4c 54 20 42 65 67 69 6e 4d 6f 6e 69 74  ESULT BeginMonit
4d00: 6f 72 28 29 3b 0a 09 48 52 45 53 55 4c 54 20 45  or();..HRESULT E
4d10: 6e 64 4d 6f 6e 69 74 6f 72 28 29 3b 0a 09 48 52  ndMonitor();..HR
4d20: 45 53 55 4c 54 20 52 65 4c 61 79 6f 75 74 44 6f  ESULT ReLayoutDo
4d30: 63 66 69 6c 65 28 4f 4c 45 43 48 41 52 2a 29 3b  cfile(OLECHAR*);
4d40: 0a 7d 0a 0a 69 6e 74 65 72 66 61 63 65 20 49 47  .}..interface IG
4d50: 6c 6f 62 61 6c 49 6e 74 65 72 66 61 63 65 54 61  lobalInterfaceTa
4d60: 62 6c 65 20 3a 20 49 55 6e 6b 6e 6f 77 6e 20 7b  ble : IUnknown {
4d70: 0a 09 48 52 45 53 55 4c 54 20 52 65 67 69 73 74  ..HRESULT Regist
4d80: 65 72 49 6e 74 65 72 66 61 63 65 49 6e 47 6c 6f  erInterfaceInGlo
4d90: 62 61 6c 28 49 55 6e 6b 6e 6f 77 6e 2a 2c 20 52  bal(IUnknown*, R
4da0: 45 46 49 49 44 2c 20 44 57 4f 52 44 2a 29 3b 0a  EFIID, DWORD*);.
4db0: 09 48 52 45 53 55 4c 54 20 52 65 76 6f 6b 65 49  .HRESULT RevokeI
4dc0: 6e 74 65 72 66 61 63 65 46 72 6f 6d 47 6c 6f 62  nterfaceFromGlob
4dd0: 61 6c 28 44 57 4f 52 44 29 3b 0a 09 48 52 45 53  al(DWORD);..HRES
4de0: 55 4c 54 20 47 65 74 49 6e 74 65 72 66 61 63 65  ULT GetInterface
4df0: 46 72 6f 6d 47 6c 6f 62 61 6c 28 44 57 4f 52 44  FromGlobal(DWORD
4e00: 2c 20 52 45 46 49 49 44 2c 20 76 6f 69 64 2a 2a  , REFIID, void**
4e10: 29 3b 0a 7d 0a 0a 2f 2b 0a 2f 2f 20 54 68 65 73  );.}../+.// Thes
4e20: 65 20 61 72 65 20 70 72 6f 62 61 62 6c 79 20 75  e are probably u
4e30: 6e 6e 65 63 65 73 73 61 72 79 20 66 6f 72 20 44  nnecessary for D
4e40: 2e 0a 65 78 74 65 72 6e 20 28 57 69 6e 64 6f 77  ..extern (Window
4e50: 73 29 20 7b 0a 48 52 45 53 55 4c 54 20 49 4d 61  s) {.HRESULT IMa
4e60: 72 73 68 61 6c 5f 47 65 74 55 6e 6d 61 72 73 68  rshal_GetUnmarsh
4e70: 61 6c 43 6c 61 73 73 5f 50 72 6f 78 79 28 49 4d  alClass_Proxy(IM
4e80: 61 72 73 68 61 6c 2a 2c 20 52 45 46 49 49 44 2c  arshal*, REFIID,
4e90: 20 76 6f 69 64 2a 2c 20 44 57 4f 52 44 2c 20 76   void*, DWORD, v
4ea0: 6f 69 64 2a 2c 20 44 57 4f 52 44 2c 20 43 4c 53  oid*, DWORD, CLS
4eb0: 49 44 2a 29 3b 0a 76 6f 69 64 20 49 4d 61 72 73  ID*);.void IMars
4ec0: 68 61 6c 5f 47 65 74 55 6e 6d 61 72 73 68 61 6c  hal_GetUnmarshal
4ed0: 43 6c 61 73 73 5f 53 74 75 62 28 49 52 70 63 53  Class_Stub(IRpcS
4ee0: 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63  tubBuffer*, IRpc
4ef0: 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20  ChannelBuffer*, 
4f00: 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44  PRPC_MESSAGE, PD
4f10: 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49  WORD);.HRESULT I
4f20: 4d 61 72 73 68 61 6c 5f 47 65 74 4d 61 72 73 68  Marshal_GetMarsh
4f30: 61 6c 53 69 7a 65 4d 61 78 5f 50 72 6f 78 79 28  alSizeMax_Proxy(
4f40: 49 4d 61 72 73 68 61 6c 2a 2c 20 52 45 46 49 49  IMarshal*, REFII
4f50: 44 2c 20 76 6f 69 64 2a 2c 20 44 57 4f 52 44 2c  D, void*, DWORD,
4f60: 20 76 6f 69 64 2a 2c 20 44 57 4f 52 44 2c 20 44   void*, DWORD, D
4f70: 57 4f 52 44 2a 29 3b 0a 76 6f 69 64 20 49 4d 61  WORD*);.void IMa
4f80: 72 73 68 61 6c 5f 47 65 74 4d 61 72 73 68 61 6c  rshal_GetMarshal
4f90: 53 69 7a 65 4d 61 78 5f 53 74 75 62 28 49 52 70  SizeMax_Stub(IRp
4fa0: 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52  cStubBuffer*, IR
4fb0: 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a  pcChannelBuffer*
4fc0: 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20  , PRPC_MESSAGE, 
4fd0: 50 44 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54  PDWORD);.HRESULT
4fe0: 20 49 4d 61 72 73 68 61 6c 5f 4d 61 72 73 68 61   IMarshal_Marsha
4ff0: 6c 49 6e 74 65 72 66 61 63 65 5f 50 72 6f 78 79  lInterface_Proxy
5000: 28 49 4d 61 72 73 68 61 6c 2a 2c 20 49 53 74 72  (IMarshal*, IStr
5010: 65 61 6d 2a 2c 20 52 45 46 49 49 44 2c 20 76 6f  eam*, REFIID, vo
5020: 69 64 2a 2c 20 44 57 4f 52 44 2c 20 76 6f 69 64  id*, DWORD, void
5030: 2a 2c 20 44 57 4f 52 44 29 3b 0a 76 6f 69 64 20  *, DWORD);.void 
5040: 49 4d 61 72 73 68 61 6c 5f 4d 61 72 73 68 61 6c  IMarshal_Marshal
5050: 49 6e 74 65 72 66 61 63 65 5f 53 74 75 62 28 49  Interface_Stub(I
5060: 52 70 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20  RpcStubBuffer*, 
5070: 49 52 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65  IRpcChannelBuffe
5080: 72 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45  r*, PRPC_MESSAGE
5090: 2c 20 50 44 57 4f 52 44 29 3b 0a 48 52 45 53 55  , PDWORD);.HRESU
50a0: 4c 54 20 49 4d 61 72 73 68 61 6c 5f 55 6e 6d 61  LT IMarshal_Unma
50b0: 72 73 68 61 6c 49 6e 74 65 72 66 61 63 65 5f 50  rshalInterface_P
50c0: 72 6f 78 79 28 49 4d 61 72 73 68 61 6c 2a 2c 20  roxy(IMarshal*, 
50d0: 49 53 74 72 65 61 6d 2a 2c 20 52 45 46 49 49 44  IStream*, REFIID
50e0: 2c 20 76 6f 69 64 2a 2a 29 3b 0a 76 6f 69 64 20  , void**);.void 
50f0: 49 4d 61 72 73 68 61 6c 5f 55 6e 6d 61 72 73 68  IMarshal_Unmarsh
5100: 61 6c 49 6e 74 65 72 66 61 63 65 5f 53 74 75 62  alInterface_Stub
5110: 28 49 52 70 63 53 74 75 62 42 75 66 66 65 72 2a  (IRpcStubBuffer*
5120: 2c 20 49 52 70 63 43 68 61 6e 6e 65 6c 42 75 66  , IRpcChannelBuf
5130: 66 65 72 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41  fer*, PRPC_MESSA
5140: 47 45 2c 20 50 44 57 4f 52 44 29 3b 0a 48 52 45  GE, PDWORD);.HRE
5150: 53 55 4c 54 20 49 4d 61 72 73 68 61 6c 5f 52 65  SULT IMarshal_Re
5160: 6c 65 61 73 65 4d 61 72 73 68 61 6c 44 61 74 61  leaseMarshalData
5170: 5f 50 72 6f 78 79 28 49 4d 61 72 73 68 61 6c 2a  _Proxy(IMarshal*
5180: 2c 20 49 53 74 72 65 61 6d 2a 29 3b 0a 76 6f 69  , IStream*);.voi
5190: 64 20 49 4d 61 72 73 68 61 6c 5f 52 65 6c 65 61  d IMarshal_Relea
51a0: 73 65 4d 61 72 73 68 61 6c 44 61 74 61 5f 53 74  seMarshalData_St
51b0: 75 62 28 49 52 70 63 53 74 75 62 42 75 66 66 65  ub(IRpcStubBuffe
51c0: 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e 65 6c 42  r*, IRpcChannelB
51d0: 75 66 66 65 72 2a 2c 20 50 52 50 43 5f 4d 45 53  uffer*, PRPC_MES
51e0: 53 41 47 45 2c 20 50 44 57 4f 52 44 29 3b 0a 48  SAGE, PDWORD);.H
51f0: 52 45 53 55 4c 54 20 49 4d 61 72 73 68 61 6c 5f  RESULT IMarshal_
5200: 44 69 73 63 6f 6e 6e 65 63 74 4f 62 6a 65 63 74  DisconnectObject
5210: 5f 50 72 6f 78 79 28 49 4d 61 72 73 68 61 6c 2a  _Proxy(IMarshal*
5220: 2c 20 44 57 4f 52 44 29 3b 0a 76 6f 69 64 20 49  , DWORD);.void I
5230: 4d 61 72 73 68 61 6c 5f 44 69 73 63 6f 6e 6e 65  Marshal_Disconne
5240: 63 74 4f 62 6a 65 63 74 5f 53 74 75 62 28 49 52  ctObject_Stub(IR
5250: 70 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20 49  pcStubBuffer*, I
5260: 52 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72  RpcChannelBuffer
5270: 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45 2c  *, PRPC_MESSAGE,
5280: 20 50 44 57 4f 52 44 29 3b 0a 76 6f 69 64 2a 20   PDWORD);.void* 
5290: 49 4d 61 6c 6c 6f 63 5f 41 6c 6c 6f 63 5f 50 72  IMalloc_Alloc_Pr
52a0: 6f 78 79 28 49 4d 61 6c 6c 6f 63 2a 2c 20 55 4c  oxy(IMalloc*, UL
52b0: 4f 4e 47 29 3b 0a 76 6f 69 64 20 49 4d 61 6c 6c  ONG);.void IMall
52c0: 6f 63 5f 41 6c 6c 6f 63 5f 53 74 75 62 28 49 52  oc_Alloc_Stub(IR
52d0: 70 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20 49  pcStubBuffer*, I
52e0: 52 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72  RpcChannelBuffer
52f0: 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45 2c  *, PRPC_MESSAGE,
5300: 20 50 44 57 4f 52 44 29 3b 0a 76 6f 69 64 2a 20   PDWORD);.void* 
5310: 49 4d 61 6c 6c 6f 63 5f 52 65 61 6c 6c 6f 63 5f  IMalloc_Realloc_
5320: 50 72 6f 78 79 28 49 4d 61 6c 6c 6f 63 2a 2c 20  Proxy(IMalloc*, 
5330: 76 6f 69 64 2a 2c 20 55 4c 4f 4e 47 29 3b 0a 76  void*, ULONG);.v
5340: 6f 69 64 20 49 4d 61 6c 6c 6f 63 5f 52 65 61 6c  oid IMalloc_Real
5350: 6c 6f 63 5f 53 74 75 62 28 49 52 70 63 53 74 75  loc_Stub(IRpcStu
5360: 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43 68  bBuffer*, IRpcCh
5370: 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50 52  annelBuffer*, PR
5380: 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57 4f  PC_MESSAGE, PDWO
5390: 52 44 29 3b 0a 76 6f 69 64 20 49 4d 61 6c 6c 6f  RD);.void IMallo
53a0: 63 5f 46 72 65 65 5f 50 72 6f 78 79 28 49 4d 61  c_Free_Proxy(IMa
53b0: 6c 6c 6f 63 2a 2c 20 76 6f 69 64 2a 29 3b 0a 76  lloc*, void*);.v
53c0: 6f 69 64 20 49 4d 61 6c 6c 6f 63 5f 46 72 65 65  oid IMalloc_Free
53d0: 5f 53 74 75 62 28 49 52 70 63 53 74 75 62 42 75  _Stub(IRpcStubBu
53e0: 66 66 65 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e  ffer*, IRpcChann
53f0: 65 6c 42 75 66 66 65 72 2a 2c 20 50 52 50 43 5f  elBuffer*, PRPC_
5400: 4d 45 53 53 41 47 45 2c 20 50 44 57 4f 52 44 29  MESSAGE, PDWORD)
5410: 3b 0a 55 4c 4f 4e 47 20 49 4d 61 6c 6c 6f 63 5f  ;.ULONG IMalloc_
5420: 47 65 74 53 69 7a 65 5f 50 72 6f 78 79 28 49 4d  GetSize_Proxy(IM
5430: 61 6c 6c 6f 63 2a 2c 20 76 6f 69 64 2a 29 3b 0a  alloc*, void*);.
5440: 76 6f 69 64 20 49 4d 61 6c 6c 6f 63 5f 47 65 74  void IMalloc_Get
5450: 53 69 7a 65 5f 53 74 75 62 28 49 52 70 63 53 74  Size_Stub(IRpcSt
5460: 75 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43  ubBuffer*, IRpcC
5470: 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50  hannelBuffer*, P
5480: 52 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57  RPC_MESSAGE, PDW
5490: 4f 52 44 29 3b 0a 69 6e 74 20 49 4d 61 6c 6c 6f  ORD);.int IMallo
54a0: 63 5f 44 69 64 41 6c 6c 6f 63 5f 50 72 6f 78 79  c_DidAlloc_Proxy
54b0: 28 49 4d 61 6c 6c 6f 63 2a 2c 20 76 6f 69 64 2a  (IMalloc*, void*
54c0: 29 3b 0a 76 6f 69 64 20 49 4d 61 6c 6c 6f 63 5f  );.void IMalloc_
54d0: 44 69 64 41 6c 6c 6f 63 5f 53 74 75 62 28 49 52  DidAlloc_Stub(IR
54e0: 70 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20 49  pcStubBuffer*, I
54f0: 52 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72  RpcChannelBuffer
5500: 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45 2c  *, PRPC_MESSAGE,
5510: 20 50 44 57 4f 52 44 29 3b 0a 76 6f 69 64 20 49   PDWORD);.void I
5520: 4d 61 6c 6c 6f 63 5f 48 65 61 70 4d 69 6e 69 6d  Malloc_HeapMinim
5530: 69 7a 65 5f 50 72 6f 78 79 28 49 4d 61 6c 6c 6f  ize_Proxy(IMallo
5540: 63 2a 29 3b 0a 76 6f 69 64 20 49 4d 61 6c 6c 6f  c*);.void IMallo
5550: 63 5f 48 65 61 70 4d 69 6e 69 6d 69 7a 65 5f 53  c_HeapMinimize_S
5560: 74 75 62 28 49 52 70 63 53 74 75 62 42 75 66 66  tub(IRpcStubBuff
5570: 65 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e 65 6c  er*, IRpcChannel
5580: 42 75 66 66 65 72 2a 2c 20 50 52 50 43 5f 4d 45  Buffer*, PRPC_ME
5590: 53 53 41 47 45 2c 20 50 44 57 4f 52 44 29 3b 0a  SSAGE, PDWORD);.
55a0: 55 4c 4f 4e 47 20 49 4d 61 6c 6c 6f 63 53 70 79  ULONG IMallocSpy
55b0: 5f 50 72 65 41 6c 6c 6f 63 5f 50 72 6f 78 79 28  _PreAlloc_Proxy(
55c0: 49 4d 61 6c 6c 6f 63 53 70 79 2a 2c 20 55 4c 4f  IMallocSpy*, ULO
55d0: 4e 47 20 63 62 52 65 71 75 65 73 74 29 3b 0a 76  NG cbRequest);.v
55e0: 6f 69 64 20 49 4d 61 6c 6c 6f 63 53 70 79 5f 50  oid IMallocSpy_P
55f0: 72 65 41 6c 6c 6f 63 5f 53 74 75 62 28 49 52 70  reAlloc_Stub(IRp
5600: 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52  cStubBuffer*, IR
5610: 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a  pcChannelBuffer*
5620: 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20  , PRPC_MESSAGE, 
5630: 50 44 57 4f 52 44 29 3b 0a 76 6f 69 64 2a 20 49  PDWORD);.void* I
5640: 4d 61 6c 6c 6f 63 53 70 79 5f 50 6f 73 74 41 6c  MallocSpy_PostAl
5650: 6c 6f 63 5f 50 72 6f 78 79 28 49 4d 61 6c 6c 6f  loc_Proxy(IMallo
5660: 63 53 70 79 2a 2c 20 76 6f 69 64 2a 29 3b 0a 76  cSpy*, void*);.v
5670: 6f 69 64 20 49 4d 61 6c 6c 6f 63 53 70 79 5f 50  oid IMallocSpy_P
5680: 6f 73 74 41 6c 6c 6f 63 5f 53 74 75 62 28 49 52  ostAlloc_Stub(IR
5690: 70 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20 49  pcStubBuffer*, I
56a0: 52 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72  RpcChannelBuffer
56b0: 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45 2c  *, PRPC_MESSAGE,
56c0: 20 50 44 57 4f 52 44 29 3b 0a 76 6f 69 64 2a 20   PDWORD);.void* 
56d0: 49 4d 61 6c 6c 6f 63 53 70 79 5f 50 72 65 46 72  IMallocSpy_PreFr
56e0: 65 65 5f 50 72 6f 78 79 28 49 4d 61 6c 6c 6f 63  ee_Proxy(IMalloc
56f0: 53 70 79 2a 2c 20 76 6f 69 64 2a 2c 20 42 4f 4f  Spy*, void*, BOO
5700: 4c 29 3b 0a 76 6f 69 64 20 49 4d 61 6c 6c 6f 63  L);.void IMalloc
5710: 53 70 79 5f 50 72 65 46 72 65 65 5f 53 74 75 62  Spy_PreFree_Stub
5720: 28 49 52 70 63 53 74 75 62 42 75 66 66 65 72 2a  (IRpcStubBuffer*
5730: 2c 20 49 52 70 63 43 68 61 6e 6e 65 6c 42 75 66  , IRpcChannelBuf
5740: 66 65 72 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41  fer*, PRPC_MESSA
5750: 47 45 2c 20 50 44 57 4f 52 44 29 3b 0a 76 6f 69  GE, PDWORD);.voi
5760: 64 20 49 4d 61 6c 6c 6f 63 53 70 79 5f 50 6f 73  d IMallocSpy_Pos
5770: 74 46 72 65 65 5f 50 72 6f 78 79 28 49 4d 61 6c  tFree_Proxy(IMal
5780: 6c 6f 63 53 70 79 2a 2c 20 42 4f 4f 4c 29 3b 0a  locSpy*, BOOL);.
5790: 76 6f 69 64 20 49 4d 61 6c 6c 6f 63 53 70 79 5f  void IMallocSpy_
57a0: 50 6f 73 74 46 72 65 65 5f 53 74 75 62 28 49 52  PostFree_Stub(IR
57b0: 70 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20 49  pcStubBuffer*, I
57c0: 52 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72  RpcChannelBuffer
57d0: 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45 2c  *, PRPC_MESSAGE,
57e0: 20 50 44 57 4f 52 44 29 3b 0a 55 4c 4f 4e 47 20   PDWORD);.ULONG 
57f0: 49 4d 61 6c 6c 6f 63 53 70 79 5f 50 72 65 52 65  IMallocSpy_PreRe
5800: 61 6c 6c 6f 63 5f 50 72 6f 78 79 28 49 4d 61 6c  alloc_Proxy(IMal
5810: 6c 6f 63 53 70 79 2a 2c 20 76 6f 69 64 2a 2c 20  locSpy*, void*, 
5820: 55 4c 4f 4e 47 2c 20 76 6f 69 64 2a 2a 2c 20 42  ULONG, void**, B
5830: 4f 4f 4c 29 3b 0a 76 6f 69 64 20 49 4d 61 6c 6c  OOL);.void IMall
5840: 6f 63 53 70 79 5f 50 72 65 52 65 61 6c 6c 6f 63  ocSpy_PreRealloc
5850: 5f 53 74 75 62 28 49 52 70 63 53 74 75 62 42 75  _Stub(IRpcStubBu
5860: 66 66 65 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e  ffer*, IRpcChann
5870: 65 6c 42 75 66 66 65 72 2a 2c 20 50 52 50 43 5f  elBuffer*, PRPC_
5880: 4d 45 53 53 41 47 45 2c 20 50 44 57 4f 52 44 29  MESSAGE, PDWORD)
5890: 3b 0a 76 6f 69 64 2a 20 49 4d 61 6c 6c 6f 63 53  ;.void* IMallocS
58a0: 70 79 5f 50 6f 73 74 52 65 61 6c 6c 6f 63 5f 50  py_PostRealloc_P
58b0: 72 6f 78 79 28 49 4d 61 6c 6c 6f 63 53 70 79 2a  roxy(IMallocSpy*
58c0: 2c 20 76 6f 69 64 2a 2c 20 42 4f 4f 4c 29 3b 0a  , void*, BOOL);.
58d0: 76 6f 69 64 20 49 4d 61 6c 6c 6f 63 53 70 79 5f  void IMallocSpy_
58e0: 50 6f 73 74 52 65 61 6c 6c 6f 63 5f 53 74 75 62  PostRealloc_Stub
58f0: 28 49 52 70 63 53 74 75 62 42 75 66 66 65 72 2a  (IRpcStubBuffer*
5900: 2c 20 49 52 70 63 43 68 61 6e 6e 65 6c 42 75 66  , IRpcChannelBuf
5910: 66 65 72 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41  fer*, PRPC_MESSA
5920: 47 45 2c 20 50 44 57 4f 52 44 29 3b 0a 76 6f 69  GE, PDWORD);.voi
5930: 64 2a 20 49 4d 61 6c 6c 6f 63 53 70 79 5f 50 72  d* IMallocSpy_Pr
5940: 65 47 65 74 53 69 7a 65 5f 50 72 6f 78 79 28 49  eGetSize_Proxy(I
5950: 4d 61 6c 6c 6f 63 53 70 79 2a 2c 20 76 6f 69 64  MallocSpy*, void
5960: 2a 2c 20 42 4f 4f 4c 29 3b 0a 76 6f 69 64 20 49  *, BOOL);.void I
5970: 4d 61 6c 6c 6f 63 53 70 79 5f 50 72 65 47 65 74  MallocSpy_PreGet
5980: 53 69 7a 65 5f 53 74 75 62 28 49 52 70 63 53 74  Size_Stub(IRpcSt
5990: 75 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43  ubBuffer*, IRpcC
59a0: 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50  hannelBuffer*, P
59b0: 52 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57  RPC_MESSAGE, PDW
59c0: 4f 52 44 29 3b 0a 55 4c 4f 4e 47 20 49 4d 61 6c  ORD);.ULONG IMal
59d0: 6c 6f 63 53 70 79 5f 50 6f 73 74 47 65 74 53 69  locSpy_PostGetSi
59e0: 7a 65 5f 50 72 6f 78 79 28 49 4d 61 6c 6c 6f 63  ze_Proxy(IMalloc
59f0: 53 70 79 2a 2c 20 55 4c 4f 4e 47 2c 20 42 4f 4f  Spy*, ULONG, BOO
5a00: 4c 29 3b 0a 76 6f 69 64 20 49 4d 61 6c 6c 6f 63  L);.void IMalloc
5a10: 53 70 79 5f 50 6f 73 74 47 65 74 53 69 7a 65 5f  Spy_PostGetSize_
5a20: 53 74 75 62 28 49 52 70 63 53 74 75 62 42 75 66  Stub(IRpcStubBuf
5a30: 66 65 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e 65  fer*, IRpcChanne
5a40: 6c 42 75 66 66 65 72 2a 2c 20 50 52 50 43 5f 4d  lBuffer*, PRPC_M
5a50: 45 53 53 41 47 45 2c 20 50 44 57 4f 52 44 29 3b  ESSAGE, PDWORD);
5a60: 0a 76 6f 69 64 2a 20 49 4d 61 6c 6c 6f 63 53 70  .void* IMallocSp
5a70: 79 5f 50 72 65 44 69 64 41 6c 6c 6f 63 5f 50 72  y_PreDidAlloc_Pr
5a80: 6f 78 79 28 49 4d 61 6c 6c 6f 63 53 70 79 2a 2c  oxy(IMallocSpy*,
5a90: 20 76 6f 69 64 2a 2c 20 42 4f 4f 4c 29 3b 0a 76   void*, BOOL);.v
5aa0: 6f 69 64 20 49 4d 61 6c 6c 6f 63 53 70 79 5f 50  oid IMallocSpy_P
5ab0: 72 65 44 69 64 41 6c 6c 6f 63 5f 53 74 75 62 28  reDidAlloc_Stub(
5ac0: 49 52 70 63 53 74 75 62 42 75 66 66 65 72 2a 2c  IRpcStubBuffer*,
5ad0: 20 49 52 70 63 43 68 61 6e 6e 65 6c 42 75 66 66   IRpcChannelBuff
5ae0: 65 72 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41 47  er*, PRPC_MESSAG
5af0: 45 2c 20 50 44 57 4f 52 44 29 3b 0a 69 6e 74 20  E, PDWORD);.int 
5b00: 49 4d 61 6c 6c 6f 63 53 70 79 5f 50 6f 73 74 44  IMallocSpy_PostD
5b10: 69 64 41 6c 6c 6f 63 5f 50 72 6f 78 79 28 49 4d  idAlloc_Proxy(IM
5b20: 61 6c 6c 6f 63 53 70 79 2a 2c 20 76 6f 69 64 2a  allocSpy*, void*
5b30: 2c 20 42 4f 4f 4c 2c 20 69 6e 74 29 3b 0a 76 6f  , BOOL, int);.vo
5b40: 69 64 20 49 4d 61 6c 6c 6f 63 53 70 79 5f 50 6f  id IMallocSpy_Po
5b50: 73 74 44 69 64 41 6c 6c 6f 63 5f 53 74 75 62 28  stDidAlloc_Stub(
5b60: 49 52 70 63 53 74 75 62 42 75 66 66 65 72 2a 2c  IRpcStubBuffer*,
5b70: 20 49 52 70 63 43 68 61 6e 6e 65 6c 42 75 66 66   IRpcChannelBuff
5b80: 65 72 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41 47  er*, PRPC_MESSAG
5b90: 45 2c 20 50 44 57 4f 52 44 29 3b 0a 76 6f 69 64  E, PDWORD);.void
5ba0: 20 49 4d 61 6c 6c 6f 63 53 70 79 5f 50 72 65 48   IMallocSpy_PreH
5bb0: 65 61 70 4d 69 6e 69 6d 69 7a 65 5f 50 72 6f 78  eapMinimize_Prox
5bc0: 79 28 49 4d 61 6c 6c 6f 63 53 70 79 2a 20 29 3b  y(IMallocSpy* );
5bd0: 0a 76 6f 69 64 20 49 4d 61 6c 6c 6f 63 53 70 79  .void IMallocSpy
5be0: 5f 50 72 65 48 65 61 70 4d 69 6e 69 6d 69 7a 65  _PreHeapMinimize
5bf0: 5f 53 74 75 62 28 49 52 70 63 53 74 75 62 42 75  _Stub(IRpcStubBu
5c00: 66 66 65 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e  ffer*, IRpcChann
5c10: 65 6c 42 75 66 66 65 72 2a 2c 20 50 52 50 43 5f  elBuffer*, PRPC_
5c20: 4d 45 53 53 41 47 45 2c 20 50 44 57 4f 52 44 29  MESSAGE, PDWORD)
5c30: 3b 0a 76 6f 69 64 20 49 4d 61 6c 6c 6f 63 53 70  ;.void IMallocSp
5c40: 79 5f 50 6f 73 74 48 65 61 70 4d 69 6e 69 6d 69  y_PostHeapMinimi
5c50: 7a 65 5f 50 72 6f 78 79 28 49 4d 61 6c 6c 6f 63  ze_Proxy(IMalloc
5c60: 53 70 79 2a 29 3b 0a 76 6f 69 64 20 49 4d 61 6c  Spy*);.void IMal
5c70: 6c 6f 63 53 70 79 5f 50 6f 73 74 48 65 61 70 4d  locSpy_PostHeapM
5c80: 69 6e 69 6d 69 7a 65 5f 53 74 75 62 28 49 52 70  inimize_Stub(IRp
5c90: 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52  cStubBuffer*, IR
5ca0: 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a  pcChannelBuffer*
5cb0: 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20  , PRPC_MESSAGE, 
5cc0: 50 44 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54  PDWORD);.HRESULT
5cd0: 20 49 53 74 64 4d 61 72 73 68 61 6c 49 6e 66 6f   IStdMarshalInfo
5ce0: 5f 47 65 74 43 6c 61 73 73 46 6f 72 48 61 6e 64  _GetClassForHand
5cf0: 6c 65 72 5f 50 72 6f 78 79 28 49 53 74 64 4d 61  ler_Proxy(IStdMa
5d00: 72 73 68 61 6c 49 6e 66 6f 2a 2c 20 44 57 4f 52  rshalInfo*, DWOR
5d10: 44 2c 20 76 6f 69 64 2a 2c 20 43 4c 53 49 44 2a  D, void*, CLSID*
5d20: 29 3b 0a 76 6f 69 64 20 49 53 74 64 4d 61 72 73  );.void IStdMars
5d30: 68 61 6c 49 6e 66 6f 5f 47 65 74 43 6c 61 73 73  halInfo_GetClass
5d40: 46 6f 72 48 61 6e 64 6c 65 72 5f 53 74 75 62 28  ForHandler_Stub(
5d50: 49 52 70 63 53 74 75 62 42 75 66 66 65 72 2a 2c  IRpcStubBuffer*,
5d60: 20 49 52 70 63 43 68 61 6e 6e 65 6c 42 75 66 66   IRpcChannelBuff
5d70: 65 72 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41 47  er*, PRPC_MESSAG
5d80: 45 2c 20 50 44 57 4f 52 44 29 3b 0a 44 57 4f 52  E, PDWORD);.DWOR
5d90: 44 20 49 45 78 74 65 72 6e 61 6c 43 6f 6e 6e 65  D IExternalConne
5da0: 63 74 69 6f 6e 5f 41 64 64 43 6f 6e 6e 65 63 74  ction_AddConnect
5db0: 69 6f 6e 5f 50 72 6f 78 79 28 49 45 78 74 65 72  ion_Proxy(IExter
5dc0: 6e 61 6c 43 6f 6e 6e 65 63 74 69 6f 6e 2a 2c 20  nalConnection*, 
5dd0: 44 57 4f 52 44 2c 20 44 57 4f 52 44 29 3b 0a 76  DWORD, DWORD);.v
5de0: 6f 69 64 20 49 45 78 74 65 72 6e 61 6c 43 6f 6e  oid IExternalCon
5df0: 6e 65 63 74 69 6f 6e 5f 41 64 64 43 6f 6e 6e 65  nection_AddConne
5e00: 63 74 69 6f 6e 5f 53 74 75 62 28 49 52 70 63 53  ction_Stub(IRpcS
5e10: 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63  tubBuffer*, IRpc
5e20: 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20  ChannelBuffer*, 
5e30: 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44  PRPC_MESSAGE, PD
5e40: 57 4f 52 44 29 3b 0a 44 57 4f 52 44 20 49 45 78  WORD);.DWORD IEx
5e50: 74 65 72 6e 61 6c 43 6f 6e 6e 65 63 74 69 6f 6e  ternalConnection
5e60: 5f 52 65 6c 65 61 73 65 43 6f 6e 6e 65 63 74 69  _ReleaseConnecti
5e70: 6f 6e 5f 50 72 6f 78 79 28 49 45 78 74 65 72 6e  on_Proxy(IExtern
5e80: 61 6c 43 6f 6e 6e 65 63 74 69 6f 6e 2a 2c 20 44  alConnection*, D
5e90: 57 4f 52 44 2c 20 44 57 4f 52 44 2c 20 42 4f 4f  WORD, DWORD, BOO
5ea0: 4c 29 3b 0a 76 6f 69 64 20 49 45 78 74 65 72 6e  L);.void IExtern
5eb0: 61 6c 43 6f 6e 6e 65 63 74 69 6f 6e 5f 52 65 6c  alConnection_Rel
5ec0: 65 61 73 65 43 6f 6e 6e 65 63 74 69 6f 6e 5f 53  easeConnection_S
5ed0: 74 75 62 28 49 52 70 63 53 74 75 62 42 75 66 66  tub(IRpcStubBuff
5ee0: 65 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e 65 6c  er*, IRpcChannel
5ef0: 42 75 66 66 65 72 2a 2c 20 50 52 50 43 5f 4d 45  Buffer*, PRPC_ME
5f00: 53 53 41 47 45 2c 20 50 44 57 4f 52 44 29 3b 0a  SSAGE, PDWORD);.
5f10: 48 52 45 53 55 4c 54 20 49 45 6e 75 6d 55 6e 6b  HRESULT IEnumUnk
5f20: 6e 6f 77 6e 5f 52 65 6d 6f 74 65 4e 65 78 74 5f  nown_RemoteNext_
5f30: 50 72 6f 78 79 28 49 45 6e 75 6d 55 6e 6b 6e 6f  Proxy(IEnumUnkno
5f40: 77 6e 2a 2c 20 55 4c 4f 4e 47 2c 20 49 55 6e 6b  wn*, ULONG, IUnk
5f50: 6e 6f 77 6e 2a 2a 2c 20 55 4c 4f 4e 47 2a 29 3b  nown**, ULONG*);
5f60: 0a 76 6f 69 64 20 49 45 6e 75 6d 55 6e 6b 6e 6f  .void IEnumUnkno
5f70: 77 6e 5f 52 65 6d 6f 74 65 4e 65 78 74 5f 53 74  wn_RemoteNext_St
5f80: 75 62 28 49 52 70 63 53 74 75 62 42 75 66 66 65  ub(IRpcStubBuffe
5f90: 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e 65 6c 42  r*, IRpcChannelB
5fa0: 75 66 66 65 72 2a 2c 20 50 52 50 43 5f 4d 45 53  uffer*, PRPC_MES
5fb0: 53 41 47 45 2c 20 50 44 57 4f 52 44 29 3b 0a 48  SAGE, PDWORD);.H
5fc0: 52 45 53 55 4c 54 20 49 45 6e 75 6d 55 6e 6b 6e  RESULT IEnumUnkn
5fd0: 6f 77 6e 5f 53 6b 69 70 5f 50 72 6f 78 79 28 49  own_Skip_Proxy(I
5fe0: 45 6e 75 6d 55 6e 6b 6e 6f 77 6e 2a 2c 20 55 4c  EnumUnknown*, UL
5ff0: 4f 4e 47 29 3b 0a 76 6f 69 64 20 49 45 6e 75 6d  ONG);.void IEnum
6000: 55 6e 6b 6e 6f 77 6e 5f 53 6b 69 70 5f 53 74 75  Unknown_Skip_Stu
6010: 62 28 49 52 70 63 53 74 75 62 42 75 66 66 65 72  b(IRpcStubBuffer
6020: 2a 2c 20 49 52 70 63 43 68 61 6e 6e 65 6c 42 75  *, IRpcChannelBu
6030: 66 66 65 72 2a 2c 20 50 52 50 43 5f 4d 45 53 53  ffer*, PRPC_MESS
6040: 41 47 45 2c 20 50 44 57 4f 52 44 29 3b 0a 48 52  AGE, PDWORD);.HR
6050: 45 53 55 4c 54 20 49 45 6e 75 6d 55 6e 6b 6e 6f  ESULT IEnumUnkno
6060: 77 6e 5f 52 65 73 65 74 5f 50 72 6f 78 79 28 49  wn_Reset_Proxy(I
6070: 45 6e 75 6d 55 6e 6b 6e 6f 77 6e 2a 20 29 3b 0a  EnumUnknown* );.
6080: 76 6f 69 64 20 49 45 6e 75 6d 55 6e 6b 6e 6f 77  void IEnumUnknow
6090: 6e 5f 52 65 73 65 74 5f 53 74 75 62 28 49 52 70  n_Reset_Stub(IRp
60a0: 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52  cStubBuffer*, IR
60b0: 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a  pcChannelBuffer*
60c0: 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20  , PRPC_MESSAGE, 
60d0: 50 44 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54  PDWORD);.HRESULT
60e0: 20 49 45 6e 75 6d 55 6e 6b 6e 6f 77 6e 5f 43 6c   IEnumUnknown_Cl
60f0: 6f 6e 65 5f 50 72 6f 78 79 28 49 45 6e 75 6d 55  one_Proxy(IEnumU
6100: 6e 6b 6e 6f 77 6e 2a 2c 20 49 45 6e 75 6d 55 6e  nknown*, IEnumUn
6110: 6b 6e 6f 77 6e 2a 2a 29 3b 0a 76 6f 69 64 20 49  known**);.void I
6120: 45 6e 75 6d 55 6e 6b 6e 6f 77 6e 5f 43 6c 6f 6e  EnumUnknown_Clon
6130: 65 5f 53 74 75 62 28 49 52 70 63 53 74 75 62 42  e_Stub(IRpcStubB
6140: 75 66 66 65 72 2a 2c 20 49 52 70 63 43 68 61 6e  uffer*, IRpcChan
6150: 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50 52 50 43  nelBuffer*, PRPC
6160: 5f 4d 45 53 53 41 47 45 2c 20 50 44 57 4f 52 44  _MESSAGE, PDWORD
6170: 29 3b 0a 48 52 45 53 55 4c 54 20 49 42 69 6e 64  );.HRESULT IBind
6180: 43 74 78 5f 52 65 67 69 73 74 65 72 4f 62 6a 65  Ctx_RegisterObje
6190: 63 74 42 6f 75 6e 64 5f 50 72 6f 78 79 28 49 42  ctBound_Proxy(IB
61a0: 69 6e 64 43 74 78 2a 2c 20 49 55 6e 6b 6e 6f 77  indCtx*, IUnknow
61b0: 6e 2a 70 75 6e 6b 29 3b 0a 76 6f 69 64 20 49 42  n*punk);.void IB
61c0: 69 6e 64 43 74 78 5f 52 65 67 69 73 74 65 72 4f  indCtx_RegisterO
61d0: 62 6a 65 63 74 42 6f 75 6e 64 5f 53 74 75 62 28  bjectBound_Stub(
61e0: 49 52 70 63 53 74 75 62 42 75 66 66 65 72 2a 2c  IRpcStubBuffer*,
61f0: 20 49 52 70 63 43 68 61 6e 6e 65 6c 42 75 66 66   IRpcChannelBuff
6200: 65 72 2a 5f 70 52 70 63 43 68 61 6e 6e 65 6c 42  er*_pRpcChannelB
6210: 75 66 66 65 72 2c 20 50 52 50 43 5f 4d 45 53 53  uffer, PRPC_MESS
6220: 41 47 45 2c 20 50 44 57 4f 52 44 29 3b 0a 48 52  AGE, PDWORD);.HR
6230: 45 53 55 4c 54 20 49 42 69 6e 64 43 74 78 5f 52  ESULT IBindCtx_R
6240: 65 76 6f 6b 65 4f 62 6a 65 63 74 42 6f 75 6e 64  evokeObjectBound
6250: 5f 50 72 6f 78 79 28 49 42 69 6e 64 43 74 78 2a  _Proxy(IBindCtx*
6260: 2c 20 49 55 6e 6b 6e 6f 77 6e 2a 70 75 6e 6b 29  , IUnknown*punk)
6270: 3b 0a 76 6f 69 64 20 49 42 69 6e 64 43 74 78 5f  ;.void IBindCtx_
6280: 52 65 76 6f 6b 65 4f 62 6a 65 63 74 42 6f 75 6e  RevokeObjectBoun
6290: 64 5f 53 74 75 62 28 49 52 70 63 53 74 75 62 42  d_Stub(IRpcStubB
62a0: 75 66 66 65 72 2a 2c 20 49 52 70 63 43 68 61 6e  uffer*, IRpcChan
62b0: 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50 52 50 43  nelBuffer*, PRPC
62c0: 5f 4d 45 53 53 41 47 45 2c 20 50 44 57 4f 52 44  _MESSAGE, PDWORD
62d0: 29 3b 0a 48 52 45 53 55 4c 54 20 49 42 69 6e 64  );.HRESULT IBind
62e0: 43 74 78 5f 52 65 6c 65 61 73 65 42 6f 75 6e 64  Ctx_ReleaseBound
62f0: 4f 62 6a 65 63 74 73 5f 50 72 6f 78 79 28 49 42  Objects_Proxy(IB
6300: 69 6e 64 43 74 78 2a 29 3b 0a 76 6f 69 64 20 49  indCtx*);.void I
6310: 42 69 6e 64 43 74 78 5f 52 65 6c 65 61 73 65 42  BindCtx_ReleaseB
6320: 6f 75 6e 64 4f 62 6a 65 63 74 73 5f 53 74 75 62  oundObjects_Stub
6330: 28 49 52 70 63 53 74 75 62 42 75 66 66 65 72 2a  (IRpcStubBuffer*
6340: 2c 20 49 52 70 63 43 68 61 6e 6e 65 6c 42 75 66  , IRpcChannelBuf
6350: 66 65 72 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41  fer*, PRPC_MESSA
6360: 47 45 2c 20 50 44 57 4f 52 44 29 3b 0a 48 52 45  GE, PDWORD);.HRE
6370: 53 55 4c 54 20 49 42 69 6e 64 43 74 78 5f 53 65  SULT IBindCtx_Se
6380: 74 42 69 6e 64 4f 70 74 69 6f 6e 73 5f 50 72 6f  tBindOptions_Pro
6390: 78 79 28 49 42 69 6e 64 43 74 78 2a 2c 20 42 49  xy(IBindCtx*, BI
63a0: 4e 44 5f 4f 50 54 53 2a 29 3b 0a 76 6f 69 64 20  ND_OPTS*);.void 
63b0: 49 42 69 6e 64 43 74 78 5f 53 65 74 42 69 6e 64  IBindCtx_SetBind
63c0: 4f 70 74 69 6f 6e 73 5f 53 74 75 62 28 49 52 70  Options_Stub(IRp
63d0: 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52  cStubBuffer*, IR
63e0: 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a  pcChannelBuffer*
63f0: 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20  , PRPC_MESSAGE, 
6400: 50 44 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54  PDWORD);.HRESULT
6410: 20 49 42 69 6e 64 43 74 78 5f 47 65 74 42 69 6e   IBindCtx_GetBin
6420: 64 4f 70 74 69 6f 6e 73 5f 50 72 6f 78 79 28 49  dOptions_Proxy(I
6430: 42 69 6e 64 43 74 78 2a 2c 20 42 49 4e 44 5f 4f  BindCtx*, BIND_O
6440: 50 54 53 2a 70 62 69 6e 64 6f 70 74 73 29 3b 0a  PTS*pbindopts);.
6450: 76 6f 69 64 20 49 42 69 6e 64 43 74 78 5f 47 65  void IBindCtx_Ge
6460: 74 42 69 6e 64 4f 70 74 69 6f 6e 73 5f 53 74 75  tBindOptions_Stu
6470: 62 28 49 52 70 63 53 74 75 62 42 75 66 66 65 72  b(IRpcStubBuffer
6480: 2a 2c 20 49 52 70 63 43 68 61 6e 6e 65 6c 42 75  *, IRpcChannelBu
6490: 66 66 65 72 2a 2c 20 50 52 50 43 5f 4d 45 53 53  ffer*, PRPC_MESS
64a0: 41 47 45 2c 20 50 44 57 4f 52 44 29 3b 0a 48 52  AGE, PDWORD);.HR
64b0: 45 53 55 4c 54 20 49 42 69 6e 64 43 74 78 5f 47  ESULT IBindCtx_G
64c0: 65 74 52 75 6e 6e 69 6e 67 4f 62 6a 65 63 74 54  etRunningObjectT
64d0: 61 62 6c 65 5f 50 72 6f 78 79 28 49 42 69 6e 64  able_Proxy(IBind
64e0: 43 74 78 2a 2c 20 49 52 75 6e 6e 69 6e 67 4f 62  Ctx*, IRunningOb
64f0: 6a 65 63 74 54 61 62 6c 65 2a 2a 29 3b 0a 76 6f  jectTable**);.vo
6500: 69 64 20 49 42 69 6e 64 43 74 78 5f 47 65 74 52  id IBindCtx_GetR
6510: 75 6e 6e 69 6e 67 4f 62 6a 65 63 74 54 61 62 6c  unningObjectTabl
6520: 65 5f 53 74 75 62 28 49 52 70 63 53 74 75 62 42  e_Stub(IRpcStubB
6530: 75 66 66 65 72 2a 2c 20 49 52 70 63 43 68 61 6e  uffer*, IRpcChan
6540: 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50 52 50 43  nelBuffer*, PRPC
6550: 5f 4d 45 53 53 41 47 45 2c 20 50 44 57 4f 52 44  _MESSAGE, PDWORD
6560: 29 3b 0a 48 52 45 53 55 4c 54 20 49 42 69 6e 64  );.HRESULT IBind
6570: 43 74 78 5f 52 65 67 69 73 74 65 72 4f 62 6a 65  Ctx_RegisterObje
6580: 63 74 50 61 72 61 6d 5f 50 72 6f 78 79 28 49 42  ctParam_Proxy(IB
6590: 69 6e 64 43 74 78 2a 2c 20 4c 50 43 53 54 52 2c  indCtx*, LPCSTR,
65a0: 20 49 55 6e 6b 6e 6f 77 6e 2a 29 3b 0a 76 6f 69   IUnknown*);.voi
65b0: 64 20 49 42 69 6e 64 43 74 78 5f 52 65 67 69 73  d IBindCtx_Regis
65c0: 74 65 72 4f 62 6a 65 63 74 50 61 72 61 6d 5f 53  terObjectParam_S
65d0: 74 75 62 28 49 52 70 63 53 74 75 62 42 75 66 66  tub(IRpcStubBuff
65e0: 65 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e 65 6c  er*, IRpcChannel
65f0: 42 75 66 66 65 72 2a 2c 20 50 52 50 43 5f 4d 45  Buffer*, PRPC_ME
6600: 53 53 41 47 45 2c 20 50 44 57 4f 52 44 29 3b 0a  SSAGE, PDWORD);.
6610: 48 52 45 53 55 4c 54 20 49 42 69 6e 64 43 74 78  HRESULT IBindCtx
6620: 5f 47 65 74 4f 62 6a 65 63 74 50 61 72 61 6d 5f  _GetObjectParam_
6630: 50 72 6f 78 79 28 49 42 69 6e 64 43 74 78 2a 2c  Proxy(IBindCtx*,
6640: 20 4c 50 43 53 54 52 2c 20 49 55 6e 6b 6e 6f 77   LPCSTR, IUnknow
6650: 6e 2a 2a 29 3b 0a 76 6f 69 64 20 49 42 69 6e 64  n**);.void IBind
6660: 43 74 78 5f 47 65 74 4f 62 6a 65 63 74 50 61 72  Ctx_GetObjectPar
6670: 61 6d 5f 53 74 75 62 28 49 52 70 63 53 74 75 62  am_Stub(IRpcStub
6680: 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43 68 61  Buffer*, IRpcCha
6690: 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50 52 50  nnelBuffer*, PRP
66a0: 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57 4f 52  C_MESSAGE, PDWOR
66b0: 44 29 3b 0a 48 52 45 53 55 4c 54 20 49 42 69 6e  D);.HRESULT IBin
66c0: 64 43 74 78 5f 45 6e 75 6d 4f 62 6a 65 63 74 50  dCtx_EnumObjectP
66d0: 61 72 61 6d 5f 50 72 6f 78 79 28 49 42 69 6e 64  aram_Proxy(IBind
66e0: 43 74 78 2a 2c 20 49 45 6e 75 6d 53 74 72 69 6e  Ctx*, IEnumStrin
66f0: 67 2a 2a 29 3b 0a 76 6f 69 64 20 49 42 69 6e 64  g**);.void IBind
6700: 43 74 78 5f 45 6e 75 6d 4f 62 6a 65 63 74 50 61  Ctx_EnumObjectPa
6710: 72 61 6d 5f 53 74 75 62 28 49 52 70 63 53 74 75  ram_Stub(IRpcStu
6720: 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43 68  bBuffer*, IRpcCh
6730: 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50 52  annelBuffer*, PR
6740: 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57 4f  PC_MESSAGE, PDWO
6750: 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49 42 69  RD);.HRESULT IBi
6760: 6e 64 43 74 78 5f 52 65 76 6f 6b 65 4f 62 6a 65  ndCtx_RevokeObje
6770: 63 74 50 61 72 61 6d 5f 50 72 6f 78 79 28 49 42  ctParam_Proxy(IB
6780: 69 6e 64 43 74 78 2a 2c 20 4c 50 43 53 54 52 29  indCtx*, LPCSTR)
6790: 3b 0a 76 6f 69 64 20 49 42 69 6e 64 43 74 78 5f  ;.void IBindCtx_
67a0: 52 65 76 6f 6b 65 4f 62 6a 65 63 74 50 61 72 61  RevokeObjectPara
67b0: 6d 5f 53 74 75 62 28 49 52 70 63 53 74 75 62 42  m_Stub(IRpcStubB
67c0: 75 66 66 65 72 2a 2c 20 49 52 70 63 43 68 61 6e  uffer*, IRpcChan
67d0: 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50 52 50 43  nelBuffer*, PRPC
67e0: 5f 4d 45 53 53 41 47 45 2c 20 50 44 57 4f 52 44  _MESSAGE, PDWORD
67f0: 29 3b 0a 48 52 45 53 55 4c 54 20 49 45 6e 75 6d  );.HRESULT IEnum
6800: 4d 6f 6e 69 6b 65 72 5f 52 65 6d 6f 74 65 4e 65  Moniker_RemoteNe
6810: 78 74 5f 50 72 6f 78 79 28 49 45 6e 75 6d 4d 6f  xt_Proxy(IEnumMo
6820: 6e 69 6b 65 72 2a 2c 20 55 4c 4f 4e 47 2c 20 49  niker*, ULONG, I
6830: 4d 6f 6e 69 6b 65 72 2a 2a 2c 20 55 4c 4f 4e 47  Moniker**, ULONG
6840: 2a 29 3b 0a 76 6f 69 64 20 49 45 6e 75 6d 4d 6f  *);.void IEnumMo
6850: 6e 69 6b 65 72 5f 52 65 6d 6f 74 65 4e 65 78 74  niker_RemoteNext
6860: 5f 53 74 75 62 28 49 52 70 63 53 74 75 62 42 75  _Stub(IRpcStubBu
6870: 66 66 65 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e  ffer*, IRpcChann
6880: 65 6c 42 75 66 66 65 72 2a 2c 20 50 52 50 43 5f  elBuffer*, PRPC_
6890: 4d 45 53 53 41 47 45 2c 20 50 44 57 4f 52 44 29  MESSAGE, PDWORD)
68a0: 3b 0a 48 52 45 53 55 4c 54 20 49 45 6e 75 6d 4d  ;.HRESULT IEnumM
68b0: 6f 6e 69 6b 65 72 5f 53 6b 69 70 5f 50 72 6f 78  oniker_Skip_Prox
68c0: 79 28 49 45 6e 75 6d 4d 6f 6e 69 6b 65 72 2a 2c  y(IEnumMoniker*,
68d0: 20 55 4c 4f 4e 47 29 3b 0a 76 6f 69 64 20 49 45   ULONG);.void IE
68e0: 6e 75 6d 4d 6f 6e 69 6b 65 72 5f 53 6b 69 70 5f  numMoniker_Skip_
68f0: 53 74 75 62 28 49 52 70 63 53 74 75 62 42 75 66  Stub(IRpcStubBuf
6900: 66 65 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e 65  fer*, IRpcChanne
6910: 6c 42 75 66 66 65 72 2a 2c 20 50 52 50 43 5f 4d  lBuffer*, PRPC_M
6920: 45 53 53 41 47 45 2c 20 50 44 57 4f 52 44 29 3b  ESSAGE, PDWORD);
6930: 0a 48 52 45 53 55 4c 54 20 49 45 6e 75 6d 4d 6f  .HRESULT IEnumMo
6940: 6e 69 6b 65 72 5f 52 65 73 65 74 5f 50 72 6f 78  niker_Reset_Prox
6950: 79 28 49 45 6e 75 6d 4d 6f 6e 69 6b 65 72 2a 29  y(IEnumMoniker*)
6960: 3b 0a 76 6f 69 64 20 49 45 6e 75 6d 4d 6f 6e 69  ;.void IEnumMoni
6970: 6b 65 72 5f 52 65 73 65 74 5f 53 74 75 62 28 49  ker_Reset_Stub(I
6980: 52 70 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20  RpcStubBuffer*, 
6990: 49 52 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65  IRpcChannelBuffe
69a0: 72 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45  r*, PRPC_MESSAGE
69b0: 2c 20 50 44 57 4f 52 44 29 3b 0a 48 52 45 53 55  , PDWORD);.HRESU
69c0: 4c 54 20 49 45 6e 75 6d 4d 6f 6e 69 6b 65 72 5f  LT IEnumMoniker_
69d0: 43 6c 6f 6e 65 5f 50 72 6f 78 79 28 49 45 6e 75  Clone_Proxy(IEnu
69e0: 6d 4d 6f 6e 69 6b 65 72 2a 2c 20 49 45 6e 75 6d  mMoniker*, IEnum
69f0: 4d 6f 6e 69 6b 65 72 2a 2a 29 3b 0a 76 6f 69 64  Moniker**);.void
6a00: 20 49 45 6e 75 6d 4d 6f 6e 69 6b 65 72 5f 43 6c   IEnumMoniker_Cl
6a10: 6f 6e 65 5f 53 74 75 62 28 49 52 70 63 53 74 75  one_Stub(IRpcStu
6a20: 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43 68  bBuffer*, IRpcCh
6a30: 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50 52  annelBuffer*, PR
6a40: 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57 4f  PC_MESSAGE, PDWO
6a50: 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49 52 75  RD);.HRESULT IRu
6a60: 6e 6e 61 62 6c 65 4f 62 6a 65 63 74 5f 47 65 74  nnableObject_Get
6a70: 52 75 6e 6e 69 6e 67 43 6c 61 73 73 5f 50 72 6f  RunningClass_Pro
6a80: 78 79 28 49 52 75 6e 6e 61 62 6c 65 4f 62 6a 65  xy(IRunnableObje
6a90: 63 74 2a 2c 20 4c 50 43 4c 53 49 44 29 3b 0a 76  ct*, LPCLSID);.v
6aa0: 6f 69 64 20 49 52 75 6e 6e 61 62 6c 65 4f 62 6a  oid IRunnableObj
6ab0: 65 63 74 5f 47 65 74 52 75 6e 6e 69 6e 67 43 6c  ect_GetRunningCl
6ac0: 61 73 73 5f 53 74 75 62 28 49 52 70 63 53 74 75  ass_Stub(IRpcStu
6ad0: 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43 68  bBuffer*, IRpcCh
6ae0: 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50 52  annelBuffer*, PR
6af0: 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57 4f  PC_MESSAGE, PDWO
6b00: 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49 52 75  RD);.HRESULT IRu
6b10: 6e 6e 61 62 6c 65 4f 62 6a 65 63 74 5f 52 75 6e  nnableObject_Run
6b20: 5f 50 72 6f 78 79 28 49 52 75 6e 6e 61 62 6c 65  _Proxy(IRunnable
6b30: 4f 62 6a 65 63 74 2a 2c 20 4c 50 42 49 4e 44 43  Object*, LPBINDC
6b40: 54 58 29 3b 0a 76 6f 69 64 20 49 52 75 6e 6e 61  TX);.void IRunna
6b50: 62 6c 65 4f 62 6a 65 63 74 5f 52 75 6e 5f 53 74  bleObject_Run_St
6b60: 75 62 28 49 52 70 63 53 74 75 62 42 75 66 66 65  ub(IRpcStubBuffe
6b70: 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e 65 6c 42  r*, IRpcChannelB
6b80: 75 66 66 65 72 2a 2c 20 50 52 50 43 5f 4d 45 53  uffer*, PRPC_MES
6b90: 53 41 47 45 2c 20 50 44 57 4f 52 44 29 3b 0a 42  SAGE, PDWORD);.B
6ba0: 4f 4f 4c 20 49 52 75 6e 6e 61 62 6c 65 4f 62 6a  OOL IRunnableObj
6bb0: 65 63 74 5f 49 73 52 75 6e 6e 69 6e 67 5f 50 72  ect_IsRunning_Pr
6bc0: 6f 78 79 28 49 52 75 6e 6e 61 62 6c 65 4f 62 6a  oxy(IRunnableObj
6bd0: 65 63 74 2a 29 3b 0a 76 6f 69 64 20 49 52 75 6e  ect*);.void IRun
6be0: 6e 61 62 6c 65 4f 62 6a 65 63 74 5f 49 73 52 75  nableObject_IsRu
6bf0: 6e 6e 69 6e 67 5f 53 74 75 62 28 49 52 70 63 53  nning_Stub(IRpcS
6c00: 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63  tubBuffer*, IRpc
6c10: 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20  ChannelBuffer*, 
6c20: 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44  PRPC_MESSAGE, PD
6c30: 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49  WORD);.HRESULT I
6c40: 52 75 6e 6e 61 62 6c 65 4f 62 6a 65 63 74 5f 4c  RunnableObject_L
6c50: 6f 63 6b 52 75 6e 6e 69 6e 67 5f 50 72 6f 78 79  ockRunning_Proxy
6c60: 28 49 52 75 6e 6e 61 62 6c 65 4f 62 6a 65 63 74  (IRunnableObject
6c70: 2a 2c 20 42 4f 4f 4c 2c 20 42 4f 4f 4c 29 3b 0a  *, BOOL, BOOL);.
6c80: 76 6f 69 64 20 49 52 75 6e 6e 61 62 6c 65 4f 62  void IRunnableOb
6c90: 6a 65 63 74 5f 4c 6f 63 6b 52 75 6e 6e 69 6e 67  ject_LockRunning
6ca0: 5f 53 74 75 62 28 49 52 70 63 53 74 75 62 42 75  _Stub(IRpcStubBu
6cb0: 66 66 65 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e  ffer*, IRpcChann
6cc0: 65 6c 42 75 66 66 65 72 2a 2c 20 50 52 50 43 5f  elBuffer*, PRPC_
6cd0: 4d 45 53 53 41 47 45 2c 20 50 44 57 4f 52 44 29  MESSAGE, PDWORD)
6ce0: 3b 0a 48 52 45 53 55 4c 54 20 49 52 75 6e 6e 61  ;.HRESULT IRunna
6cf0: 62 6c 65 4f 62 6a 65 63 74 5f 53 65 74 43 6f 6e  bleObject_SetCon
6d00: 74 61 69 6e 65 64 4f 62 6a 65 63 74 5f 50 72 6f  tainedObject_Pro
6d10: 78 79 28 49 52 75 6e 6e 61 62 6c 65 4f 62 6a 65  xy(IRunnableObje
6d20: 63 74 2a 2c 20 42 4f 4f 4c 29 3b 0a 76 6f 69 64  ct*, BOOL);.void
6d30: 20 49 52 75 6e 6e 61 62 6c 65 4f 62 6a 65 63 74   IRunnableObject
6d40: 5f 53 65 74 43 6f 6e 74 61 69 6e 65 64 4f 62 6a  _SetContainedObj
6d50: 65 63 74 5f 53 74 75 62 28 49 52 70 63 53 74 75  ect_Stub(IRpcStu
6d60: 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43 68  bBuffer*, IRpcCh
6d70: 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50 52  annelBuffer*, PR
6d80: 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57 4f  PC_MESSAGE, PDWO
6d90: 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49 52 75  RD);.HRESULT IRu
6da0: 6e 6e 69 6e 67 4f 62 6a 65 63 74 54 61 62 6c 65  nningObjectTable
6db0: 5f 52 65 67 69 73 74 65 72 5f 50 72 6f 78 79 28  _Register_Proxy(
6dc0: 49 52 75 6e 6e 69 6e 67 4f 62 6a 65 63 74 54 61  IRunningObjectTa
6dd0: 62 6c 65 2a 2c 20 44 57 4f 52 44 2c 20 49 55 6e  ble*, DWORD, IUn
6de0: 6b 6e 6f 77 6e 2a 2c 20 49 4d 6f 6e 69 6b 65 72  known*, IMoniker
6df0: 2a 2c 20 44 57 4f 52 44 2a 29 3b 0a 76 6f 69 64  *, DWORD*);.void
6e00: 20 49 52 75 6e 6e 69 6e 67 4f 62 6a 65 63 74 54   IRunningObjectT
6e10: 61 62 6c 65 5f 52 65 67 69 73 74 65 72 5f 53 74  able_Register_St
6e20: 75 62 28 49 52 70 63 53 74 75 62 42 75 66 66 65  ub(IRpcStubBuffe
6e30: 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e 65 6c 42  r*, IRpcChannelB
6e40: 75 66 66 65 72 2a 2c 20 50 52 50 43 5f 4d 45 53  uffer*, PRPC_MES
6e50: 53 41 47 45 2c 20 50 44 57 4f 52 44 29 3b 0a 48  SAGE, PDWORD);.H
6e60: 52 45 53 55 4c 54 20 49 52 75 6e 6e 69 6e 67 4f  RESULT IRunningO
6e70: 62 6a 65 63 74 54 61 62 6c 65 5f 52 65 76 6f 6b  bjectTable_Revok
6e80: 65 5f 50 72 6f 78 79 28 49 52 75 6e 6e 69 6e 67  e_Proxy(IRunning
6e90: 4f 62 6a 65 63 74 54 61 62 6c 65 2a 2c 20 44 57  ObjectTable*, DW
6ea0: 4f 52 44 29 3b 0a 76 6f 69 64 20 49 52 75 6e 6e  ORD);.void IRunn
6eb0: 69 6e 67 4f 62 6a 65 63 74 54 61 62 6c 65 5f 52  ingObjectTable_R
6ec0: 65 76 6f 6b 65 5f 53 74 75 62 28 49 52 70 63 53  evoke_Stub(IRpcS
6ed0: 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63  tubBuffer*, IRpc
6ee0: 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20  ChannelBuffer*, 
6ef0: 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44  PRPC_MESSAGE, PD
6f00: 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49  WORD);.HRESULT I
6f10: 52 75 6e 6e 69 6e 67 4f 62 6a 65 63 74 54 61 62  RunningObjectTab
6f20: 6c 65 5f 49 73 52 75 6e 6e 69 6e 67 5f 50 72 6f  le_IsRunning_Pro
6f30: 78 79 28 49 52 75 6e 6e 69 6e 67 4f 62 6a 65 63  xy(IRunningObjec
6f40: 74 54 61 62 6c 65 2a 2c 20 49 4d 6f 6e 69 6b 65  tTable*, IMonike
6f50: 72 2a 29 3b 0a 76 6f 69 64 20 49 52 75 6e 6e 69  r*);.void IRunni
6f60: 6e 67 4f 62 6a 65 63 74 54 61 62 6c 65 5f 49 73  ngObjectTable_Is
6f70: 52 75 6e 6e 69 6e 67 5f 53 74 75 62 28 49 52 70  Running_Stub(IRp
6f80: 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52  cStubBuffer*, IR
6f90: 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a  pcChannelBuffer*
6fa0: 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20  , PRPC_MESSAGE, 
6fb0: 50 44 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54  PDWORD);.HRESULT
6fc0: 20 49 52 75 6e 6e 69 6e 67 4f 62 6a 65 63 74 54   IRunningObjectT
6fd0: 61 62 6c 65 5f 47 65 74 4f 62 6a 65 63 74 5f 50  able_GetObject_P
6fe0: 72 6f 78 79 28 49 52 75 6e 6e 69 6e 67 4f 62 6a  roxy(IRunningObj
6ff0: 65 63 74 54 61 62 6c 65 2a 2c 20 49 4d 6f 6e 69  ectTable*, IMoni
7000: 6b 65 72 2a 2c 20 49 55 6e 6b 6e 6f 77 6e 2a 2a  ker*, IUnknown**
7010: 29 3b 0a 76 6f 69 64 20 49 52 75 6e 6e 69 6e 67  );.void IRunning
7020: 4f 62 6a 65 63 74 54 61 62 6c 65 5f 47 65 74 4f  ObjectTable_GetO
7030: 62 6a 65 63 74 5f 53 74 75 62 28 49 52 70 63 53  bject_Stub(IRpcS
7040: 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63  tubBuffer*, IRpc
7050: 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20  ChannelBuffer*, 
7060: 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44  PRPC_MESSAGE, PD
7070: 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49  WORD);.HRESULT I
7080: 52 75 6e 6e 69 6e 67 4f 62 6a 65 63 74 54 61 62  RunningObjectTab
7090: 6c 65 5f 4e 6f 74 65 43 68 61 6e 67 65 54 69 6d  le_NoteChangeTim
70a0: 65 5f 50 72 6f 78 79 28 49 52 75 6e 6e 69 6e 67  e_Proxy(IRunning
70b0: 4f 62 6a 65 63 74 54 61 62 6c 65 2a 2c 20 44 57  ObjectTable*, DW
70c0: 4f 52 44 2c 20 46 49 4c 45 54 49 4d 45 2a 29 3b  ORD, FILETIME*);
70d0: 0a 76 6f 69 64 20 49 52 75 6e 6e 69 6e 67 4f 62  .void IRunningOb
70e0: 6a 65 63 74 54 61 62 6c 65 5f 4e 6f 74 65 43 68  jectTable_NoteCh
70f0: 61 6e 67 65 54 69 6d 65 5f 53 74 75 62 28 49 52  angeTime_Stub(IR
7100: 70 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20 49  pcStubBuffer*, I
7110: 52 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72  RpcChannelBuffer
7120: 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45 2c  *, PRPC_MESSAGE,
7130: 20 50 44 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c   PDWORD);.HRESUL
7140: 54 20 49 52 75 6e 6e 69 6e 67 4f 62 6a 65 63 74  T IRunningObject
7150: 54 61 62 6c 65 5f 47 65 74 54 69 6d 65 4f 66 4c  Table_GetTimeOfL
7160: 61 73 74 43 68 61 6e 67 65 5f 50 72 6f 78 79 28  astChange_Proxy(
7170: 49 52 75 6e 6e 69 6e 67 4f 62 6a 65 63 74 54 61  IRunningObjectTa
7180: 62 6c 65 2a 2c 20 49 4d 6f 6e 69 6b 65 72 2a 2c  ble*, IMoniker*,
7190: 20 46 49 4c 45 54 49 4d 45 2a 29 3b 0a 76 6f 69   FILETIME*);.voi
71a0: 64 20 49 52 75 6e 6e 69 6e 67 4f 62 6a 65 63 74  d IRunningObject
71b0: 54 61 62 6c 65 5f 47 65 74 54 69 6d 65 4f 66 4c  Table_GetTimeOfL
71c0: 61 73 74 43 68 61 6e 67 65 5f 53 74 75 62 28 49  astChange_Stub(I
71d0: 52 70 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20  RpcStubBuffer*, 
71e0: 49 52 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65  IRpcChannelBuffe
71f0: 72 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45  r*, PRPC_MESSAGE
7200: 2c 20 50 44 57 4f 52 44 29 3b 0a 48 52 45 53 55  , PDWORD);.HRESU
7210: 4c 54 20 49 52 75 6e 6e 69 6e 67 4f 62 6a 65 63  LT IRunningObjec
7220: 74 54 61 62 6c 65 5f 45 6e 75 6d 52 75 6e 6e 69  tTable_EnumRunni
7230: 6e 67 5f 50 72 6f 78 79 28 49 52 75 6e 6e 69 6e  ng_Proxy(IRunnin
7240: 67 4f 62 6a 65 63 74 54 61 62 6c 65 2a 2c 20 49  gObjectTable*, I
7250: 45 6e 75 6d 4d 6f 6e 69 6b 65 72 2a 2a 29 3b 0a  EnumMoniker**);.
7260: 76 6f 69 64 20 49 52 75 6e 6e 69 6e 67 4f 62 6a  void IRunningObj
7270: 65 63 74 54 61 62 6c 65 5f 45 6e 75 6d 52 75 6e  ectTable_EnumRun
7280: 6e 69 6e 67 5f 53 74 75 62 28 49 52 70 63 53 74  ning_Stub(IRpcSt
7290: 75 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43  ubBuffer*, IRpcC
72a0: 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50  hannelBuffer*, P
72b0: 52 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57  RPC_MESSAGE, PDW
72c0: 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49 50  ORD);.HRESULT IP
72d0: 65 72 73 69 73 74 5f 47 65 74 43 6c 61 73 73 49  ersist_GetClassI
72e0: 44 5f 50 72 6f 78 79 28 49 50 65 72 73 69 73 74  D_Proxy(IPersist
72f0: 2a 2c 20 43 4c 53 49 44 2a 29 3b 0a 76 6f 69 64  *, CLSID*);.void
7300: 20 49 50 65 72 73 69 73 74 5f 47 65 74 43 6c 61   IPersist_GetCla
7310: 73 73 49 44 5f 53 74 75 62 28 49 52 70 63 53 74  ssID_Stub(IRpcSt
7320: 75 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43  ubBuffer*, IRpcC
7330: 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50  hannelBuffer*, P
7340: 52 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57  RPC_MESSAGE, PDW
7350: 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49 50  ORD);.HRESULT IP
7360: 65 72 73 69 73 74 53 74 72 65 61 6d 5f 49 73 44  ersistStream_IsD
7370: 69 72 74 79 5f 50 72 6f 78 79 28 49 50 65 72 73  irty_Proxy(IPers
7380: 69 73 74 53 74 72 65 61 6d 2a 29 3b 0a 76 6f 69  istStream*);.voi
7390: 64 20 49 50 65 72 73 69 73 74 53 74 72 65 61 6d  d IPersistStream
73a0: 5f 49 73 44 69 72 74 79 5f 53 74 75 62 28 49 52  _IsDirty_Stub(IR
73b0: 70 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20 49  pcStubBuffer*, I
73c0: 52 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72  RpcChannelBuffer
73d0: 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45 2c  *, PRPC_MESSAGE,
73e0: 20 50 44 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c   PDWORD);.HRESUL
73f0: 54 20 49 50 65 72 73 69 73 74 53 74 72 65 61 6d  T IPersistStream
7400: 5f 4c 6f 61 64 5f 50 72 6f 78 79 28 49 50 65 72  _Load_Proxy(IPer
7410: 73 69 73 74 53 74 72 65 61 6d 2a 2c 20 49 53 74  sistStream*, ISt
7420: 72 65 61 6d 2a 29 3b 0a 76 6f 69 64 20 49 50 65  ream*);.void IPe
7430: 72 73 69 73 74 53 74 72 65 61 6d 5f 4c 6f 61 64  rsistStream_Load
7440: 5f 53 74 75 62 28 49 52 70 63 53 74 75 62 42 75  _Stub(IRpcStubBu
7450: 66 66 65 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e  ffer*, IRpcChann
7460: 65 6c 42 75 66 66 65 72 2a 2c 20 50 52 50 43 5f  elBuffer*, PRPC_
7470: 4d 45 53 53 41 47 45 2c 20 50 44 57 4f 52 44 29  MESSAGE, PDWORD)
7480: 3b 0a 48 52 45 53 55 4c 54 20 49 50 65 72 73 69  ;.HRESULT IPersi
7490: 73 74 53 74 72 65 61 6d 5f 53 61 76 65 5f 50 72  stStream_Save_Pr
74a0: 6f 78 79 28 49 50 65 72 73 69 73 74 53 74 72 65  oxy(IPersistStre
74b0: 61 6d 2a 2c 20 49 53 74 72 65 61 6d 2a 2c 20 42  am*, IStream*, B
74c0: 4f 4f 4c 29 3b 0a 76 6f 69 64 20 49 50 65 72 73  OOL);.void IPers
74d0: 69 73 74 53 74 72 65 61 6d 5f 53 61 76 65 5f 53  istStream_Save_S
74e0: 74 75 62 28 49 52 70 63 53 74 75 62 42 75 66 66  tub(IRpcStubBuff
74f0: 65 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e 65 6c  er*, IRpcChannel
7500: 42 75 66 66 65 72 2a 2c 20 50 52 50 43 5f 4d 45  Buffer*, PRPC_ME
7510: 53 53 41 47 45 2c 20 50 44 57 4f 52 44 29 3b 0a  SSAGE, PDWORD);.
7520: 48 52 45 53 55 4c 54 20 49 50 65 72 73 69 73 74  HRESULT IPersist
7530: 53 74 72 65 61 6d 5f 47 65 74 53 69 7a 65 4d 61  Stream_GetSizeMa
7540: 78 5f 50 72 6f 78 79 28 49 50 65 72 73 69 73 74  x_Proxy(IPersist
7550: 53 74 72 65 61 6d 2a 2c 20 55 4c 41 52 47 45 5f  Stream*, ULARGE_
7560: 49 4e 54 45 47 45 52 2a 29 3b 0a 76 6f 69 64 20  INTEGER*);.void 
7570: 49 50 65 72 73 69 73 74 53 74 72 65 61 6d 5f 47  IPersistStream_G
7580: 65 74 53 69 7a 65 4d 61 78 5f 53 74 75 62 28 49  etSizeMax_Stub(I
7590: 52 70 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20  RpcStubBuffer*, 
75a0: 49 52 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65  IRpcChannelBuffe
75b0: 72 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45  r*, PRPC_MESSAGE
75c0: 2c 20 50 44 57 4f 52 44 29 3b 0a 48 52 45 53 55  , PDWORD);.HRESU
75d0: 4c 54 20 49 4d 6f 6e 69 6b 65 72 5f 52 65 6d 6f  LT IMoniker_Remo
75e0: 74 65 42 69 6e 64 54 6f 4f 62 6a 65 63 74 5f 50  teBindToObject_P
75f0: 72 6f 78 79 28 49 4d 6f 6e 69 6b 65 72 2a 2c 20  roxy(IMoniker*, 
7600: 49 42 69 6e 64 43 74 78 2a 2c 20 49 4d 6f 6e 69  IBindCtx*, IMoni
7610: 6b 65 72 2a 2c 20 52 45 46 49 49 44 2c 20 49 55  ker*, REFIID, IU
7620: 6e 6b 6e 6f 77 6e 2a 2a 29 3b 0a 76 6f 69 64 20  nknown**);.void 
7630: 49 4d 6f 6e 69 6b 65 72 5f 52 65 6d 6f 74 65 42  IMoniker_RemoteB
7640: 69 6e 64 54 6f 4f 62 6a 65 63 74 5f 53 74 75 62  indToObject_Stub
7650: 28 49 52 70 63 53 74 75 62 42 75 66 66 65 72 2a  (IRpcStubBuffer*
7660: 2c 20 49 52 70 63 43 68 61 6e 6e 65 6c 42 75 66  , IRpcChannelBuf
7670: 66 65 72 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41  fer*, PRPC_MESSA
7680: 47 45 2c 20 50 44 57 4f 52 44 29 3b 0a 48 52 45  GE, PDWORD);.HRE
7690: 53 55 4c 54 20 49 4d 6f 6e 69 6b 65 72 5f 52 65  SULT IMoniker_Re
76a0: 6d 6f 74 65 42 69 6e 64 54 6f 53 74 6f 72 61 67  moteBindToStorag
76b0: 65 5f 50 72 6f 78 79 28 49 4d 6f 6e 69 6b 65 72  e_Proxy(IMoniker
76c0: 2a 2c 20 49 42 69 6e 64 43 74 78 2a 2c 20 49 4d  *, IBindCtx*, IM
76d0: 6f 6e 69 6b 65 72 2a 2c 20 52 45 46 49 49 44 2c  oniker*, REFIID,
76e0: 20 49 55 6e 6b 6e 6f 77 6e 2a 2a 29 3b 0a 76 6f   IUnknown**);.vo
76f0: 69 64 20 49 4d 6f 6e 69 6b 65 72 5f 52 65 6d 6f  id IMoniker_Remo
7700: 74 65 42 69 6e 64 54 6f 53 74 6f 72 61 67 65 5f  teBindToStorage_
7710: 53 74 75 62 28 49 52 70 63 53 74 75 62 42 75 66  Stub(IRpcStubBuf
7720: 66 65 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e 65  fer*, IRpcChanne
7730: 6c 42 75 66 66 65 72 2a 2c 20 50 52 50 43 5f 4d  lBuffer*, PRPC_M
7740: 45 53 53 41 47 45 2c 20 50 44 57 4f 52 44 29 3b  ESSAGE, PDWORD);
7750: 0a 48 52 45 53 55 4c 54 20 49 4d 6f 6e 69 6b 65  .HRESULT IMonike
7760: 72 5f 52 65 64 75 63 65 5f 50 72 6f 78 79 28 49  r_Reduce_Proxy(I
7770: 4d 6f 6e 69 6b 65 72 2a 2c 20 49 42 69 6e 64 43  Moniker*, IBindC
7780: 74 78 2a 2c 20 44 57 4f 52 44 2c 20 49 4d 6f 6e  tx*, DWORD, IMon
7790: 69 6b 65 72 2a 2a 2c 20 49 4d 6f 6e 69 6b 65 72  iker**, IMoniker
77a0: 2a 2a 29 3b 0a 76 6f 69 64 20 49 4d 6f 6e 69 6b  **);.void IMonik
77b0: 65 72 5f 52 65 64 75 63 65 5f 53 74 75 62 28 49  er_Reduce_Stub(I
77c0: 52 70 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20  RpcStubBuffer*, 
77d0: 49 52 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65  IRpcChannelBuffe
77e0: 72 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45  r*, PRPC_MESSAGE
77f0: 2c 20 50 44 57 4f 52 44 29 3b 0a 48 52 45 53 55  , PDWORD);.HRESU
7800: 4c 54 20 49 4d 6f 6e 69 6b 65 72 5f 43 6f 6d 70  LT IMoniker_Comp
7810: 6f 73 65 57 69 74 68 5f 50 72 6f 78 79 28 49 4d  oseWith_Proxy(IM
7820: 6f 6e 69 6b 65 72 2a 2c 20 49 4d 6f 6e 69 6b 65  oniker*, IMonike
7830: 72 2a 2c 20 42 4f 4f 4c 2c 20 49 4d 6f 6e 69 6b  r*, BOOL, IMonik
7840: 65 72 2a 2a 29 3b 0a 76 6f 69 64 20 49 4d 6f 6e  er**);.void IMon
7850: 69 6b 65 72 5f 43 6f 6d 70 6f 73 65 57 69 74 68  iker_ComposeWith
7860: 5f 53 74 75 62 28 49 52 70 63 53 74 75 62 42 75  _Stub(IRpcStubBu
7870: 66 66 65 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e  ffer*, IRpcChann
7880: 65 6c 42 75 66 66 65 72 2a 2c 20 50 52 50 43 5f  elBuffer*, PRPC_
7890: 4d 45 53 53 41 47 45 2c 20 50 44 57 4f 52 44 29  MESSAGE, PDWORD)
78a0: 3b 0a 48 52 45 53 55 4c 54 20 49 4d 6f 6e 69 6b  ;.HRESULT IMonik
78b0: 65 72 5f 45 6e 75 6d 5f 50 72 6f 78 79 28 49 4d  er_Enum_Proxy(IM
78c0: 6f 6e 69 6b 65 72 2a 2c 20 42 4f 4f 4c 2c 20 49  oniker*, BOOL, I
78d0: 45 6e 75 6d 4d 6f 6e 69 6b 65 72 2a 2a 29 3b 0a  EnumMoniker**);.
78e0: 76 6f 69 64 20 49 4d 6f 6e 69 6b 65 72 5f 45 6e  void IMoniker_En
78f0: 75 6d 5f 53 74 75 62 28 49 52 70 63 53 74 75 62  um_Stub(IRpcStub
7900: 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43 68 61  Buffer*, IRpcCha
7910: 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50 52 50  nnelBuffer*, PRP
7920: 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57 4f 52  C_MESSAGE, PDWOR
7930: 44 29 3b 0a 48 52 45 53 55 4c 54 20 49 4d 6f 6e  D);.HRESULT IMon
7940: 69 6b 65 72 5f 49 73 45 71 75 61 6c 5f 50 72 6f  iker_IsEqual_Pro
7950: 78 79 28 49 4d 6f 6e 69 6b 65 72 2a 2c 20 49 4d  xy(IMoniker*, IM
7960: 6f 6e 69 6b 65 72 2a 29 3b 0a 76 6f 69 64 20 49  oniker*);.void I
7970: 4d 6f 6e 69 6b 65 72 5f 49 73 45 71 75 61 6c 5f  Moniker_IsEqual_
7980: 53 74 75 62 28 49 52 70 63 53 74 75 62 42 75 66  Stub(IRpcStubBuf
7990: 66 65 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e 65  fer*, IRpcChanne
79a0: 6c 42 75 66 66 65 72 2a 2c 20 50 52 50 43 5f 4d  lBuffer*, PRPC_M
79b0: 45 53 53 41 47 45 2c 20 50 44 57 4f 52 44 29 3b  ESSAGE, PDWORD);
79c0: 0a 48 52 45 53 55 4c 54 20 49 4d 6f 6e 69 6b 65  .HRESULT IMonike
79d0: 72 5f 48 61 73 68 5f 50 72 6f 78 79 28 49 4d 6f  r_Hash_Proxy(IMo
79e0: 6e 69 6b 65 72 2a 2c 20 44 57 4f 52 44 2a 29 3b  niker*, DWORD*);
79f0: 0a 76 6f 69 64 20 49 4d 6f 6e 69 6b 65 72 5f 48  .void IMoniker_H
7a00: 61 73 68 5f 53 74 75 62 28 49 52 70 63 53 74 75  ash_Stub(IRpcStu
7a10: 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43 68  bBuffer*, IRpcCh
7a20: 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50 52  annelBuffer*, PR
7a30: 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57 4f  PC_MESSAGE, PDWO
7a40: 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49 4d 6f  RD);.HRESULT IMo
7a50: 6e 69 6b 65 72 5f 49 73 52 75 6e 6e 69 6e 67 5f  niker_IsRunning_
7a60: 50 72 6f 78 79 28 49 4d 6f 6e 69 6b 65 72 2a 2c  Proxy(IMoniker*,
7a70: 20 49 42 69 6e 64 43 74 78 2a 2c 20 49 4d 6f 6e   IBindCtx*, IMon
7a80: 69 6b 65 72 2a 2c 20 49 4d 6f 6e 69 6b 65 72 2a  iker*, IMoniker*
7a90: 29 3b 0a 76 6f 69 64 20 49 4d 6f 6e 69 6b 65 72  );.void IMoniker
7aa0: 5f 49 73 52 75 6e 6e 69 6e 67 5f 53 74 75 62 28  _IsRunning_Stub(
7ab0: 49 52 70 63 53 74 75 62 42 75 66 66 65 72 2a 2c  IRpcStubBuffer*,
7ac0: 20 49 52 70 63 43 68 61 6e 6e 65 6c 42 75 66 66   IRpcChannelBuff
7ad0: 65 72 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41 47  er*, PRPC_MESSAG
7ae0: 45 2c 20 50 44 57 4f 52 44 29 3b 0a 48 52 45 53  E, PDWORD);.HRES
7af0: 55 4c 54 20 49 4d 6f 6e 69 6b 65 72 5f 47 65 74  ULT IMoniker_Get
7b00: 54 69 6d 65 4f 66 4c 61 73 74 43 68 61 6e 67 65  TimeOfLastChange
7b10: 5f 50 72 6f 78 79 28 49 4d 6f 6e 69 6b 65 72 2a  _Proxy(IMoniker*
7b20: 2c 20 49 42 69 6e 64 43 74 78 2a 2c 20 49 4d 6f  , IBindCtx*, IMo
7b30: 6e 69 6b 65 72 2a 2c 20 46 49 4c 45 54 49 4d 45  niker*, FILETIME
7b40: 2a 29 3b 0a 76 6f 69 64 20 49 4d 6f 6e 69 6b 65  *);.void IMonike
7b50: 72 5f 47 65 74 54 69 6d 65 4f 66 4c 61 73 74 43  r_GetTimeOfLastC
7b60: 68 61 6e 67 65 5f 53 74 75 62 28 49 52 70 63 53  hange_Stub(IRpcS
7b70: 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63  tubBuffer*, IRpc
7b80: 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20  ChannelBuffer*, 
7b90: 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44  PRPC_MESSAGE, PD
7ba0: 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49  WORD);.HRESULT I
7bb0: 4d 6f 6e 69 6b 65 72 5f 49 6e 76 65 72 73 65 5f  Moniker_Inverse_
7bc0: 50 72 6f 78 79 28 49 4d 6f 6e 69 6b 65 72 2a 2c  Proxy(IMoniker*,
7bd0: 20 49 4d 6f 6e 69 6b 65 72 2a 2a 29 3b 0a 76 6f   IMoniker**);.vo
7be0: 69 64 20 49 4d 6f 6e 69 6b 65 72 5f 49 6e 76 65  id IMoniker_Inve
7bf0: 72 73 65 5f 53 74 75 62 28 49 52 70 63 53 74 75  rse_Stub(IRpcStu
7c00: 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43 68  bBuffer*, IRpcCh
7c10: 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50 52  annelBuffer*, PR
7c20: 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57 4f  PC_MESSAGE, PDWO
7c30: 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49 4d 6f  RD);.HRESULT IMo
7c40: 6e 69 6b 65 72 5f 43 6f 6d 6d 6f 6e 50 72 65 66  niker_CommonPref
7c50: 69 78 57 69 74 68 5f 50 72 6f 78 79 28 49 4d 6f  ixWith_Proxy(IMo
7c60: 6e 69 6b 65 72 2a 2c 20 49 4d 6f 6e 69 6b 65 72  niker*, IMoniker
7c70: 2a 2c 20 49 4d 6f 6e 69 6b 65 72 2a 2a 29 3b 0a  *, IMoniker**);.
7c80: 76 6f 69 64 20 49 4d 6f 6e 69 6b 65 72 5f 43 6f  void IMoniker_Co
7c90: 6d 6d 6f 6e 50 72 65 66 69 78 57 69 74 68 5f 53  mmonPrefixWith_S
7ca0: 74 75 62 28 49 52 70 63 53 74 75 62 42 75 66 66  tub(IRpcStubBuff
7cb0: 65 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e 65 6c  er*, IRpcChannel
7cc0: 42 75 66 66 65 72 2a 2c 20 50 52 50 43 5f 4d 45  Buffer*, PRPC_ME
7cd0: 53 53 41 47 45 2c 20 50 44 57 4f 52 44 29 3b 0a  SSAGE, PDWORD);.
7ce0: 48 52 45 53 55 4c 54 20 49 4d 6f 6e 69 6b 65 72  HRESULT IMoniker
7cf0: 5f 52 65 6c 61 74 69 76 65 50 61 74 68 54 6f 5f  _RelativePathTo_
7d00: 50 72 6f 78 79 28 49 4d 6f 6e 69 6b 65 72 2a 2c  Proxy(IMoniker*,
7d10: 20 49 4d 6f 6e 69 6b 65 72 2a 2c 20 49 4d 6f 6e   IMoniker*, IMon
7d20: 69 6b 65 72 2a 2a 29 3b 0a 76 6f 69 64 20 49 4d  iker**);.void IM
7d30: 6f 6e 69 6b 65 72 5f 52 65 6c 61 74 69 76 65 50  oniker_RelativeP
7d40: 61 74 68 54 6f 5f 53 74 75 62 28 49 52 70 63 53  athTo_Stub(IRpcS
7d50: 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63  tubBuffer*, IRpc
7d60: 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20  ChannelBuffer*, 
7d70: 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44  PRPC_MESSAGE, PD
7d80: 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49  WORD);.HRESULT I
7d90: 4d 6f 6e 69 6b 65 72 5f 47 65 74 44 69 73 70 6c  Moniker_GetDispl
7da0: 61 79 4e 61 6d 65 5f 50 72 6f 78 79 28 49 4d 6f  ayName_Proxy(IMo
7db0: 6e 69 6b 65 72 2a 2c 20 49 42 69 6e 64 43 74 78  niker*, IBindCtx
7dc0: 2a 2c 20 49 4d 6f 6e 69 6b 65 72 2a 2c 20 4c 50  *, IMoniker*, LP
7dd0: 43 53 54 52 2a 29 3b 0a 76 6f 69 64 20 49 4d 6f  CSTR*);.void IMo
7de0: 6e 69 6b 65 72 5f 47 65 74 44 69 73 70 6c 61 79  niker_GetDisplay
7df0: 4e 61 6d 65 5f 53 74 75 62 28 49 52 70 63 53 74  Name_Stub(IRpcSt
7e00: 75 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43  ubBuffer*, IRpcC
7e10: 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50  hannelBuffer*, P
7e20: 52 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57  RPC_MESSAGE, PDW
7e30: 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49 4d  ORD);.HRESULT IM
7e40: 6f 6e 69 6b 65 72 5f 50 61 72 73 65 44 69 73 70  oniker_ParseDisp
7e50: 6c 61 79 4e 61 6d 65 5f 50 72 6f 78 79 28 49 4d  layName_Proxy(IM
7e60: 6f 6e 69 6b 65 72 2a 2c 20 49 42 69 6e 64 43 74  oniker*, IBindCt
7e70: 78 2a 2c 20 49 4d 6f 6e 69 6b 65 72 2a 2c 20 4c  x*, IMoniker*, L
7e80: 50 43 53 54 52 2c 20 55 4c 4f 4e 47 2a 2c 20 49  PCSTR, ULONG*, I
7e90: 4d 6f 6e 69 6b 65 72 2a 2a 29 3b 0a 76 6f 69 64  Moniker**);.void
7ea0: 20 49 4d 6f 6e 69 6b 65 72 5f 50 61 72 73 65 44   IMoniker_ParseD
7eb0: 69 73 70 6c 61 79 4e 61 6d 65 5f 53 74 75 62 28  isplayName_Stub(
7ec0: 49 52 70 63 53 74 75 62 42 75 66 66 65 72 2a 2c  IRpcStubBuffer*,
7ed0: 20 49 52 70 63 43 68 61 6e 6e 65 6c 42 75 66 66   IRpcChannelBuff
7ee0: 65 72 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41 47  er*, PRPC_MESSAG
7ef0: 45 2c 20 50 44 57 4f 52 44 29 3b 0a 48 52 45 53  E, PDWORD);.HRES
7f00: 55 4c 54 20 49 4d 6f 6e 69 6b 65 72 5f 49 73 53  ULT IMoniker_IsS
7f10: 79 73 74 65 6d 4d 6f 6e 69 6b 65 72 5f 50 72 6f  ystemMoniker_Pro
7f20: 78 79 28 49 4d 6f 6e 69 6b 65 72 2a 2c 20 44 57  xy(IMoniker*, DW
7f30: 4f 52 44 2a 29 3b 0a 76 6f 69 64 20 49 4d 6f 6e  ORD*);.void IMon
7f40: 69 6b 65 72 5f 49 73 53 79 73 74 65 6d 4d 6f 6e  iker_IsSystemMon
7f50: 69 6b 65 72 5f 53 74 75 62 28 49 52 70 63 53 74  iker_Stub(IRpcSt
7f60: 75 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43  ubBuffer*, IRpcC
7f70: 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50  hannelBuffer*, P
7f80: 52 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57  RPC_MESSAGE, PDW
7f90: 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49 52  ORD);.HRESULT IR
7fa0: 4f 54 44 61 74 61 5f 47 65 74 43 6f 6d 70 61 72  OTData_GetCompar
7fb0: 69 73 6f 6e 44 61 74 61 5f 50 72 6f 78 79 28 49  isonData_Proxy(I
7fc0: 52 4f 54 44 61 74 61 2a 2c 20 42 59 54 45 2a 2c  ROTData*, BYTE*,
7fd0: 20 55 4c 4f 4e 47 20 63 62 4d 61 78 2c 20 55 4c   ULONG cbMax, UL
7fe0: 4f 4e 47 2a 29 3b 0a 76 6f 69 64 20 49 52 4f 54  ONG*);.void IROT
7ff0: 44 61 74 61 5f 47 65 74 43 6f 6d 70 61 72 69 73  Data_GetComparis
8000: 6f 6e 44 61 74 61 5f 53 74 75 62 28 49 52 70 63  onData_Stub(IRpc
8010: 53 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52 70  StubBuffer*, IRp
8020: 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c  cChannelBuffer*,
8030: 20 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20 50   PRPC_MESSAGE, P
8040: 44 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54 20  DWORD);.HRESULT 
8050: 49 45 6e 75 6d 53 74 72 69 6e 67 5f 52 65 6d 6f  IEnumString_Remo
8060: 74 65 4e 65 78 74 5f 50 72 6f 78 79 28 49 45 6e  teNext_Proxy(IEn
8070: 75 6d 53 74 72 69 6e 67 2a 2c 20 55 4c 4f 4e 47  umString*, ULONG
8080: 2c 20 4c 50 43 53 54 52 2a 72 67 65 6c 74 2c 20  , LPCSTR*rgelt, 
8090: 55 4c 4f 4e 47 2a 29 3b 0a 76 6f 69 64 20 49 45  ULONG*);.void IE
80a0: 6e 75 6d 53 74 72 69 6e 67 5f 52 65 6d 6f 74 65  numString_Remote
80b0: 4e 65 78 74 5f 53 74 75 62 28 49 52 70 63 53 74  Next_Stub(IRpcSt
80c0: 75 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43  ubBuffer*, IRpcC
80d0: 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50  hannelBuffer*, P
80e0: 52 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57  RPC_MESSAGE, PDW
80f0: 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49 45  ORD);.HRESULT IE
8100: 6e 75 6d 53 74 72 69 6e 67 5f 53 6b 69 70 5f 50  numString_Skip_P
8110: 72 6f 78 79 28 49 45 6e 75 6d 53 74 72 69 6e 67  roxy(IEnumString
8120: 2a 2c 20 55 4c 4f 4e 47 29 3b 0a 76 6f 69 64 20  *, ULONG);.void 
8130: 49 45 6e 75 6d 53 74 72 69 6e 67 5f 53 6b 69 70  IEnumString_Skip
8140: 5f 53 74 75 62 28 49 52 70 63 53 74 75 62 42 75  _Stub(IRpcStubBu
8150: 66 66 65 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e  ffer*, IRpcChann
8160: 65 6c 42 75 66 66 65 72 2a 2c 20 50 52 50 43 5f  elBuffer*, PRPC_
8170: 4d 45 53 53 41 47 45 2c 20 50 44 57 4f 52 44 29  MESSAGE, PDWORD)
8180: 3b 0a 48 52 45 53 55 4c 54 20 49 45 6e 75 6d 53  ;.HRESULT IEnumS
8190: 74 72 69 6e 67 5f 52 65 73 65 74 5f 50 72 6f 78  tring_Reset_Prox
81a0: 79 28 49 45 6e 75 6d 53 74 72 69 6e 67 2a 29 3b  y(IEnumString*);
81b0: 0a 76 6f 69 64 20 49 45 6e 75 6d 53 74 72 69 6e  .void IEnumStrin
81c0: 67 5f 52 65 73 65 74 5f 53 74 75 62 28 49 52 70  g_Reset_Stub(IRp
81d0: 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52  cStubBuffer*, IR
81e0: 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a  pcChannelBuffer*
81f0: 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20  , PRPC_MESSAGE, 
8200: 50 44 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54  PDWORD);.HRESULT
8210: 20 49 45 6e 75 6d 53 74 72 69 6e 67 5f 43 6c 6f   IEnumString_Clo
8220: 6e 65 5f 50 72 6f 78 79 28 49 45 6e 75 6d 53 74  ne_Proxy(IEnumSt
8230: 72 69 6e 67 2a 2c 20 49 45 6e 75 6d 53 74 72 69  ring*, IEnumStri
8240: 6e 67 2a 2a 29 3b 0a 76 6f 69 64 20 49 45 6e 75  ng**);.void IEnu
8250: 6d 53 74 72 69 6e 67 5f 43 6c 6f 6e 65 5f 53 74  mString_Clone_St
8260: 75 62 28 49 52 70 63 53 74 75 62 42 75 66 66 65  ub(IRpcStubBuffe
8270: 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e 65 6c 42  r*, IRpcChannelB
8280: 75 66 66 65 72 2a 2c 20 50 52 50 43 5f 4d 45 53  uffer*, PRPC_MES
8290: 53 41 47 45 2c 20 50 44 57 4f 52 44 29 3b 0a 48  SAGE, PDWORD);.H
82a0: 52 45 53 55 4c 54 20 49 53 74 72 65 61 6d 5f 52  RESULT IStream_R
82b0: 65 6d 6f 74 65 52 65 61 64 5f 50 72 6f 78 79 28  emoteRead_Proxy(
82c0: 49 53 74 72 65 61 6d 2a 2c 20 42 59 54 45 2a 2c  IStream*, BYTE*,
82d0: 20 55 4c 4f 4e 47 2c 20 55 4c 4f 4e 47 2a 29 3b   ULONG, ULONG*);
82e0: 0a 76 6f 69 64 20 49 53 74 72 65 61 6d 5f 52 65  .void IStream_Re
82f0: 6d 6f 74 65 52 65 61 64 5f 53 74 75 62 28 49 52  moteRead_Stub(IR
8300: 70 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20 49  pcStubBuffer*, I
8310: 52 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72  RpcChannelBuffer
8320: 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45 2c  *, PRPC_MESSAGE,
8330: 20 50 44 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c   PDWORD);.HRESUL
8340: 54 20 49 53 74 72 65 61 6d 5f 52 65 6d 6f 74 65  T IStream_Remote
8350: 57 72 69 74 65 5f 50 72 6f 78 79 28 49 53 74 72  Write_Proxy(IStr
8360: 65 61 6d 2a 2c 20 42 59 54 45 2a 70 76 2c 20 55  eam*, BYTE*pv, U
8370: 4c 4f 4e 47 2c 20 55 4c 4f 4e 47 2a 29 3b 0a 76  LONG, ULONG*);.v
8380: 6f 69 64 20 49 53 74 72 65 61 6d 5f 52 65 6d 6f  oid IStream_Remo
8390: 74 65 57 72 69 74 65 5f 53 74 75 62 28 49 52 70  teWrite_Stub(IRp
83a0: 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52  cStubBuffer*, IR
83b0: 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a  pcChannelBuffer*
83c0: 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20  , PRPC_MESSAGE, 
83d0: 50 44 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54  PDWORD);.HRESULT
83e0: 20 49 53 74 72 65 61 6d 5f 52 65 6d 6f 74 65 53   IStream_RemoteS
83f0: 65 65 6b 5f 50 72 6f 78 79 28 49 53 74 72 65 61  eek_Proxy(IStrea
8400: 6d 2a 2c 20 4c 41 52 47 45 5f 49 4e 54 45 47 45  m*, LARGE_INTEGE
8410: 52 2c 20 44 57 4f 52 44 2c 20 55 4c 41 52 47 45  R, DWORD, ULARGE
8420: 5f 49 4e 54 45 47 45 52 2a 29 3b 0a 76 6f 69 64  _INTEGER*);.void
8430: 20 49 53 74 72 65 61 6d 5f 52 65 6d 6f 74 65 53   IStream_RemoteS
8440: 65 65 6b 5f 53 74 75 62 28 49 52 70 63 53 74 75  eek_Stub(IRpcStu
8450: 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43 68  bBuffer*, IRpcCh
8460: 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50 52  annelBuffer*, PR
8470: 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57 4f  PC_MESSAGE, PDWO
8480: 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49 53 74  RD);.HRESULT ISt
8490: 72 65 61 6d 5f 53 65 74 53 69 7a 65 5f 50 72 6f  ream_SetSize_Pro
84a0: 78 79 28 49 53 74 72 65 61 6d 2a 2c 20 55 4c 41  xy(IStream*, ULA
84b0: 52 47 45 5f 49 4e 54 45 47 45 52 29 3b 0a 76 6f  RGE_INTEGER);.vo
84c0: 69 64 20 49 53 74 72 65 61 6d 5f 53 65 74 53 69  id IStream_SetSi
84d0: 7a 65 5f 53 74 75 62 28 49 52 70 63 53 74 75 62  ze_Stub(IRpcStub
84e0: 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43 68 61  Buffer*, IRpcCha
84f0: 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50 52 50  nnelBuffer*, PRP
8500: 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57 4f 52  C_MESSAGE, PDWOR
8510: 44 29 3b 0a 48 52 45 53 55 4c 54 20 49 53 74 72  D);.HRESULT IStr
8520: 65 61 6d 5f 52 65 6d 6f 74 65 43 6f 70 79 54 6f  eam_RemoteCopyTo
8530: 5f 50 72 6f 78 79 28 49 53 74 72 65 61 6d 2a 2c  _Proxy(IStream*,
8540: 20 49 53 74 72 65 61 6d 2a 2c 20 55 4c 41 52 47   IStream*, ULARG
8550: 45 5f 49 4e 54 45 47 45 52 2c 20 55 4c 41 52 47  E_INTEGER, ULARG
8560: 45 5f 49 4e 54 45 47 45 52 2a 2c 20 55 4c 41 52  E_INTEGER*, ULAR
8570: 47 45 5f 49 4e 54 45 47 45 52 2a 29 3b 0a 76 6f  GE_INTEGER*);.vo
8580: 69 64 20 49 53 74 72 65 61 6d 5f 52 65 6d 6f 74  id IStream_Remot
8590: 65 43 6f 70 79 54 6f 5f 53 74 75 62 28 49 52 70  eCopyTo_Stub(IRp
85a0: 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52  cStubBuffer*, IR
85b0: 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a  pcChannelBuffer*
85c0: 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20  , PRPC_MESSAGE, 
85d0: 50 44 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54  PDWORD);.HRESULT
85e0: 20 49 53 74 72 65 61 6d 5f 43 6f 6d 6d 69 74 5f   IStream_Commit_
85f0: 50 72 6f 78 79 28 49 53 74 72 65 61 6d 2a 2c 20  Proxy(IStream*, 
8600: 44 57 4f 52 44 29 3b 0a 76 6f 69 64 20 49 53 74  DWORD);.void ISt
8610: 72 65 61 6d 5f 43 6f 6d 6d 69 74 5f 53 74 75 62  ream_Commit_Stub
8620: 28 49 52 70 63 53 74 75 62 42 75 66 66 65 72 2a  (IRpcStubBuffer*
8630: 2c 20 49 52 70 63 43 68 61 6e 6e 65 6c 42 75 66  , IRpcChannelBuf
8640: 66 65 72 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41  fer*, PRPC_MESSA
8650: 47 45 2c 20 50 44 57 4f 52 44 29 3b 0a 48 52 45  GE, PDWORD);.HRE
8660: 53 55 4c 54 20 49 53 74 72 65 61 6d 5f 52 65 76  SULT IStream_Rev
8670: 65 72 74 5f 50 72 6f 78 79 28 49 53 74 72 65 61  ert_Proxy(IStrea
8680: 6d 2a 29 3b 0a 76 6f 69 64 20 49 53 74 72 65 61  m*);.void IStrea
8690: 6d 5f 52 65 76 65 72 74 5f 53 74 75 62 28 49 52  m_Revert_Stub(IR
86a0: 70 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20 49  pcStubBuffer*, I
86b0: 52 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72  RpcChannelBuffer
86c0: 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45 2c  *, PRPC_MESSAGE,
86d0: 20 50 44 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c   PDWORD);.HRESUL
86e0: 54 20 49 53 74 72 65 61 6d 5f 4c 6f 63 6b 52 65  T IStream_LockRe
86f0: 67 69 6f 6e 5f 50 72 6f 78 79 28 49 53 74 72 65  gion_Proxy(IStre
8700: 61 6d 2a 2c 20 55 4c 41 52 47 45 5f 49 4e 54 45  am*, ULARGE_INTE
8710: 47 45 52 2c 20 55 4c 41 52 47 45 5f 49 4e 54 45  GER, ULARGE_INTE
8720: 47 45 52 2c 20 44 57 4f 52 44 29 3b 0a 76 6f 69  GER, DWORD);.voi
8730: 64 20 49 53 74 72 65 61 6d 5f 4c 6f 63 6b 52 65  d IStream_LockRe
8740: 67 69 6f 6e 5f 53 74 75 62 28 49 52 70 63 53 74  gion_Stub(IRpcSt
8750: 75 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43  ubBuffer*, IRpcC
8760: 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50  hannelBuffer*, P
8770: 52 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57  RPC_MESSAGE, PDW
8780: 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49 53  ORD);.HRESULT IS
8790: 74 72 65 61 6d 5f 55 6e 6c 6f 63 6b 52 65 67 69  tream_UnlockRegi
87a0: 6f 6e 5f 50 72 6f 78 79 28 49 53 74 72 65 61 6d  on_Proxy(IStream
87b0: 2a 2c 20 55 4c 41 52 47 45 5f 49 4e 54 45 47 45  *, ULARGE_INTEGE
87c0: 52 2c 20 55 4c 41 52 47 45 5f 49 4e 54 45 47 45  R, ULARGE_INTEGE
87d0: 52 2c 20 44 57 4f 52 44 29 3b 0a 76 6f 69 64 20  R, DWORD);.void 
87e0: 49 53 74 72 65 61 6d 5f 55 6e 6c 6f 63 6b 52 65  IStream_UnlockRe
87f0: 67 69 6f 6e 5f 53 74 75 62 28 49 52 70 63 53 74  gion_Stub(IRpcSt
8800: 75 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43  ubBuffer*, IRpcC
8810: 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50  hannelBuffer*, P
8820: 52 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57  RPC_MESSAGE, PDW
8830: 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49 53  ORD);.HRESULT IS
8840: 74 72 65 61 6d 5f 53 74 61 74 5f 50 72 6f 78 79  tream_Stat_Proxy
8850: 28 49 53 74 72 65 61 6d 2a 2c 20 53 54 41 54 53  (IStream*, STATS
8860: 54 47 2a 2c 20 44 57 4f 52 44 29 3b 0a 76 6f 69  TG*, DWORD);.voi
8870: 64 20 49 53 74 72 65 61 6d 5f 53 74 61 74 5f 53  d IStream_Stat_S
8880: 74 75 62 28 49 52 70 63 53 74 75 62 42 75 66 66  tub(IRpcStubBuff
8890: 65 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e 65 6c  er*, IRpcChannel
88a0: 42 75 66 66 65 72 2a 2c 20 50 52 50 43 5f 4d 45  Buffer*, PRPC_ME
88b0: 53 53 41 47 45 2c 20 50 44 57 4f 52 44 29 3b 0a  SSAGE, PDWORD);.
88c0: 48 52 45 53 55 4c 54 20 49 53 74 72 65 61 6d 5f  HRESULT IStream_
88d0: 43 6c 6f 6e 65 5f 50 72 6f 78 79 28 49 53 74 72  Clone_Proxy(IStr
88e0: 65 61 6d 2a 2c 20 49 53 74 72 65 61 6d 2a 2a 29  eam*, IStream**)
88f0: 3b 0a 76 6f 69 64 20 49 53 74 72 65 61 6d 5f 43  ;.void IStream_C
8900: 6c 6f 6e 65 5f 53 74 75 62 28 49 52 70 63 53 74  lone_Stub(IRpcSt
8910: 75 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43  ubBuffer*, IRpcC
8920: 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50  hannelBuffer*, P
8930: 52 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57  RPC_MESSAGE, PDW
8940: 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49 45  ORD);.HRESULT IE
8950: 6e 75 6d 53 54 41 54 53 54 47 5f 52 65 6d 6f 74  numSTATSTG_Remot
8960: 65 4e 65 78 74 5f 50 72 6f 78 79 28 49 45 6e 75  eNext_Proxy(IEnu
8970: 6d 53 54 41 54 53 54 47 2a 2c 20 55 4c 4f 4e 47  mSTATSTG*, ULONG
8980: 2c 20 53 54 41 54 53 54 47 2a 2c 20 55 4c 4f 4e  , STATSTG*, ULON
8990: 47 2a 29 3b 0a 76 6f 69 64 20 49 45 6e 75 6d 53  G*);.void IEnumS
89a0: 54 41 54 53 54 47 5f 52 65 6d 6f 74 65 4e 65 78  TATSTG_RemoteNex
89b0: 74 5f 53 74 75 62 28 49 52 70 63 53 74 75 62 42  t_Stub(IRpcStubB
89c0: 75 66 66 65 72 2a 2c 20 49 52 70 63 43 68 61 6e  uffer*, IRpcChan
89d0: 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50 52 50 43  nelBuffer*, PRPC
89e0: 5f 4d 45 53 53 41 47 45 2c 20 50 44 57 4f 52 44  _MESSAGE, PDWORD
89f0: 29 3b 0a 48 52 45 53 55 4c 54 20 49 45 6e 75 6d  );.HRESULT IEnum
8a00: 53 54 41 54 53 54 47 5f 53 6b 69 70 5f 50 72 6f  STATSTG_Skip_Pro
8a10: 78 79 28 49 45 6e 75 6d 53 54 41 54 53 54 47 2a  xy(IEnumSTATSTG*
8a20: 2c 20 55 4c 4f 4e 47 20 63 65 6c 74 29 3b 0a 76  , ULONG celt);.v
8a30: 6f 69 64 20 49 45 6e 75 6d 53 54 41 54 53 54 47  oid IEnumSTATSTG
8a40: 5f 53 6b 69 70 5f 53 74 75 62 28 49 52 70 63 53  _Skip_Stub(IRpcS
8a50: 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63  tubBuffer*, IRpc
8a60: 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20  ChannelBuffer*, 
8a70: 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44  PRPC_MESSAGE, PD
8a80: 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49  WORD);.HRESULT I
8a90: 45 6e 75 6d 53 54 41 54 53 54 47 5f 52 65 73 65  EnumSTATSTG_Rese
8aa0: 74 5f 50 72 6f 78 79 28 49 45 6e 75 6d 53 54 41  t_Proxy(IEnumSTA
8ab0: 54 53 54 47 2a 29 3b 0a 76 6f 69 64 20 49 45 6e  TSTG*);.void IEn
8ac0: 75 6d 53 54 41 54 53 54 47 5f 52 65 73 65 74 5f  umSTATSTG_Reset_
8ad0: 53 74 75 62 28 49 52 70 63 53 74 75 62 42 75 66  Stub(IRpcStubBuf
8ae0: 66 65 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e 65  fer*, IRpcChanne
8af0: 6c 42 75 66 66 65 72 2a 2c 20 50 52 50 43 5f 4d  lBuffer*, PRPC_M
8b00: 45 53 53 41 47 45 2c 20 50 44 57 4f 52 44 29 3b  ESSAGE, PDWORD);
8b10: 0a 48 52 45 53 55 4c 54 20 49 45 6e 75 6d 53 54  .HRESULT IEnumST
8b20: 41 54 53 54 47 5f 43 6c 6f 6e 65 5f 50 72 6f 78  ATSTG_Clone_Prox
8b30: 79 28 49 45 6e 75 6d 53 54 41 54 53 54 47 2a 2c  y(IEnumSTATSTG*,
8b40: 20 49 45 6e 75 6d 53 54 41 54 53 54 47 2a 2a 29   IEnumSTATSTG**)
8b50: 3b 0a 76 6f 69 64 20 49 45 6e 75 6d 53 54 41 54  ;.void IEnumSTAT
8b60: 53 54 47 5f 43 6c 6f 6e 65 5f 53 74 75 62 28 49  STG_Clone_Stub(I
8b70: 52 70 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20  RpcStubBuffer*, 
8b80: 49 52 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65  IRpcChannelBuffe
8b90: 72 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45  r*, PRPC_MESSAGE
8ba0: 2c 20 50 44 57 4f 52 44 29 3b 0a 48 52 45 53 55  , PDWORD);.HRESU
8bb0: 4c 54 20 49 53 74 6f 72 61 67 65 5f 43 72 65 61  LT IStorage_Crea
8bc0: 74 65 53 74 72 65 61 6d 5f 50 72 6f 78 79 28 49  teStream_Proxy(I
8bd0: 53 74 6f 72 61 67 65 2a 2c 20 4f 4c 45 43 48 41  Storage*, OLECHA
8be0: 52 2a 2c 20 44 57 4f 52 44 2c 20 44 57 4f 52 44  R*, DWORD, DWORD
8bf0: 2c 20 44 57 4f 52 44 2c 20 49 53 74 72 65 61 6d  , DWORD, IStream
8c00: 2a 2a 29 3b 0a 76 6f 69 64 20 49 53 74 6f 72 61  **);.void IStora
8c10: 67 65 5f 43 72 65 61 74 65 53 74 72 65 61 6d 5f  ge_CreateStream_
8c20: 53 74 75 62 28 49 52 70 63 53 74 75 62 42 75 66  Stub(IRpcStubBuf
8c30: 66 65 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e 65  fer*, IRpcChanne
8c40: 6c 42 75 66 66 65 72 2a 2c 20 50 52 50 43 5f 4d  lBuffer*, PRPC_M
8c50: 45 53 53 41 47 45 2c 20 50 44 57 4f 52 44 29 3b  ESSAGE, PDWORD);
8c60: 0a 48 52 45 53 55 4c 54 20 49 53 74 6f 72 61 67  .HRESULT IStorag
8c70: 65 5f 52 65 6d 6f 74 65 4f 70 65 6e 53 74 72 65  e_RemoteOpenStre
8c80: 61 6d 5f 50 72 6f 78 79 28 49 53 74 6f 72 61 67  am_Proxy(IStorag
8c90: 65 2a 2c 20 43 50 74 72 21 28 4f 4c 45 43 48 41  e*, CPtr!(OLECHA
8ca0: 52 29 2c 20 75 69 6e 74 2c 20 42 59 54 45 2a 2c  R), uint, BYTE*,
8cb0: 20 44 57 4f 52 44 2c 20 44 57 4f 52 44 2c 20 49   DWORD, DWORD, I
8cc0: 53 74 72 65 61 6d 2a 2a 29 3b 0a 76 6f 69 64 20  Stream**);.void 
8cd0: 49 53 74 6f 72 61 67 65 5f 52 65 6d 6f 74 65 4f  IStorage_RemoteO
8ce0: 70 65 6e 53 74 72 65 61 6d 5f 53 74 75 62 28 49  penStream_Stub(I
8cf0: 52 70 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20  RpcStubBuffer*, 
8d00: 49 52 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65  IRpcChannelBuffe
8d10: 72 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45  r*, PRPC_MESSAGE
8d20: 2c 20 50 44 57 4f 52 44 29 3b 0a 48 52 45 53 55  , PDWORD);.HRESU
8d30: 4c 54 20 49 53 74 6f 72 61 67 65 5f 43 72 65 61  LT IStorage_Crea
8d40: 74 65 53 74 6f 72 61 67 65 5f 50 72 6f 78 79 28  teStorage_Proxy(
8d50: 49 53 74 6f 72 61 67 65 2a 2c 20 4f 4c 45 43 48  IStorage*, OLECH
8d60: 41 52 2a 2c 20 44 57 4f 52 44 2c 20 44 57 4f 52  AR*, DWORD, DWOR
8d70: 44 2c 20 44 57 4f 52 44 2c 20 49 53 74 6f 72 61  D, DWORD, IStora
8d80: 67 65 2a 2a 29 3b 0a 76 6f 69 64 20 49 53 74 6f  ge**);.void ISto
8d90: 72 61 67 65 5f 43 72 65 61 74 65 53 74 6f 72 61  rage_CreateStora
8da0: 67 65 5f 53 74 75 62 28 49 52 70 63 53 74 75 62  ge_Stub(IRpcStub
8db0: 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43 68 61  Buffer*, IRpcCha
8dc0: 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50 52 50  nnelBuffer*, PRP
8dd0: 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57 4f 52  C_MESSAGE, PDWOR
8de0: 44 29 3b 0a 48 52 45 53 55 4c 54 20 49 53 74 6f  D);.HRESULT ISto
8df0: 72 61 67 65 5f 4f 70 65 6e 53 74 6f 72 61 67 65  rage_OpenStorage
8e00: 5f 50 72 6f 78 79 28 49 53 74 6f 72 61 67 65 2a  _Proxy(IStorage*
8e10: 2c 20 4f 4c 45 43 48 41 52 2a 2c 20 49 53 74 6f  , OLECHAR*, ISto
8e20: 72 61 67 65 2a 2c 20 44 57 4f 52 44 2c 20 53 4e  rage*, DWORD, SN
8e30: 42 2c 20 44 57 4f 52 44 2c 20 49 53 74 6f 72 61  B, DWORD, IStora
8e40: 67 65 2a 2a 29 3b 0a 76 6f 69 64 20 49 53 74 6f  ge**);.void ISto
8e50: 72 61 67 65 5f 4f 70 65 6e 53 74 6f 72 61 67 65  rage_OpenStorage
8e60: 5f 53 74 75 62 28 49 52 70 63 53 74 75 62 42 75  _Stub(IRpcStubBu
8e70: 66 66 65 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e  ffer*, IRpcChann
8e80: 65 6c 42 75 66 66 65 72 2a 2c 20 50 52 50 43 5f  elBuffer*, PRPC_
8e90: 4d 45 53 53 41 47 45 2c 20 50 44 57 4f 52 44 29  MESSAGE, PDWORD)
8ea0: 3b 0a 48 52 45 53 55 4c 54 20 49 53 74 6f 72 61  ;.HRESULT IStora
8eb0: 67 65 5f 43 6f 70 79 54 6f 5f 50 72 6f 78 79 28  ge_CopyTo_Proxy(
8ec0: 49 53 74 6f 72 61 67 65 2a 2c 20 44 57 4f 52 44  IStorage*, DWORD
8ed0: 2c 20 43 50 74 72 21 28 49 49 44 29 2c 20 53 4e  , CPtr!(IID), SN
8ee0: 42 2c 20 49 53 74 6f 72 61 67 65 2a 29 3b 0a 76  B, IStorage*);.v
8ef0: 6f 69 64 20 49 53 74 6f 72 61 67 65 5f 43 6f 70  oid IStorage_Cop
8f00: 79 54 6f 5f 53 74 75 62 28 49 52 70 63 53 74 75  yTo_Stub(IRpcStu
8f10: 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43 68  bBuffer*, IRpcCh
8f20: 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50 52  annelBuffer*, PR
8f30: 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57 4f  PC_MESSAGE, PDWO
8f40: 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49 53 74  RD);.HRESULT ISt
8f50: 6f 72 61 67 65 5f 4d 6f 76 65 45 6c 65 6d 65 6e  orage_MoveElemen
8f60: 74 54 6f 5f 50 72 6f 78 79 28 49 53 74 6f 72 61  tTo_Proxy(IStora
8f70: 67 65 2a 2c 20 43 50 74 72 21 28 4f 4c 45 43 48  ge*, CPtr!(OLECH
8f80: 41 52 29 2c 20 49 53 74 6f 72 61 67 65 2a 2c 20  AR), IStorage*, 
8f90: 43 50 74 72 21 28 4f 4c 45 43 48 41 52 29 2c 20  CPtr!(OLECHAR), 
8fa0: 44 57 4f 52 44 29 3b 0a 76 6f 69 64 20 49 53 74  DWORD);.void ISt
8fb0: 6f 72 61 67 65 5f 4d 6f 76 65 45 6c 65 6d 65 6e  orage_MoveElemen
8fc0: 74 54 6f 5f 53 74 75 62 28 49 52 70 63 53 74 75  tTo_Stub(IRpcStu
8fd0: 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43 68  bBuffer*, IRpcCh
8fe0: 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50 52  annelBuffer*, PR
8ff0: 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57 4f  PC_MESSAGE, PDWO
9000: 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49 53 74  RD);.HRESULT ISt
9010: 6f 72 61 67 65 5f 43 6f 6d 6d 69 74 5f 50 72 6f  orage_Commit_Pro
9020: 78 79 28 49 53 74 6f 72 61 67 65 2a 2c 20 44 57  xy(IStorage*, DW
9030: 4f 52 44 29 3b 0a 76 6f 69 64 20 49 53 74 6f 72  ORD);.void IStor
9040: 61 67 65 5f 43 6f 6d 6d 69 74 5f 53 74 75 62 28  age_Commit_Stub(
9050: 49 52 70 63 53 74 75 62 42 75 66 66 65 72 2a 2c  IRpcStubBuffer*,
9060: 20 49 52 70 63 43 68 61 6e 6e 65 6c 42 75 66 66   IRpcChannelBuff
9070: 65 72 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41 47  er*, PRPC_MESSAG
9080: 45 2c 20 50 44 57 4f 52 44 29 3b 0a 48 52 45 53  E, PDWORD);.HRES
9090: 55 4c 54 20 49 53 74 6f 72 61 67 65 5f 52 65 76  ULT IStorage_Rev
90a0: 65 72 74 5f 50 72 6f 78 79 28 49 53 74 6f 72 61  ert_Proxy(IStora
90b0: 67 65 2a 29 3b 0a 76 6f 69 64 20 49 53 74 6f 72  ge*);.void IStor
90c0: 61 67 65 5f 52 65 76 65 72 74 5f 53 74 75 62 28  age_Revert_Stub(
90d0: 49 52 70 63 53 74 75 62 42 75 66 66 65 72 2a 2c  IRpcStubBuffer*,
90e0: 20 49 52 70 63 43 68 61 6e 6e 65 6c 42 75 66 66   IRpcChannelBuff
90f0: 65 72 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41 47  er*, PRPC_MESSAG
9100: 45 2c 20 50 44 57 4f 52 44 29 3b 0a 48 52 45 53  E, PDWORD);.HRES
9110: 55 4c 54 20 49 53 74 6f 72 61 67 65 5f 52 65 6d  ULT IStorage_Rem
9120: 6f 74 65 45 6e 75 6d 45 6c 65 6d 65 6e 74 73 5f  oteEnumElements_
9130: 50 72 6f 78 79 28 49 53 74 6f 72 61 67 65 2a 2c  Proxy(IStorage*,
9140: 20 44 57 4f 52 44 2c 20 75 69 6e 74 2c 20 42 59   DWORD, uint, BY
9150: 54 45 2a 2c 20 44 57 4f 52 44 2c 20 49 45 6e 75  TE*, DWORD, IEnu
9160: 6d 53 54 41 54 53 54 47 2a 2a 29 3b 0a 76 6f 69  mSTATSTG**);.voi
9170: 64 20 49 53 74 6f 72 61 67 65 5f 52 65 6d 6f 74  d IStorage_Remot
9180: 65 45 6e 75 6d 45 6c 65 6d 65 6e 74 73 5f 53 74  eEnumElements_St
9190: 75 62 28 49 52 70 63 53 74 75 62 42 75 66 66 65  ub(IRpcStubBuffe
91a0: 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e 65 6c 42  r*, IRpcChannelB
91b0: 75 66 66 65 72 2a 2c 20 50 52 50 43 5f 4d 45 53  uffer*, PRPC_MES
91c0: 53 41 47 45 2c 20 50 44 57 4f 52 44 29 3b 0a 48  SAGE, PDWORD);.H
91d0: 52 45 53 55 4c 54 20 49 53 74 6f 72 61 67 65 5f  RESULT IStorage_
91e0: 44 65 73 74 72 6f 79 45 6c 65 6d 65 6e 74 5f 50  DestroyElement_P
91f0: 72 6f 78 79 28 49 53 74 6f 72 61 67 65 2a 2c 20  roxy(IStorage*, 
9200: 4f 4c 45 43 48 41 52 2a 29 3b 0a 76 6f 69 64 20  OLECHAR*);.void 
9210: 49 53 74 6f 72 61 67 65 5f 44 65 73 74 72 6f 79  IStorage_Destroy
9220: 45 6c 65 6d 65 6e 74 5f 53 74 75 62 28 49 52 70  Element_Stub(IRp
9230: 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52  cStubBuffer*, IR
9240: 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a  pcChannelBuffer*
9250: 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20  , PRPC_MESSAGE, 
9260: 50 44 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54  PDWORD);.HRESULT
9270: 20 49 53 74 6f 72 61 67 65 5f 52 65 6e 61 6d 65   IStorage_Rename
9280: 45 6c 65 6d 65 6e 74 5f 50 72 6f 78 79 28 49 53  Element_Proxy(IS
9290: 74 6f 72 61 67 65 2a 2c 20 43 50 74 72 21 28 4f  torage*, CPtr!(O
92a0: 4c 45 43 48 41 52 29 2c 20 43 50 74 72 21 28 4f  LECHAR), CPtr!(O
92b0: 4c 45 43 48 41 52 29 29 3b 0a 76 6f 69 64 20 49  LECHAR));.void I
92c0: 53 74 6f 72 61 67 65 5f 52 65 6e 61 6d 65 45 6c  Storage_RenameEl
92d0: 65 6d 65 6e 74 5f 53 74 75 62 28 49 52 70 63 53  ement_Stub(IRpcS
92e0: 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63  tubBuffer*, IRpc
92f0: 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20  ChannelBuffer*, 
9300: 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44  PRPC_MESSAGE, PD
9310: 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49  WORD);.HRESULT I
9320: 53 74 6f 72 61 67 65 5f 53 65 74 45 6c 65 6d 65  Storage_SetEleme
9330: 6e 74 54 69 6d 65 73 5f 50 72 6f 78 79 28 49 53  ntTimes_Proxy(IS
9340: 74 6f 72 61 67 65 2a 2c 20 43 50 74 72 21 28 4f  torage*, CPtr!(O
9350: 4c 45 43 48 41 52 29 2c 20 43 50 74 72 21 28 46  LECHAR), CPtr!(F
9360: 49 4c 45 54 49 4d 45 29 2c 20 43 50 74 72 21 28  ILETIME), CPtr!(
9370: 46 49 4c 45 54 49 4d 45 29 2c 20 43 50 74 72 21  FILETIME), CPtr!
9380: 28 46 49 4c 45 54 49 4d 45 29 29 3b 0a 76 6f 69  (FILETIME));.voi
9390: 64 20 49 53 74 6f 72 61 67 65 5f 53 65 74 45 6c  d IStorage_SetEl
93a0: 65 6d 65 6e 74 54 69 6d 65 73 5f 53 74 75 62 28  ementTimes_Stub(
93b0: 49 52 70 63 53 74 75 62 42 75 66 66 65 72 2a 2c  IRpcStubBuffer*,
93c0: 20 49 52 70 63 43 68 61 6e 6e 65 6c 42 75 66 66   IRpcChannelBuff
93d0: 65 72 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41 47  er*, PRPC_MESSAG
93e0: 45 2c 20 50 44 57 4f 52 44 29 3b 0a 48 52 45 53  E, PDWORD);.HRES
93f0: 55 4c 54 20 49 53 74 6f 72 61 67 65 5f 53 65 74  ULT IStorage_Set
9400: 43 6c 61 73 73 5f 50 72 6f 78 79 28 49 53 74 6f  Class_Proxy(ISto
9410: 72 61 67 65 2a 2c 20 52 45 46 43 4c 53 49 44 29  rage*, REFCLSID)
9420: 3b 0a 76 6f 69 64 20 49 53 74 6f 72 61 67 65 5f  ;.void IStorage_
9430: 53 65 74 43 6c 61 73 73 5f 53 74 75 62 28 49 52  SetClass_Stub(IR
9440: 70 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20 49  pcStubBuffer*, I
9450: 52 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72  RpcChannelBuffer
9460: 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45 2c  *, PRPC_MESSAGE,
9470: 20 50 44 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c   PDWORD);.HRESUL
9480: 54 20 49 53 74 6f 72 61 67 65 5f 53 65 74 53 74  T IStorage_SetSt
9490: 61 74 65 42 69 74 73 5f 50 72 6f 78 79 28 49 53  ateBits_Proxy(IS
94a0: 74 6f 72 61 67 65 2a 2c 20 44 57 4f 52 44 2c 20  torage*, DWORD, 
94b0: 44 57 4f 52 44 29 3b 0a 76 6f 69 64 20 49 53 74  DWORD);.void ISt
94c0: 6f 72 61 67 65 5f 53 65 74 53 74 61 74 65 42 69  orage_SetStateBi
94d0: 74 73 5f 53 74 75 62 28 49 52 70 63 53 74 75 62  ts_Stub(IRpcStub
94e0: 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43 68 61  Buffer*, IRpcCha
94f0: 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50 52 50  nnelBuffer*, PRP
9500: 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57 4f 52  C_MESSAGE, PDWOR
9510: 44 29 3b 0a 48 52 45 53 55 4c 54 20 49 53 74 6f  D);.HRESULT ISto
9520: 72 61 67 65 5f 53 74 61 74 5f 50 72 6f 78 79 28  rage_Stat_Proxy(
9530: 49 53 74 6f 72 61 67 65 2a 2c 20 53 54 41 54 53  IStorage*, STATS
9540: 54 47 2a 2c 20 44 57 4f 52 44 29 3b 0a 76 6f 69  TG*, DWORD);.voi
9550: 64 20 49 53 74 6f 72 61 67 65 5f 53 74 61 74 5f  d IStorage_Stat_
9560: 53 74 75 62 28 49 52 70 63 53 74 75 62 42 75 66  Stub(IRpcStubBuf
9570: 66 65 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e 65  fer*, IRpcChanne
9580: 6c 42 75 66 66 65 72 2a 2c 20 50 52 50 43 5f 4d  lBuffer*, PRPC_M
9590: 45 53 53 41 47 45 2c 20 50 44 57 4f 52 44 29 3b  ESSAGE, PDWORD);
95a0: 0a 48 52 45 53 55 4c 54 20 49 50 65 72 73 69 73  .HRESULT IPersis
95b0: 74 46 69 6c 65 5f 49 73 44 69 72 74 79 5f 50 72  tFile_IsDirty_Pr
95c0: 6f 78 79 28 49 50 65 72 73 69 73 74 46 69 6c 65  oxy(IPersistFile
95d0: 2a 29 3b 0a 76 6f 69 64 20 49 50 65 72 73 69 73  *);.void IPersis
95e0: 74 46 69 6c 65 5f 49 73 44 69 72 74 79 5f 53 74  tFile_IsDirty_St
95f0: 75 62 28 49 52 70 63 53 74 75 62 42 75 66 66 65  ub(IRpcStubBuffe
9600: 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e 65 6c 42  r*, IRpcChannelB
9610: 75 66 66 65 72 2a 2c 20 50 52 50 43 5f 4d 45 53  uffer*, PRPC_MES
9620: 53 41 47 45 2c 20 50 44 57 4f 52 44 29 3b 0a 48  SAGE, PDWORD);.H
9630: 52 45 53 55 4c 54 20 49 50 65 72 73 69 73 74 46  RESULT IPersistF
9640: 69 6c 65 5f 4c 6f 61 64 5f 50 72 6f 78 79 28 49  ile_Load_Proxy(I
9650: 50 65 72 73 69 73 74 46 69 6c 65 2a 2c 20 4c 50  PersistFile*, LP
9660: 43 4f 4c 45 53 54 52 2c 20 44 57 4f 52 44 29 3b  COLESTR, DWORD);
9670: 0a 76 6f 69 64 20 49 50 65 72 73 69 73 74 46 69  .void IPersistFi
9680: 6c 65 5f 4c 6f 61 64 5f 53 74 75 62 28 49 52 70  le_Load_Stub(IRp
9690: 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52  cStubBuffer*, IR
96a0: 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a  pcChannelBuffer*
96b0: 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20  , PRPC_MESSAGE, 
96c0: 50 44 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54  PDWORD);.HRESULT
96d0: 20 49 50 65 72 73 69 73 74 46 69 6c 65 5f 53 61   IPersistFile_Sa
96e0: 76 65 5f 50 72 6f 78 79 28 49 50 65 72 73 69 73  ve_Proxy(IPersis
96f0: 74 46 69 6c 65 2a 2c 20 4c 50 43 4f 4c 45 53 54  tFile*, LPCOLEST
9700: 52 20 70 73 7a 46 69 6c 65 4e 61 6d 65 2c 20 42  R pszFileName, B
9710: 4f 4f 4c 29 3b 0a 76 6f 69 64 20 49 50 65 72 73  OOL);.void IPers
9720: 69 73 74 46 69 6c 65 5f 53 61 76 65 5f 53 74 75  istFile_Save_Stu
9730: 62 28 49 52 70 63 53 74 75 62 42 75 66 66 65 72  b(IRpcStubBuffer
9740: 2a 2c 20 49 52 70 63 43 68 61 6e 6e 65 6c 42 75  *, IRpcChannelBu
9750: 66 66 65 72 2a 2c 20 50 52 50 43 5f 4d 45 53 53  ffer*, PRPC_MESS
9760: 41 47 45 2c 20 50 44 57 4f 52 44 29 3b 0a 48 52  AGE, PDWORD);.HR
9770: 45 53 55 4c 54 20 49 50 65 72 73 69 73 74 46 69  ESULT IPersistFi
9780: 6c 65 5f 53 61 76 65 43 6f 6d 70 6c 65 74 65 64  le_SaveCompleted
9790: 5f 50 72 6f 78 79 28 49 50 65 72 73 69 73 74 46  _Proxy(IPersistF
97a0: 69 6c 65 2a 2c 20 4c 50 43 4f 4c 45 53 54 52 29  ile*, LPCOLESTR)
97b0: 3b 0a 76 6f 69 64 20 49 50 65 72 73 69 73 74 46  ;.void IPersistF
97c0: 69 6c 65 5f 53 61 76 65 43 6f 6d 70 6c 65 74 65  ile_SaveComplete
97d0: 64 5f 53 74 75 62 28 49 52 70 63 53 74 75 62 42  d_Stub(IRpcStubB
97e0: 75 66 66 65 72 2a 2c 20 49 52 70 63 43 68 61 6e  uffer*, IRpcChan
97f0: 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50 52 50 43  nelBuffer*, PRPC
9800: 5f 4d 45 53 53 41 47 45 2c 20 50 44 57 4f 52 44  _MESSAGE, PDWORD
9810: 29 3b 0a 48 52 45 53 55 4c 54 20 49 50 65 72 73  );.HRESULT IPers
9820: 69 73 74 46 69 6c 65 5f 47 65 74 43 75 72 46 69  istFile_GetCurFi
9830: 6c 65 5f 50 72 6f 78 79 28 49 50 65 72 73 69 73  le_Proxy(IPersis
9840: 74 46 69 6c 65 2a 2c 20 4c 50 43 53 54 52 2a 29  tFile*, LPCSTR*)
9850: 3b 0a 76 6f 69 64 20 49 50 65 72 73 69 73 74 46  ;.void IPersistF
9860: 69 6c 65 5f 47 65 74 43 75 72 46 69 6c 65 5f 53  ile_GetCurFile_S
9870: 74 75 62 28 49 52 70 63 53 74 75 62 42 75 66 66  tub(IRpcStubBuff
9880: 65 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e 65 6c  er*, IRpcChannel
9890: 42 75 66 66 65 72 2a 2c 20 50 52 50 43 5f 4d 45  Buffer*, PRPC_ME
98a0: 53 53 41 47 45 2c 20 50 44 57 4f 52 44 29 3b 0a  SSAGE, PDWORD);.
98b0: 48 52 45 53 55 4c 54 20 49 50 65 72 73 69 73 74  HRESULT IPersist
98c0: 53 74 6f 72 61 67 65 5f 49 73 44 69 72 74 79 5f  Storage_IsDirty_
98d0: 50 72 6f 78 79 28 49 50 65 72 73 69 73 74 53 74  Proxy(IPersistSt
98e0: 6f 72 61 67 65 2a 29 3b 0a 76 6f 69 64 20 49 50  orage*);.void IP
98f0: 65 72 73 69 73 74 53 74 6f 72 61 67 65 5f 49 73  ersistStorage_Is
9900: 44 69 72 74 79 5f 53 74 75 62 28 49 52 70 63 53  Dirty_Stub(IRpcS
9910: 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63  tubBuffer*, IRpc
9920: 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20  ChannelBuffer*, 
9930: 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44  PRPC_MESSAGE, PD
9940: 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49  WORD);.HRESULT I
9950: 50 65 72 73 69 73 74 53 74 6f 72 61 67 65 5f 49  PersistStorage_I
9960: 6e 69 74 4e 65 77 5f 50 72 6f 78 79 28 49 50 65  nitNew_Proxy(IPe
9970: 72 73 69 73 74 53 74 6f 72 61 67 65 2a 2c 20 49  rsistStorage*, I
9980: 53 74 6f 72 61 67 65 2a 29 3b 0a 76 6f 69 64 20  Storage*);.void 
9990: 49 50 65 72 73 69 73 74 53 74 6f 72 61 67 65 5f  IPersistStorage_
99a0: 49 6e 69 74 4e 65 77 5f 53 74 75 62 28 49 52 70  InitNew_Stub(IRp
99b0: 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52  cStubBuffer*, IR
99c0: 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a  pcChannelBuffer*
99d0: 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20  , PRPC_MESSAGE, 
99e0: 50 44 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54  PDWORD);.HRESULT
99f0: 20 49 50 65 72 73 69 73 74 53 74 6f 72 61 67 65   IPersistStorage
9a00: 5f 4c 6f 61 64 5f 50 72 6f 78 79 28 49 50 65 72  _Load_Proxy(IPer
9a10: 73 69 73 74 53 74 6f 72 61 67 65 2a 2c 20 49 53  sistStorage*, IS
9a20: 74 6f 72 61 67 65 2a 29 3b 0a 76 6f 69 64 20 49  torage*);.void I
9a30: 50 65 72 73 69 73 74 53 74 6f 72 61 67 65 5f 4c  PersistStorage_L
9a40: 6f 61 64 5f 53 74 75 62 28 49 52 70 63 53 74 75  oad_Stub(IRpcStu
9a50: 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43 68  bBuffer*, IRpcCh
9a60: 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50 52  annelBuffer*, PR
9a70: 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57 4f  PC_MESSAGE, PDWO
9a80: 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49 50 65  RD);.HRESULT IPe
9a90: 72 73 69 73 74 53 74 6f 72 61 67 65 5f 53 61 76  rsistStorage_Sav
9aa0: 65 5f 50 72 6f 78 79 28 49 50 65 72 73 69 73 74  e_Proxy(IPersist
9ab0: 53 74 6f 72 61 67 65 2a 2c 20 49 53 74 6f 72 61  Storage*, IStora
9ac0: 67 65 2a 2c 20 42 4f 4f 4c 29 3b 0a 76 6f 69 64  ge*, BOOL);.void
9ad0: 20 49 50 65 72 73 69 73 74 53 74 6f 72 61 67 65   IPersistStorage
9ae0: 5f 53 61 76 65 5f 53 74 75 62 28 49 52 70 63 53  _Save_Stub(IRpcS
9af0: 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63  tubBuffer*, IRpc
9b00: 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20  ChannelBuffer*, 
9b10: 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44  PRPC_MESSAGE, PD
9b20: 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49  WORD);.HRESULT I
9b30: 50 65 72 73 69 73 74 53 74 6f 72 61 67 65 5f 53  PersistStorage_S
9b40: 61 76 65 43 6f 6d 70 6c 65 74 65 64 5f 50 72 6f  aveCompleted_Pro
9b50: 78 79 28 49 50 65 72 73 69 73 74 53 74 6f 72 61  xy(IPersistStora
9b60: 67 65 2a 2c 20 49 53 74 6f 72 61 67 65 2a 29 3b  ge*, IStorage*);
9b70: 0a 76 6f 69 64 20 49 50 65 72 73 69 73 74 53 74  .void IPersistSt
9b80: 6f 72 61 67 65 5f 53 61 76 65 43 6f 6d 70 6c 65  orage_SaveComple
9b90: 74 65 64 5f 53 74 75 62 28 49 52 70 63 53 74 75  ted_Stub(IRpcStu
9ba0: 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43 68  bBuffer*, IRpcCh
9bb0: 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50 52  annelBuffer*, PR
9bc0: 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57 4f  PC_MESSAGE, PDWO
9bd0: 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49 50 65  RD);.HRESULT IPe
9be0: 72 73 69 73 74 53 74 6f 72 61 67 65 5f 48 61 6e  rsistStorage_Han
9bf0: 64 73 4f 66 66 53 74 6f 72 61 67 65 5f 50 72 6f  dsOffStorage_Pro
9c00: 78 79 28 49 50 65 72 73 69 73 74 53 74 6f 72 61  xy(IPersistStora
9c10: 67 65 2a 29 3b 0a 76 6f 69 64 20 49 50 65 72 73  ge*);.void IPers
9c20: 69 73 74 53 74 6f 72 61 67 65 5f 48 61 6e 64 73  istStorage_Hands
9c30: 4f 66 66 53 74 6f 72 61 67 65 5f 53 74 75 62 28  OffStorage_Stub(
9c40: 49 52 70 63 53 74 75 62 42 75 66 66 65 72 2a 2c  IRpcStubBuffer*,
9c50: 20 49 52 70 63 43 68 61 6e 6e 65 6c 42 75 66 66   IRpcChannelBuff
9c60: 65 72 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41 47  er*, PRPC_MESSAG
9c70: 45 2c 20 50 44 57 4f 52 44 29 3b 0a 48 52 45 53  E, PDWORD);.HRES
9c80: 55 4c 54 20 49 4c 6f 63 6b 42 79 74 65 73 5f 52  ULT ILockBytes_R
9c90: 65 6d 6f 74 65 52 65 61 64 41 74 5f 50 72 6f 78  emoteReadAt_Prox
9ca0: 79 28 49 4c 6f 63 6b 42 79 74 65 73 2a 2c 20 55  y(ILockBytes*, U
9cb0: 4c 41 52 47 45 5f 49 4e 54 45 47 45 52 2c 20 42  LARGE_INTEGER, B
9cc0: 59 54 45 2a 2c 20 55 4c 4f 4e 47 2c 20 55 4c 4f  YTE*, ULONG, ULO
9cd0: 4e 47 2a 29 3b 0a 76 6f 69 64 20 49 4c 6f 63 6b  NG*);.void ILock
9ce0: 42 79 74 65 73 5f 52 65 6d 6f 74 65 52 65 61 64  Bytes_RemoteRead
9cf0: 41 74 5f 53 74 75 62 28 49 52 70 63 53 74 75 62  At_Stub(IRpcStub
9d00: 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43 68 61  Buffer*, IRpcCha
9d10: 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50 52 50  nnelBuffer*, PRP
9d20: 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57 4f 52  C_MESSAGE, PDWOR
9d30: 44 29 3b 0a 48 52 45 53 55 4c 54 20 49 4c 6f 63  D);.HRESULT ILoc
9d40: 6b 42 79 74 65 73 5f 52 65 6d 6f 74 65 57 72 69  kBytes_RemoteWri
9d50: 74 65 41 74 5f 50 72 6f 78 79 28 49 4c 6f 63 6b  teAt_Proxy(ILock
9d60: 42 79 74 65 73 2a 2c 20 55 4c 41 52 47 45 5f 49  Bytes*, ULARGE_I
9d70: 4e 54 45 47 45 52 2c 20 42 59 54 45 2a 70 76 2c  NTEGER, BYTE*pv,
9d80: 20 55 4c 4f 4e 47 2c 20 55 4c 4f 4e 47 2a 29 3b   ULONG, ULONG*);
9d90: 0a 76 6f 69 64 20 49 4c 6f 63 6b 42 79 74 65 73  .void ILockBytes
9da0: 5f 52 65 6d 6f 74 65 57 72 69 74 65 41 74 5f 53  _RemoteWriteAt_S
9db0: 74 75 62 28 49 52 70 63 53 74 75 62 42 75 66 66  tub(IRpcStubBuff
9dc0: 65 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e 65 6c  er*, IRpcChannel
9dd0: 42 75 66 66 65 72 2a 2c 20 50 52 50 43 5f 4d 45  Buffer*, PRPC_ME
9de0: 53 53 41 47 45 2c 20 50 44 57 4f 52 44 29 3b 0a  SSAGE, PDWORD);.
9df0: 48 52 45 53 55 4c 54 20 49 4c 6f 63 6b 42 79 74  HRESULT ILockByt
9e00: 65 73 5f 46 6c 75 73 68 5f 50 72 6f 78 79 28 49  es_Flush_Proxy(I
9e10: 4c 6f 63 6b 42 79 74 65 73 2a 29 3b 0a 76 6f 69  LockBytes*);.voi
9e20: 64 20 49 4c 6f 63 6b 42 79 74 65 73 5f 46 6c 75  d ILockBytes_Flu
9e30: 73 68 5f 53 74 75 62 28 49 52 70 63 53 74 75 62  sh_Stub(IRpcStub
9e40: 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43 68 61  Buffer*, IRpcCha
9e50: 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50 52 50  nnelBuffer*, PRP
9e60: 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57 4f 52  C_MESSAGE, PDWOR
9e70: 44 29 3b 0a 48 52 45 53 55 4c 54 20 49 4c 6f 63  D);.HRESULT ILoc
9e80: 6b 42 79 74 65 73 5f 53 65 74 53 69 7a 65 5f 50  kBytes_SetSize_P
9e90: 72 6f 78 79 28 49 4c 6f 63 6b 42 79 74 65 73 2a  roxy(ILockBytes*
9ea0: 2c 20 55 4c 41 52 47 45 5f 49 4e 54 45 47 45 52  , ULARGE_INTEGER
9eb0: 29 3b 0a 76 6f 69 64 20 49 4c 6f 63 6b 42 79 74  );.void ILockByt
9ec0: 65 73 5f 53 65 74 53 69 7a 65 5f 53 74 75 62 28  es_SetSize_Stub(
9ed0: 49 52 70 63 53 74 75 62 42 75 66 66 65 72 2a 2c  IRpcStubBuffer*,
9ee0: 20 49 52 70 63 43 68 61 6e 6e 65 6c 42 75 66 66   IRpcChannelBuff
9ef0: 65 72 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41 47  er*, PRPC_MESSAG
9f00: 45 2c 20 50 44 57 4f 52 44 29 3b 0a 48 52 45 53  E, PDWORD);.HRES
9f10: 55 4c 54 20 49 4c 6f 63 6b 42 79 74 65 73 5f 4c  ULT ILockBytes_L
9f20: 6f 63 6b 52 65 67 69 6f 6e 5f 50 72 6f 78 79 28  ockRegion_Proxy(
9f30: 49 4c 6f 63 6b 42 79 74 65 73 2a 2c 20 55 4c 41  ILockBytes*, ULA
9f40: 52 47 45 5f 49 4e 54 45 47 45 52 2c 20 55 4c 41  RGE_INTEGER, ULA
9f50: 52 47 45 5f 49 4e 54 45 47 45 52 2c 20 44 57 4f  RGE_INTEGER, DWO
9f60: 52 44 29 3b 0a 76 6f 69 64 20 49 4c 6f 63 6b 42  RD);.void ILockB
9f70: 79 74 65 73 5f 4c 6f 63 6b 52 65 67 69 6f 6e 5f  ytes_LockRegion_
9f80: 53 74 75 62 28 49 52 70 63 53 74 75 62 42 75 66  Stub(IRpcStubBuf
9f90: 66 65 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e 65  fer*, IRpcChanne
9fa0: 6c 42 75 66 66 65 72 2a 2c 20 50 52 50 43 5f 4d  lBuffer*, PRPC_M
9fb0: 45 53 53 41 47 45 2c 20 50 44 57 4f 52 44 29 3b  ESSAGE, PDWORD);
9fc0: 0a 48 52 45 53 55 4c 54 20 49 4c 6f 63 6b 42 79  .HRESULT ILockBy
9fd0: 74 65 73 5f 55 6e 6c 6f 63 6b 52 65 67 69 6f 6e  tes_UnlockRegion
9fe0: 5f 50 72 6f 78 79 28 49 4c 6f 63 6b 42 79 74 65  _Proxy(ILockByte
9ff0: 73 2a 2c 20 55 4c 41 52 47 45 5f 49 4e 54 45 47  s*, ULARGE_INTEG
a000: 45 52 2c 20 55 4c 41 52 47 45 5f 49 4e 54 45 47  ER, ULARGE_INTEG
a010: 45 52 2c 20 44 57 4f 52 44 29 3b 0a 76 6f 69 64  ER, DWORD);.void
a020: 20 49 4c 6f 63 6b 42 79 74 65 73 5f 55 6e 6c 6f   ILockBytes_Unlo
a030: 63 6b 52 65 67 69 6f 6e 5f 53 74 75 62 28 49 52  ckRegion_Stub(IR
a040: 70 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20 49  pcStubBuffer*, I
a050: 52 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72  RpcChannelBuffer
a060: 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45 2c  *, PRPC_MESSAGE,
a070: 20 50 44 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c   PDWORD);.HRESUL
a080: 54 20 49 4c 6f 63 6b 42 79 74 65 73 5f 53 74 61  T ILockBytes_Sta
a090: 74 5f 50 72 6f 78 79 28 49 4c 6f 63 6b 42 79 74  t_Proxy(ILockByt
a0a0: 65 73 2a 2c 20 53 54 41 54 53 54 47 2a 2c 20 44  es*, STATSTG*, D
a0b0: 57 4f 52 44 29 3b 0a 76 6f 69 64 20 49 4c 6f 63  WORD);.void ILoc
a0c0: 6b 42 79 74 65 73 5f 53 74 61 74 5f 53 74 75 62  kBytes_Stat_Stub
a0d0: 28 49 52 70 63 53 74 75 62 42 75 66 66 65 72 2a  (IRpcStubBuffer*
a0e0: 2c 20 49 52 70 63 43 68 61 6e 6e 65 6c 42 75 66  , IRpcChannelBuf
a0f0: 66 65 72 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41  fer*, PRPC_MESSA
a100: 47 45 2c 20 50 44 57 4f 52 44 29 3b 0a 48 52 45  GE, PDWORD);.HRE
a110: 53 55 4c 54 20 49 45 6e 75 6d 46 4f 52 4d 41 54  SULT IEnumFORMAT
a120: 45 54 43 5f 52 65 6d 6f 74 65 4e 65 78 74 5f 50  ETC_RemoteNext_P
a130: 72 6f 78 79 28 49 45 6e 75 6d 46 4f 52 4d 41 54  roxy(IEnumFORMAT
a140: 45 54 43 2a 2c 20 55 4c 4f 4e 47 2c 20 46 4f 52  ETC*, ULONG, FOR
a150: 4d 41 54 45 54 43 2a 2c 20 55 4c 4f 4e 47 2a 29  MATETC*, ULONG*)
a160: 3b 0a 76 6f 69 64 20 49 45 6e 75 6d 46 4f 52 4d  ;.void IEnumFORM
a170: 41 54 45 54 43 5f 52 65 6d 6f 74 65 4e 65 78 74  ATETC_RemoteNext
a180: 5f 53 74 75 62 28 49 52 70 63 53 74 75 62 42 75  _Stub(IRpcStubBu
a190: 66 66 65 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e  ffer*, IRpcChann
a1a0: 65 6c 42 75 66 66 65 72 2a 2c 20 50 52 50 43 5f  elBuffer*, PRPC_
a1b0: 4d 45 53 53 41 47 45 2c 20 50 44 57 4f 52 44 29  MESSAGE, PDWORD)
a1c0: 3b 0a 48 52 45 53 55 4c 54 20 49 45 6e 75 6d 46  ;.HRESULT IEnumF
a1d0: 4f 52 4d 41 54 45 54 43 5f 53 6b 69 70 5f 50 72  ORMATETC_Skip_Pr
a1e0: 6f 78 79 28 49 45 6e 75 6d 46 4f 52 4d 41 54 45  oxy(IEnumFORMATE
a1f0: 54 43 2a 2c 20 55 4c 4f 4e 47 29 3b 0a 76 6f 69  TC*, ULONG);.voi
a200: 64 20 49 45 6e 75 6d 46 4f 52 4d 41 54 45 54 43  d IEnumFORMATETC
a210: 5f 53 6b 69 70 5f 53 74 75 62 28 49 52 70 63 53  _Skip_Stub(IRpcS
a220: 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63  tubBuffer*, IRpc
a230: 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20  ChannelBuffer*, 
a240: 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44  PRPC_MESSAGE, PD
a250: 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49  WORD);.HRESULT I
a260: 45 6e 75 6d 46 4f 52 4d 41 54 45 54 43 5f 52 65  EnumFORMATETC_Re
a270: 73 65 74 5f 50 72 6f 78 79 28 49 45 6e 75 6d 46  set_Proxy(IEnumF
a280: 4f 52 4d 41 54 45 54 43 2a 29 3b 0a 76 6f 69 64  ORMATETC*);.void
a290: 20 49 45 6e 75 6d 46 4f 52 4d 41 54 45 54 43 5f   IEnumFORMATETC_
a2a0: 52 65 73 65 74 5f 53 74 75 62 28 49 52 70 63 53  Reset_Stub(IRpcS
a2b0: 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63  tubBuffer*, IRpc
a2c0: 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20  ChannelBuffer*, 
a2d0: 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44  PRPC_MESSAGE, PD
a2e0: 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49  WORD);.HRESULT I
a2f0: 45 6e 75 6d 46 4f 52 4d 41 54 45 54 43 5f 43 6c  EnumFORMATETC_Cl
a300: 6f 6e 65 5f 50 72 6f 78 79 28 49 45 6e 75 6d 46  one_Proxy(IEnumF
a310: 4f 52 4d 41 54 45 54 43 2a 2c 20 49 45 6e 75 6d  ORMATETC*, IEnum
a320: 46 4f 52 4d 41 54 45 54 43 2a 2a 29 3b 0a 76 6f  FORMATETC**);.vo
a330: 69 64 20 49 45 6e 75 6d 46 4f 52 4d 41 54 45 54  id IEnumFORMATET
a340: 43 5f 43 6c 6f 6e 65 5f 53 74 75 62 28 49 52 70  C_Clone_Stub(IRp
a350: 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52  cStubBuffer*, IR
a360: 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a  pcChannelBuffer*
a370: 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20  , PRPC_MESSAGE, 
a380: 50 44 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54  PDWORD);.HRESULT
a390: 20 49 45 6e 75 6d 46 4f 52 4d 41 54 45 54 43 5f   IEnumFORMATETC_
a3a0: 4e 65 78 74 5f 50 72 6f 78 79 28 49 45 6e 75 6d  Next_Proxy(IEnum
a3b0: 46 4f 52 4d 41 54 45 54 43 2a 2c 20 55 4c 4f 4e  FORMATETC*, ULON
a3c0: 47 2c 20 46 4f 52 4d 41 54 45 54 43 2a 2c 20 55  G, FORMATETC*, U
a3d0: 4c 4f 4e 47 2a 29 3b 0a 48 52 45 53 55 4c 54 20  LONG*);.HRESULT 
a3e0: 49 45 6e 75 6d 46 4f 52 4d 41 54 45 54 43 5f 4e  IEnumFORMATETC_N
a3f0: 65 78 74 5f 53 74 75 62 28 49 45 6e 75 6d 46 4f  ext_Stub(IEnumFO
a400: 52 4d 41 54 45 54 43 2a 2c 20 55 4c 4f 4e 47 2c  RMATETC*, ULONG,
a410: 20 46 4f 52 4d 41 54 45 54 43 2a 2c 20 55 4c 4f   FORMATETC*, ULO
a420: 4e 47 2a 29 3b 0a 48 52 45 53 55 4c 54 20 49 45  NG*);.HRESULT IE
a430: 6e 75 6d 53 54 41 54 44 41 54 41 5f 52 65 6d 6f  numSTATDATA_Remo
a440: 74 65 4e 65 78 74 5f 50 72 6f 78 79 28 49 45 6e  teNext_Proxy(IEn
a450: 75 6d 53 54 41 54 44 41 54 41 2a 2c 20 55 4c 4f  umSTATDATA*, ULO
a460: 4e 47 2c 20 53 54 41 54 44 41 54 41 2a 2c 20 55  NG, STATDATA*, U
a470: 4c 4f 4e 47 2a 29 3b 0a 76 6f 69 64 20 49 45 6e  LONG*);.void IEn
a480: 75 6d 53 54 41 54 44 41 54 41 5f 52 65 6d 6f 74  umSTATDATA_Remot
a490: 65 4e 65 78 74 5f 53 74 75 62 28 49 52 70 63 53  eNext_Stub(IRpcS
a4a0: 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63  tubBuffer*, IRpc
a4b0: 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20  ChannelBuffer*, 
a4c0: 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44  PRPC_MESSAGE, PD
a4d0: 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49  WORD);.HRESULT I
a4e0: 45 6e 75 6d 53 54 41 54 44 41 54 41 5f 53 6b 69  EnumSTATDATA_Ski
a4f0: 70 5f 50 72 6f 78 79 28 49 45 6e 75 6d 53 54 41  p_Proxy(IEnumSTA
a500: 54 44 41 54 41 2a 2c 20 55 4c 4f 4e 47 29 3b 0a  TDATA*, ULONG);.
a510: 76 6f 69 64 20 49 45 6e 75 6d 53 54 41 54 44 41  void IEnumSTATDA
a520: 54 41 5f 53 6b 69 70 5f 53 74 75 62 28 49 52 70  TA_Skip_Stub(IRp
a530: 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52  cStubBuffer*, IR
a540: 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a  pcChannelBuffer*
a550: 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20  , PRPC_MESSAGE, 
a560: 50 44 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54  PDWORD);.HRESULT
a570: 20 49 45 6e 75 6d 53 54 41 54 44 41 54 41 5f 52   IEnumSTATDATA_R
a580: 65 73 65 74 5f 50 72 6f 78 79 28 49 45 6e 75 6d  eset_Proxy(IEnum
a590: 53 54 41 54 44 41 54 41 2a 29 3b 0a 76 6f 69 64  STATDATA*);.void
a5a0: 20 49 45 6e 75 6d 53 54 41 54 44 41 54 41 5f 52   IEnumSTATDATA_R
a5b0: 65 73 65 74 5f 53 74 75 62 28 49 52 70 63 53 74  eset_Stub(IRpcSt
a5c0: 75 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43  ubBuffer*, IRpcC
a5d0: 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50  hannelBuffer*, P
a5e0: 52 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57  RPC_MESSAGE, PDW
a5f0: 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49 45  ORD);.HRESULT IE
a600: 6e 75 6d 53 54 41 54 44 41 54 41 5f 43 6c 6f 6e  numSTATDATA_Clon
a610: 65 5f 50 72 6f 78 79 28 49 45 6e 75 6d 53 54 41  e_Proxy(IEnumSTA
a620: 54 44 41 54 41 2a 2c 20 49 45 6e 75 6d 53 54 41  TDATA*, IEnumSTA
a630: 54 44 41 54 41 2a 2a 29 3b 0a 76 6f 69 64 20 49  TDATA**);.void I
a640: 45 6e 75 6d 53 54 41 54 44 41 54 41 5f 43 6c 6f  EnumSTATDATA_Clo
a650: 6e 65 5f 53 74 75 62 28 49 52 70 63 53 74 75 62  ne_Stub(IRpcStub
a660: 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43 68 61  Buffer*, IRpcCha
a670: 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50 52 50  nnelBuffer*, PRP
a680: 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57 4f 52  C_MESSAGE, PDWOR
a690: 44 29 3b 0a 48 52 45 53 55 4c 54 20 49 45 6e 75  D);.HRESULT IEnu
a6a0: 6d 53 54 41 54 44 41 54 41 5f 4e 65 78 74 5f 50  mSTATDATA_Next_P
a6b0: 72 6f 78 79 28 49 45 6e 75 6d 53 54 41 54 44 41  roxy(IEnumSTATDA
a6c0: 54 41 2a 2c 20 55 4c 4f 4e 47 2c 20 53 54 41 54  TA*, ULONG, STAT
a6d0: 44 41 54 41 2a 2c 20 55 4c 4f 4e 47 2a 29 3b 0a  DATA*, ULONG*);.
a6e0: 48 52 45 53 55 4c 54 20 49 45 6e 75 6d 53 54 41  HRESULT IEnumSTA
a6f0: 54 44 41 54 41 5f 4e 65 78 74 5f 53 74 75 62 28  TDATA_Next_Stub(
a700: 49 45 6e 75 6d 53 54 41 54 44 41 54 41 2a 2c 20  IEnumSTATDATA*, 
a710: 55 4c 4f 4e 47 2c 20 53 54 41 54 44 41 54 41 2a  ULONG, STATDATA*
a720: 2c 20 55 4c 4f 4e 47 2a 29 3b 0a 48 52 45 53 55  , ULONG*);.HRESU
a730: 4c 54 20 49 52 6f 6f 74 53 74 6f 72 61 67 65 5f  LT IRootStorage_
a740: 53 77 69 74 63 68 54 6f 46 69 6c 65 5f 50 72 6f  SwitchToFile_Pro
a750: 78 79 28 49 52 6f 6f 74 53 74 6f 72 61 67 65 2a  xy(IRootStorage*
a760: 2c 20 4c 50 43 53 54 52 29 3b 0a 76 6f 69 64 20  , LPCSTR);.void 
a770: 49 52 6f 6f 74 53 74 6f 72 61 67 65 5f 53 77 69  IRootStorage_Swi
a780: 74 63 68 54 6f 46 69 6c 65 5f 53 74 75 62 28 49  tchToFile_Stub(I
a790: 52 70 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20  RpcStubBuffer*, 
a7a0: 49 52 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65  IRpcChannelBuffe
a7b0: 72 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45  r*, PRPC_MESSAGE
a7c0: 2c 20 50 44 57 4f 52 44 29 3b 0a 76 6f 69 64 20  , PDWORD);.void 
a7d0: 49 41 64 76 69 73 65 53 69 6e 6b 5f 52 65 6d 6f  IAdviseSink_Remo
a7e0: 74 65 4f 6e 44 61 74 61 43 68 61 6e 67 65 5f 50  teOnDataChange_P
a7f0: 72 6f 78 79 28 49 41 64 76 69 73 65 53 69 6e 6b  roxy(IAdviseSink
a800: 2a 2c 20 46 4f 52 4d 41 54 45 54 43 2a 2c 20 52  *, FORMATETC*, R
a810: 65 6d 53 54 47 4d 45 44 49 55 4d 2a 29 3b 0a 76  emSTGMEDIUM*);.v
a820: 6f 69 64 20 49 41 64 76 69 73 65 53 69 6e 6b 5f  oid IAdviseSink_
a830: 52 65 6d 6f 74 65 4f 6e 44 61 74 61 43 68 61 6e  RemoteOnDataChan
a840: 67 65 5f 53 74 75 62 28 49 52 70 63 53 74 75 62  ge_Stub(IRpcStub
a850: 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43 68 61  Buffer*, IRpcCha
a860: 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50 52 50  nnelBuffer*, PRP
a870: 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57 4f 52  C_MESSAGE, PDWOR
a880: 44 29 3b 0a 76 6f 69 64 20 49 41 64 76 69 73 65  D);.void IAdvise
a890: 53 69 6e 6b 5f 52 65 6d 6f 74 65 4f 6e 56 69 65  Sink_RemoteOnVie
a8a0: 77 43 68 61 6e 67 65 5f 50 72 6f 78 79 28 49 41  wChange_Proxy(IA
a8b0: 64 76 69 73 65 53 69 6e 6b 2a 2c 20 44 57 4f 52  dviseSink*, DWOR
a8c0: 44 2c 20 4c 4f 4e 47 29 3b 0a 76 6f 69 64 20 49  D, LONG);.void I
a8d0: 41 64 76 69 73 65 53 69 6e 6b 5f 52 65 6d 6f 74  AdviseSink_Remot
a8e0: 65 4f 6e 56 69 65 77 43 68 61 6e 67 65 5f 53 74  eOnViewChange_St
a8f0: 75 62 28 49 52 70 63 53 74 75 62 42 75 66 66 65  ub(IRpcStubBuffe
a900: 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e 65 6c 42  r*, IRpcChannelB
a910: 75 66 66 65 72 2a 2c 20 50 52 50 43 5f 4d 45 53  uffer*, PRPC_MES
a920: 53 41 47 45 2c 20 50 44 57 4f 52 44 29 3b 0a 76  SAGE, PDWORD);.v
a930: 6f 69 64 20 49 41 64 76 69 73 65 53 69 6e 6b 5f  oid IAdviseSink_
a940: 52 65 6d 6f 74 65 4f 6e 52 65 6e 61 6d 65 5f 50  RemoteOnRename_P
a950: 72 6f 78 79 28 49 41 64 76 69 73 65 53 69 6e 6b  roxy(IAdviseSink
a960: 2a 2c 20 49 4d 6f 6e 69 6b 65 72 2a 29 3b 0a 76  *, IMoniker*);.v
a970: 6f 69 64 20 49 41 64 76 69 73 65 53 69 6e 6b 5f  oid IAdviseSink_
a980: 52 65 6d 6f 74 65 4f 6e 52 65 6e 61 6d 65 5f 53  RemoteOnRename_S
a990: 74 75 62 28 49 52 70 63 53 74 75 62 42 75 66 66  tub(IRpcStubBuff
a9a0: 65 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e 65 6c  er*, IRpcChannel
a9b0: 42 75 66 66 65 72 2a 2c 20 50 52 50 43 5f 4d 45  Buffer*, PRPC_ME
a9c0: 53 53 41 47 45 2c 20 50 44 57 4f 52 44 29 3b 0a  SSAGE, PDWORD);.
a9d0: 76 6f 69 64 20 49 41 64 76 69 73 65 53 69 6e 6b  void IAdviseSink
a9e0: 5f 52 65 6d 6f 74 65 4f 6e 53 61 76 65 5f 50 72  _RemoteOnSave_Pr
a9f0: 6f 78 79 28 49 41 64 76 69 73 65 53 69 6e 6b 2a  oxy(IAdviseSink*
aa00: 29 3b 0a 76 6f 69 64 20 49 41 64 76 69 73 65 53  );.void IAdviseS
aa10: 69 6e 6b 5f 52 65 6d 6f 74 65 4f 6e 53 61 76 65  ink_RemoteOnSave
aa20: 5f 53 74 75 62 28 49 52 70 63 53 74 75 62 42 75  _Stub(IRpcStubBu
aa30: 66 66 65 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e  ffer*, IRpcChann
aa40: 65 6c 42 75 66 66 65 72 2a 2c 20 50 52 50 43 5f  elBuffer*, PRPC_
aa50: 4d 45 53 53 41 47 45 2c 20 50 44 57 4f 52 44 29  MESSAGE, PDWORD)
aa60: 3b 0a 48 52 45 53 55 4c 54 20 49 41 64 76 69 73  ;.HRESULT IAdvis
aa70: 65 53 69 6e 6b 5f 52 65 6d 6f 74 65 4f 6e 43 6c  eSink_RemoteOnCl
aa80: 6f 73 65 5f 50 72 6f 78 79 28 49 41 64 76 69 73  ose_Proxy(IAdvis
aa90: 65 53 69 6e 6b 2a 29 3b 0a 76 6f 69 64 20 49 41  eSink*);.void IA
aaa0: 64 76 69 73 65 53 69 6e 6b 5f 52 65 6d 6f 74 65  dviseSink_Remote
aab0: 4f 6e 43 6c 6f 73 65 5f 53 74 75 62 28 49 52 70  OnClose_Stub(IRp
aac0: 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52  cStubBuffer*, IR
aad0: 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a  pcChannelBuffer*
aae0: 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20  , PRPC_MESSAGE, 
aaf0: 50 44 57 4f 52 44 29 3b 0a 76 6f 69 64 20 49 41  PDWORD);.void IA
ab00: 64 76 69 73 65 53 69 6e 6b 5f 4f 6e 44 61 74 61  dviseSink_OnData
ab10: 43 68 61 6e 67 65 5f 50 72 6f 78 79 28 49 41 64  Change_Proxy(IAd
ab20: 76 69 73 65 53 69 6e 6b 2a 2c 20 46 4f 52 4d 41  viseSink*, FORMA
ab30: 54 45 54 43 2a 2c 20 53 54 47 4d 45 44 49 55 4d  TETC*, STGMEDIUM
ab40: 2a 29 3b 0a 76 6f 69 64 20 49 41 64 76 69 73 65  *);.void IAdvise
ab50: 53 69 6e 6b 5f 4f 6e 44 61 74 61 43 68 61 6e 67  Sink_OnDataChang
ab60: 65 5f 53 74 75 62 28 49 41 64 76 69 73 65 53 69  e_Stub(IAdviseSi
ab70: 6e 6b 2a 2c 20 46 4f 52 4d 41 54 45 54 43 2a 2c  nk*, FORMATETC*,
ab80: 20 52 65 6d 53 54 47 4d 45 44 49 55 4d 2a 29 3b   RemSTGMEDIUM*);
ab90: 0a 76 6f 69 64 20 49 41 64 76 69 73 65 53 69 6e  .void IAdviseSin
aba0: 6b 5f 4f 6e 56 69 65 77 43 68 61 6e 67 65 5f 50  k_OnViewChange_P
abb0: 72 6f 78 79 28 49 41 64 76 69 73 65 53 69 6e 6b  roxy(IAdviseSink
abc0: 2a 2c 20 44 57 4f 52 44 2c 20 4c 4f 4e 47 29 3b  *, DWORD, LONG);
abd0: 0a 76 6f 69 64 20 49 41 64 76 69 73 65 53 69 6e  .void IAdviseSin
abe0: 6b 5f 4f 6e 56 69 65 77 43 68 61 6e 67 65 5f 53  k_OnViewChange_S
abf0: 74 75 62 28 49 41 64 76 69 73 65 53 69 6e 6b 2a  tub(IAdviseSink*
ac00: 2c 20 44 57 4f 52 44 2c 20 4c 4f 4e 47 29 3b 0a  , DWORD, LONG);.
ac10: 76 6f 69 64 20 49 41 64 76 69 73 65 53 69 6e 6b  void IAdviseSink
ac20: 5f 4f 6e 52 65 6e 61 6d 65 5f 50 72 6f 78 79 28  _OnRename_Proxy(
ac30: 49 41 64 76 69 73 65 53 69 6e 6b 2a 2c 20 49 4d  IAdviseSink*, IM
ac40: 6f 6e 69 6b 65 72 2a 29 3b 0a 76 6f 69 64 20 49  oniker*);.void I
ac50: 41 64 76 69 73 65 53 69 6e 6b 5f 4f 6e 52 65 6e  AdviseSink_OnRen
ac60: 61 6d 65 5f 53 74 75 62 28 49 41 64 76 69 73 65  ame_Stub(IAdvise
ac70: 53 69 6e 6b 2a 2c 20 49 4d 6f 6e 69 6b 65 72 2a  Sink*, IMoniker*
ac80: 29 3b 0a 76 6f 69 64 20 49 41 64 76 69 73 65 53  );.void IAdviseS
ac90: 69 6e 6b 5f 4f 6e 53 61 76 65 5f 50 72 6f 78 79  ink_OnSave_Proxy
aca0: 28 49 41 64 76 69 73 65 53 69 6e 6b 2a 29 3b 0a  (IAdviseSink*);.
acb0: 76 6f 69 64 20 49 41 64 76 69 73 65 53 69 6e 6b  void IAdviseSink
acc0: 5f 4f 6e 53 61 76 65 5f 53 74 75 62 28 49 41 64  _OnSave_Stub(IAd
acd0: 76 69 73 65 53 69 6e 6b 2a 29 3b 0a 76 6f 69 64  viseSink*);.void
ace0: 20 49 41 64 76 69 73 65 53 69 6e 6b 5f 4f 6e 43   IAdviseSink_OnC
acf0: 6c 6f 73 65 5f 50 72 6f 78 79 28 49 41 64 76 69  lose_Proxy(IAdvi
ad00: 73 65 53 69 6e 6b 2a 29 3b 0a 48 52 45 53 55 4c  seSink*);.HRESUL
ad10: 54 20 49 41 64 76 69 73 65 53 69 6e 6b 5f 4f 6e  T IAdviseSink_On
ad20: 43 6c 6f 73 65 5f 53 74 75 62 28 49 41 64 76 69  Close_Stub(IAdvi
ad30: 73 65 53 69 6e 6b 2a 29 3b 0a 76 6f 69 64 20 49  seSink*);.void I
ad40: 41 64 76 69 73 65 53 69 6e 6b 32 5f 52 65 6d 6f  AdviseSink2_Remo
ad50: 74 65 4f 6e 4c 69 6e 6b 53 72 63 43 68 61 6e 67  teOnLinkSrcChang
ad60: 65 5f 50 72 6f 78 79 28 49 41 64 76 69 73 65 53  e_Proxy(IAdviseS
ad70: 69 6e 6b 32 2a 2c 20 49 4d 6f 6e 69 6b 65 72 2a  ink2*, IMoniker*
ad80: 29 3b 0a 76 6f 69 64 20 49 41 64 76 69 73 65 53  );.void IAdviseS
ad90: 69 6e 6b 32 5f 52 65 6d 6f 74 65 4f 6e 4c 69 6e  ink2_RemoteOnLin
ada0: 6b 53 72 63 43 68 61 6e 67 65 5f 53 74 75 62 28  kSrcChange_Stub(
adb0: 49 52 70 63 53 74 75 62 42 75 66 66 65 72 2a 2c  IRpcStubBuffer*,
adc0: 20 49 52 70 63 43 68 61 6e 6e 65 6c 42 75 66 66   IRpcChannelBuff
add0: 65 72 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41 47  er*, PRPC_MESSAG
ade0: 45 2c 20 50 44 57 4f 52 44 29 3b 0a 76 6f 69 64  E, PDWORD);.void
adf0: 20 49 41 64 76 69 73 65 53 69 6e 6b 32 5f 4f 6e   IAdviseSink2_On
ae00: 4c 69 6e 6b 53 72 63 43 68 61 6e 67 65 5f 50 72  LinkSrcChange_Pr
ae10: 6f 78 79 28 49 41 64 76 69 73 65 53 69 6e 6b 32  oxy(IAdviseSink2
ae20: 2a 2c 20 49 4d 6f 6e 69 6b 65 72 2a 29 3b 0a 76  *, IMoniker*);.v
ae30: 6f 69 64 20 49 41 64 76 69 73 65 53 69 6e 6b 32  oid IAdviseSink2
ae40: 5f 4f 6e 4c 69 6e 6b 53 72 63 43 68 61 6e 67 65  _OnLinkSrcChange
ae50: 5f 53 74 75 62 28 49 41 64 76 69 73 65 53 69 6e  _Stub(IAdviseSin
ae60: 6b 32 2a 2c 20 49 4d 6f 6e 69 6b 65 72 2a 29 3b  k2*, IMoniker*);
ae70: 0a 48 52 45 53 55 4c 54 20 49 44 61 74 61 4f 62  .HRESULT IDataOb
ae80: 6a 65 63 74 5f 52 65 6d 6f 74 65 47 65 74 44 61  ject_RemoteGetDa
ae90: 74 61 5f 50 72 6f 78 79 28 49 44 61 74 61 4f 62  ta_Proxy(IDataOb
aea0: 6a 65 63 74 2a 2c 20 46 4f 52 4d 41 54 45 54 43  ject*, FORMATETC
aeb0: 2a 2c 20 52 65 6d 53 54 47 4d 45 44 49 55 4d 2a  *, RemSTGMEDIUM*
aec0: 2a 29 3b 0a 76 6f 69 64 20 49 44 61 74 61 4f 62  *);.void IDataOb
aed0: 6a 65 63 74 5f 52 65 6d 6f 74 65 47 65 74 44 61  ject_RemoteGetDa
aee0: 74 61 5f 53 74 75 62 28 49 52 70 63 53 74 75 62  ta_Stub(IRpcStub
aef0: 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43 68 61  Buffer*, IRpcCha
af00: 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50 52 50  nnelBuffer*, PRP
af10: 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57 4f 52  C_MESSAGE, PDWOR
af20: 44 29 3b 0a 48 52 45 53 55 4c 54 20 49 44 61 74  D);.HRESULT IDat
af30: 61 4f 62 6a 65 63 74 5f 52 65 6d 6f 74 65 47 65  aObject_RemoteGe
af40: 74 44 61 74 61 48 65 72 65 5f 50 72 6f 78 79 28  tDataHere_Proxy(
af50: 49 44 61 74 61 4f 62 6a 65 63 74 2a 2c 20 46 4f  IDataObject*, FO
af60: 52 4d 41 54 45 54 43 2a 2c 20 52 65 6d 53 54 47  RMATETC*, RemSTG
af70: 4d 45 44 49 55 4d 2a 2a 29 3b 0a 76 6f 69 64 20  MEDIUM**);.void 
af80: 49 44 61 74 61 4f 62 6a 65 63 74 5f 52 65 6d 6f  IDataObject_Remo
af90: 74 65 47 65 74 44 61 74 61 48 65 72 65 5f 53 74  teGetDataHere_St
afa0: 75 62 28 49 52 70 63 53 74 75 62 42 75 66 66 65  ub(IRpcStubBuffe
afb0: 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e 65 6c 42  r*, IRpcChannelB
afc0: 75 66 66 65 72 2a 2c 20 50 52 50 43 5f 4d 45 53  uffer*, PRPC_MES
afd0: 53 41 47 45 2c 20 50 44 57 4f 52 44 29 3b 0a 48  SAGE, PDWORD);.H
afe0: 52 45 53 55 4c 54 20 49 44 61 74 61 4f 62 6a 65  RESULT IDataObje
aff0: 63 74 5f 51 75 65 72 79 47 65 74 44 61 74 61 5f  ct_QueryGetData_
b000: 50 72 6f 78 79 28 49 44 61 74 61 4f 62 6a 65 63  Proxy(IDataObjec
b010: 74 2a 2c 20 46 4f 52 4d 41 54 45 54 43 2a 29 3b  t*, FORMATETC*);
b020: 0a 76 6f 69 64 20 49 44 61 74 61 4f 62 6a 65 63  .void IDataObjec
b030: 74 5f 51 75 65 72 79 47 65 74 44 61 74 61 5f 53  t_QueryGetData_S
b040: 74 75 62 28 49 52 70 63 53 74 75 62 42 75 66 66  tub(IRpcStubBuff
b050: 65 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e 65 6c  er*, IRpcChannel
b060: 42 75 66 66 65 72 2a 2c 20 50 52 50 43 5f 4d 45  Buffer*, PRPC_ME
b070: 53 53 41 47 45 2c 20 50 44 57 4f 52 44 29 3b 0a  SSAGE, PDWORD);.
b080: 48 52 45 53 55 4c 54 20 49 44 61 74 61 4f 62 6a  HRESULT IDataObj
b090: 65 63 74 5f 47 65 74 43 61 6e 6f 6e 69 63 61 6c  ect_GetCanonical
b0a0: 46 6f 72 6d 61 74 45 74 63 5f 50 72 6f 78 79 28  FormatEtc_Proxy(
b0b0: 49 44 61 74 61 4f 62 6a 65 63 74 2a 2c 20 46 4f  IDataObject*, FO
b0c0: 52 4d 41 54 45 54 43 2a 2c 20 46 4f 52 4d 41 54  RMATETC*, FORMAT
b0d0: 45 54 43 2a 29 3b 0a 76 6f 69 64 20 49 44 61 74  ETC*);.void IDat
b0e0: 61 4f 62 6a 65 63 74 5f 47 65 74 43 61 6e 6f 6e  aObject_GetCanon
b0f0: 69 63 61 6c 46 6f 72 6d 61 74 45 74 63 5f 53 74  icalFormatEtc_St
b100: 75 62 28 49 52 70 63 53 74 75 62 42 75 66 66 65  ub(IRpcStubBuffe
b110: 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e 65 6c 42  r*, IRpcChannelB
b120: 75 66 66 65 72 2a 2c 20 50 52 50 43 5f 4d 45 53  uffer*, PRPC_MES
b130: 53 41 47 45 2c 20 50 44 57 4f 52 44 29 3b 0a 48  SAGE, PDWORD);.H
b140: 52 45 53 55 4c 54 20 49 44 61 74 61 4f 62 6a 65  RESULT IDataObje
b150: 63 74 5f 52 65 6d 6f 74 65 53 65 74 44 61 74 61  ct_RemoteSetData
b160: 5f 50 72 6f 78 79 28 49 44 61 74 61 4f 62 6a 65  _Proxy(IDataObje
b170: 63 74 2a 2c 20 46 4f 52 4d 41 54 45 54 43 2a 2c  ct*, FORMATETC*,
b180: 20 52 65 6d 53 54 47 4d 45 44 49 55 4d 2a 2c 20   RemSTGMEDIUM*, 
b190: 42 4f 4f 4c 29 3b 0a 76 6f 69 64 20 49 44 61 74  BOOL);.void IDat
b1a0: 61 4f 62 6a 65 63 74 5f 52 65 6d 6f 74 65 53 65  aObject_RemoteSe
b1b0: 74 44 61 74 61 5f 53 74 75 62 28 49 52 70 63 53  tData_Stub(IRpcS
b1c0: 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63  tubBuffer*, IRpc
b1d0: 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20  ChannelBuffer*, 
b1e0: 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44  PRPC_MESSAGE, PD
b1f0: 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49  WORD);.HRESULT I
b200: 44 61 74 61 4f 62 6a 65 63 74 5f 45 6e 75 6d 46  DataObject_EnumF
b210: 6f 72 6d 61 74 45 74 63 5f 50 72 6f 78 79 28 49  ormatEtc_Proxy(I
b220: 44 61 74 61 4f 62 6a 65 63 74 2a 2c 20 44 57 4f  DataObject*, DWO
b230: 52 44 2c 20 49 45 6e 75 6d 46 4f 52 4d 41 54 45  RD, IEnumFORMATE
b240: 54 43 2a 2a 29 3b 0a 76 6f 69 64 20 49 44 61 74  TC**);.void IDat
b250: 61 4f 62 6a 65 63 74 5f 45 6e 75 6d 46 6f 72 6d  aObject_EnumForm
b260: 61 74 45 74 63 5f 53 74 75 62 28 49 52 70 63 53  atEtc_Stub(IRpcS
b270: 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63  tubBuffer*, IRpc
b280: 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20  ChannelBuffer*, 
b290: 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44  PRPC_MESSAGE, PD
b2a0: 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49  WORD);.HRESULT I
b2b0: 44 61 74 61 4f 62 6a 65 63 74 5f 44 41 64 76 69  DataObject_DAdvi
b2c0: 73 65 5f 50 72 6f 78 79 28 49 44 61 74 61 4f 62  se_Proxy(IDataOb
b2d0: 6a 65 63 74 2a 2c 20 46 4f 52 4d 41 54 45 54 43  ject*, FORMATETC
b2e0: 2a 2c 20 44 57 4f 52 44 2c 20 49 41 64 76 69 73  *, DWORD, IAdvis
b2f0: 65 53 69 6e 6b 2a 2c 20 44 57 4f 52 44 2a 29 3b  eSink*, DWORD*);
b300: 0a 76 6f 69 64 20 49 44 61 74 61 4f 62 6a 65 63  .void IDataObjec
b310: 74 5f 44 41 64 76 69 73 65 5f 53 74 75 62 28 49  t_DAdvise_Stub(I
b320: 52 70 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20  RpcStubBuffer*, 
b330: 49 52 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65  IRpcChannelBuffe
b340: 72 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45  r*, PRPC_MESSAGE
b350: 2c 20 50 44 57 4f 52 44 29 3b 0a 48 52 45 53 55  , PDWORD);.HRESU
b360: 4c 54 20 49 44 61 74 61 4f 62 6a 65 63 74 5f 44  LT IDataObject_D
b370: 55 6e 61 64 76 69 73 65 5f 50 72 6f 78 79 28 49  Unadvise_Proxy(I
b380: 44 61 74 61 4f 62 6a 65 63 74 2a 2c 20 44 57 4f  DataObject*, DWO
b390: 52 44 29 3b 0a 76 6f 69 64 20 49 44 61 74 61 4f  RD);.void IDataO
b3a0: 62 6a 65 63 74 5f 44 55 6e 61 64 76 69 73 65 5f  bject_DUnadvise_
b3b0: 53 74 75 62 28 49 52 70 63 53 74 75 62 42 75 66  Stub(IRpcStubBuf
b3c0: 66 65 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e 65  fer*, IRpcChanne
b3d0: 6c 42 75 66 66 65 72 2a 2c 20 50 52 50 43 5f 4d  lBuffer*, PRPC_M
b3e0: 45 53 53 41 47 45 2c 20 50 44 57 4f 52 44 29 3b  ESSAGE, PDWORD);
b3f0: 0a 48 52 45 53 55 4c 54 20 49 44 61 74 61 4f 62  .HRESULT IDataOb
b400: 6a 65 63 74 5f 45 6e 75 6d 44 41 64 76 69 73 65  ject_EnumDAdvise
b410: 5f 50 72 6f 78 79 28 49 44 61 74 61 4f 62 6a 65  _Proxy(IDataObje
b420: 63 74 2a 2c 20 49 45 6e 75 6d 53 54 41 54 44 41  ct*, IEnumSTATDA
b430: 54 41 2a 2a 29 3b 0a 76 6f 69 64 20 49 44 61 74  TA**);.void IDat
b440: 61 4f 62 6a 65 63 74 5f 45 6e 75 6d 44 41 64 76  aObject_EnumDAdv
b450: 69 73 65 5f 53 74 75 62 28 49 52 70 63 53 74 75  ise_Stub(IRpcStu
b460: 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43 68  bBuffer*, IRpcCh
b470: 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50 52  annelBuffer*, PR
b480: 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57 4f  PC_MESSAGE, PDWO
b490: 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49 44 61  RD);.HRESULT IDa
b4a0: 74 61 4f 62 6a 65 63 74 5f 47 65 74 44 61 74 61  taObject_GetData
b4b0: 5f 50 72 6f 78 79 28 49 44 61 74 61 4f 62 6a 65  _Proxy(IDataObje
b4c0: 63 74 2a 2c 20 46 4f 52 4d 41 54 45 54 43 2a 2c  ct*, FORMATETC*,
b4d0: 20 53 54 47 4d 45 44 49 55 4d 2a 29 3b 0a 48 52   STGMEDIUM*);.HR
b4e0: 45 53 55 4c 54 20 49 44 61 74 61 4f 62 6a 65 63  ESULT IDataObjec
b4f0: 74 5f 47 65 74 44 61 74 61 5f 53 74 75 62 28 49  t_GetData_Stub(I
b500: 44 61 74 61 4f 62 6a 65 63 74 2a 2c 20 46 4f 52  DataObject*, FOR
b510: 4d 41 54 45 54 43 2a 2c 20 52 65 6d 53 54 47 4d  MATETC*, RemSTGM
b520: 45 44 49 55 4d 2a 2a 29 3b 0a 48 52 45 53 55 4c  EDIUM**);.HRESUL
b530: 54 20 49 44 61 74 61 4f 62 6a 65 63 74 5f 47 65  T IDataObject_Ge
b540: 74 44 61 74 61 48 65 72 65 5f 50 72 6f 78 79 28  tDataHere_Proxy(
b550: 49 44 61 74 61 4f 62 6a 65 63 74 2a 2c 20 46 4f  IDataObject*, FO
b560: 52 4d 41 54 45 54 43 2a 2c 20 53 54 47 4d 45 44  RMATETC*, STGMED
b570: 49 55 4d 2a 29 3b 0a 48 52 45 53 55 4c 54 20 49  IUM*);.HRESULT I
b580: 44 61 74 61 4f 62 6a 65 63 74 5f 47 65 74 44 61  DataObject_GetDa
b590: 74 61 48 65 72 65 5f 53 74 75 62 28 49 44 61 74  taHere_Stub(IDat
b5a0: 61 4f 62 6a 65 63 74 2a 2c 20 46 4f 52 4d 41 54  aObject*, FORMAT
b5b0: 45 54 43 2a 2c 20 52 65 6d 53 54 47 4d 45 44 49  ETC*, RemSTGMEDI
b5c0: 55 4d 2a 2a 29 3b 0a 48 52 45 53 55 4c 54 20 49  UM**);.HRESULT I
b5d0: 44 61 74 61 4f 62 6a 65 63 74 5f 53 65 74 44 61  DataObject_SetDa
b5e0: 74 61 5f 50 72 6f 78 79 28 49 44 61 74 61 4f 62  ta_Proxy(IDataOb
b5f0: 6a 65 63 74 2a 2c 20 46 4f 52 4d 41 54 45 54 43  ject*, FORMATETC
b600: 2a 2c 20 53 54 47 4d 45 44 49 55 4d 2a 2c 20 42  *, STGMEDIUM*, B
b610: 4f 4f 4c 29 3b 0a 48 52 45 53 55 4c 54 20 49 44  OOL);.HRESULT ID
b620: 61 74 61 4f 62 6a 65 63 74 5f 53 65 74 44 61 74  ataObject_SetDat
b630: 61 5f 53 74 75 62 28 49 44 61 74 61 4f 62 6a 65  a_Stub(IDataObje
b640: 63 74 2a 2c 20 46 4f 52 4d 41 54 45 54 43 2a 2c  ct*, FORMATETC*,
b650: 20 52 65 6d 53 54 47 4d 45 44 49 55 4d 2a 2c 20   RemSTGMEDIUM*, 
b660: 42 4f 4f 4c 29 3b 0a 48 52 45 53 55 4c 54 20 49  BOOL);.HRESULT I
b670: 44 61 74 61 41 64 76 69 73 65 48 6f 6c 64 65 72  DataAdviseHolder
b680: 5f 41 64 76 69 73 65 5f 50 72 6f 78 79 28 49 44  _Advise_Proxy(ID
b690: 61 74 61 41 64 76 69 73 65 48 6f 6c 64 65 72 2a  ataAdviseHolder*
b6a0: 2c 20 49 44 61 74 61 4f 62 6a 65 63 74 2a 2c 20  , IDataObject*, 
b6b0: 46 4f 52 4d 41 54 45 54 43 2a 2c 20 44 57 4f 52  FORMATETC*, DWOR
b6c0: 44 2c 20 49 41 64 76 69 73 65 53 69 6e 6b 2a 2c  D, IAdviseSink*,
b6d0: 20 44 57 4f 52 44 2a 29 3b 0a 76 6f 69 64 20 49   DWORD*);.void I
b6e0: 44 61 74 61 41 64 76 69 73 65 48 6f 6c 64 65 72  DataAdviseHolder
b6f0: 5f 41 64 76 69 73 65 5f 53 74 75 62 28 49 52 70  _Advise_Stub(IRp
b700: 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52  cStubBuffer*, IR
b710: 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a  pcChannelBuffer*
b720: 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20  , PRPC_MESSAGE, 
b730: 50 44 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54  PDWORD);.HRESULT
b740: 20 49 44 61 74 61 41 64 76 69 73 65 48 6f 6c 64   IDataAdviseHold
b750: 65 72 5f 55 6e 61 64 76 69 73 65 5f 50 72 6f 78  er_Unadvise_Prox
b760: 79 28 49 44 61 74 61 41 64 76 69 73 65 48 6f 6c  y(IDataAdviseHol
b770: 64 65 72 2a 2c 20 44 57 4f 52 44 29 3b 0a 76 6f  der*, DWORD);.vo
b780: 69 64 20 49 44 61 74 61 41 64 76 69 73 65 48 6f  id IDataAdviseHo
b790: 6c 64 65 72 5f 55 6e 61 64 76 69 73 65 5f 53 74  lder_Unadvise_St
b7a0: 75 62 28 49 52 70 63 53 74 75 62 42 75 66 66 65  ub(IRpcStubBuffe
b7b0: 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e 65 6c 42  r*, IRpcChannelB
b7c0: 75 66 66 65 72 2a 2c 20 50 52 50 43 5f 4d 45 53  uffer*, PRPC_MES
b7d0: 53 41 47 45 2c 20 50 44 57 4f 52 44 29 3b 0a 48  SAGE, PDWORD);.H
b7e0: 52 45 53 55 4c 54 20 49 44 61 74 61 41 64 76 69  RESULT IDataAdvi
b7f0: 73 65 48 6f 6c 64 65 72 5f 45 6e 75 6d 41 64 76  seHolder_EnumAdv
b800: 69 73 65 5f 50 72 6f 78 79 28 49 44 61 74 61 41  ise_Proxy(IDataA
b810: 64 76 69 73 65 48 6f 6c 64 65 72 2a 2c 20 49 45  dviseHolder*, IE
b820: 6e 75 6d 53 54 41 54 44 41 54 41 2a 2a 29 3b 0a  numSTATDATA**);.
b830: 76 6f 69 64 20 49 44 61 74 61 41 64 76 69 73 65  void IDataAdvise
b840: 48 6f 6c 64 65 72 5f 45 6e 75 6d 41 64 76 69 73  Holder_EnumAdvis
b850: 65 5f 53 74 75 62 28 49 52 70 63 53 74 75 62 42  e_Stub(IRpcStubB
b860: 75 66 66 65 72 2a 2c 20 49 52 70 63 43 68 61 6e  uffer*, IRpcChan
b870: 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50 52 50 43  nelBuffer*, PRPC
b880: 5f 4d 45 53 53 41 47 45 2c 20 50 44 57 4f 52 44  _MESSAGE, PDWORD
b890: 29 3b 0a 48 52 45 53 55 4c 54 20 49 44 61 74 61  );.HRESULT IData
b8a0: 41 64 76 69 73 65 48 6f 6c 64 65 72 5f 53 65 6e  AdviseHolder_Sen
b8b0: 64 4f 6e 44 61 74 61 43 68 61 6e 67 65 5f 50 72  dOnDataChange_Pr
b8c0: 6f 78 79 28 49 44 61 74 61 41 64 76 69 73 65 48  oxy(IDataAdviseH
b8d0: 6f 6c 64 65 72 2a 2c 20 49 44 61 74 61 4f 62 6a  older*, IDataObj
b8e0: 65 63 74 2a 2c 20 44 57 4f 52 44 2c 20 44 57 4f  ect*, DWORD, DWO
b8f0: 52 44 29 3b 0a 76 6f 69 64 20 49 44 61 74 61 41  RD);.void IDataA
b900: 64 76 69 73 65 48 6f 6c 64 65 72 5f 53 65 6e 64  dviseHolder_Send
b910: 4f 6e 44 61 74 61 43 68 61 6e 67 65 5f 53 74 75  OnDataChange_Stu
b920: 62 28 49 52 70 63 53 74 75 62 42 75 66 66 65 72  b(IRpcStubBuffer
b930: 2a 2c 20 49 52 70 63 43 68 61 6e 6e 65 6c 42 75  *, IRpcChannelBu
b940: 66 66 65 72 2a 2c 20 50 52 50 43 5f 4d 45 53 53  ffer*, PRPC_MESS
b950: 41 47 45 2c 20 50 44 57 4f 52 44 29 3b 0a 44 57  AGE, PDWORD);.DW
b960: 4f 52 44 20 49 4d 65 73 73 61 67 65 46 69 6c 74  ORD IMessageFilt
b970: 65 72 5f 48 61 6e 64 6c 65 49 6e 43 6f 6d 69 6e  er_HandleInComin
b980: 67 43 61 6c 6c 5f 50 72 6f 78 79 28 49 4d 65 73  gCall_Proxy(IMes
b990: 73 61 67 65 46 69 6c 74 65 72 2a 2c 20 44 57 4f  sageFilter*, DWO
b9a0: 52 44 2c 20 48 54 41 53 4b 2c 20 44 57 4f 52 44  RD, HTASK, DWORD
b9b0: 2c 20 4c 50 49 4e 54 45 52 46 41 43 45 49 4e 46  , LPINTERFACEINF
b9c0: 4f 29 3b 0a 76 6f 69 64 20 49 4d 65 73 73 61 67  O);.void IMessag
b9d0: 65 46 69 6c 74 65 72 5f 48 61 6e 64 6c 65 49 6e  eFilter_HandleIn
b9e0: 43 6f 6d 69 6e 67 43 61 6c 6c 5f 53 74 75 62 28  ComingCall_Stub(
b9f0: 49 52 70 63 53 74 75 62 42 75 66 66 65 72 2a 2c  IRpcStubBuffer*,
ba00: 20 49 52 70 63 43 68 61 6e 6e 65 6c 42 75 66 66   IRpcChannelBuff
ba10: 65 72 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41 47  er*, PRPC_MESSAG
ba20: 45 2c 20 50 44 57 4f 52 44 29 3b 0a 44 57 4f 52  E, PDWORD);.DWOR
ba30: 44 20 49 4d 65 73 73 61 67 65 46 69 6c 74 65 72  D IMessageFilter
ba40: 5f 52 65 74 72 79 52 65 6a 65 63 74 65 64 43 61  _RetryRejectedCa
ba50: 6c 6c 5f 50 72 6f 78 79 28 49 4d 65 73 73 61 67  ll_Proxy(IMessag
ba60: 65 46 69 6c 74 65 72 2a 2c 20 48 54 41 53 4b 2c  eFilter*, HTASK,
ba70: 20 44 57 4f 52 44 2c 20 44 57 4f 52 44 29 3b 0a   DWORD, DWORD);.
ba80: 76 6f 69 64 20 49 4d 65 73 73 61 67 65 46 69 6c  void IMessageFil
ba90: 74 65 72 5f 52 65 74 72 79 52 65 6a 65 63 74 65  ter_RetryRejecte
baa0: 64 43 61 6c 6c 5f 53 74 75 62 28 49 52 70 63 53  dCall_Stub(IRpcS
bab0: 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63  tubBuffer*, IRpc
bac0: 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20  ChannelBuffer*, 
bad0: 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44  PRPC_MESSAGE, PD
bae0: 57 4f 52 44 29 3b 0a 44 57 4f 52 44 20 49 4d 65  WORD);.DWORD IMe
baf0: 73 73 61 67 65 46 69 6c 74 65 72 5f 4d 65 73 73  ssageFilter_Mess
bb00: 61 67 65 50 65 6e 64 69 6e 67 5f 50 72 6f 78 79  agePending_Proxy
bb10: 28 49 4d 65 73 73 61 67 65 46 69 6c 74 65 72 2a  (IMessageFilter*
bb20: 2c 20 48 54 41 53 4b 2c 20 44 57 4f 52 44 2c 20  , HTASK, DWORD, 
bb30: 44 57 4f 52 44 29 3b 0a 76 6f 69 64 20 49 4d 65  DWORD);.void IMe
bb40: 73 73 61 67 65 46 69 6c 74 65 72 5f 4d 65 73 73  ssageFilter_Mess
bb50: 61 67 65 50 65 6e 64 69 6e 67 5f 53 74 75 62 28  agePending_Stub(
bb60: 49 52 70 63 53 74 75 62 42 75 66 66 65 72 2a 2c  IRpcStubBuffer*,
bb70: 20 49 52 70 63 43 68 61 6e 6e 65 6c 42 75 66 66   IRpcChannelBuff
bb80: 65 72 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41 47  er*, PRPC_MESSAG
bb90: 45 2c 20 50 44 57 4f 52 44 29 3b 0a 48 52 45 53  E, PDWORD);.HRES
bba0: 55 4c 54 20 49 52 70 63 43 68 61 6e 6e 65 6c 42  ULT IRpcChannelB
bbb0: 75 66 66 65 72 5f 47 65 74 42 75 66 66 65 72 5f  uffer_GetBuffer_
bbc0: 50 72 6f 78 79 28 49 52 70 63 43 68 61 6e 6e 65  Proxy(IRpcChanne
bbd0: 6c 42 75 66 66 65 72 2a 2c 20 52 50 43 4f 4c 45  lBuffer*, RPCOLE
bbe0: 4d 45 53 53 41 47 45 2a 2c 20 52 45 46 49 49 44  MESSAGE*, REFIID
bbf0: 29 3b 0a 76 6f 69 64 20 49 52 70 63 43 68 61 6e  );.void IRpcChan
bc00: 6e 65 6c 42 75 66 66 65 72 5f 47 65 74 42 75 66  nelBuffer_GetBuf
bc10: 66 65 72 5f 53 74 75 62 28 49 52 70 63 53 74 75  fer_Stub(IRpcStu
bc20: 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43 68  bBuffer*, IRpcCh
bc30: 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50 52  annelBuffer*, PR
bc40: 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57 4f  PC_MESSAGE, PDWO
bc50: 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49 52 70  RD);.HRESULT IRp
bc60: 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 5f 53  cChannelBuffer_S
bc70: 65 6e 64 52 65 63 65 69 76 65 5f 50 72 6f 78 79  endReceive_Proxy
bc80: 28 49 52 70 63 43 68 61 6e 6e 65 6c 42 75 66 66  (IRpcChannelBuff
bc90: 65 72 2a 2c 20 52 50 43 4f 4c 45 4d 45 53 53 41  er*, RPCOLEMESSA
bca0: 47 45 2a 2c 20 55 4c 4f 4e 47 2a 29 3b 0a 76 6f  GE*, ULONG*);.vo
bcb0: 69 64 20 49 52 70 63 43 68 61 6e 6e 65 6c 42 75  id IRpcChannelBu
bcc0: 66 66 65 72 5f 53 65 6e 64 52 65 63 65 69 76 65  ffer_SendReceive
bcd0: 5f 53 74 75 62 28 49 52 70 63 53 74 75 62 42 75  _Stub(IRpcStubBu
bce0: 66 66 65 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e  ffer*, IRpcChann
bcf0: 65 6c 42 75 66 66 65 72 2a 2c 20 50 52 50 43 5f  elBuffer*, PRPC_
bd00: 4d 45 53 53 41 47 45 2c 20 50 44 57 4f 52 44 29  MESSAGE, PDWORD)
bd10: 3b 0a 48 52 45 53 55 4c 54 20 49 52 70 63 43 68  ;.HRESULT IRpcCh
bd20: 61 6e 6e 65 6c 42 75 66 66 65 72 5f 46 72 65 65  annelBuffer_Free
bd30: 42 75 66 66 65 72 5f 50 72 6f 78 79 28 49 52 70  Buffer_Proxy(IRp
bd40: 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c  cChannelBuffer*,
bd50: 20 52 50 43 4f 4c 45 4d 45 53 53 41 47 45 2a 29   RPCOLEMESSAGE*)
bd60: 3b 0a 76 6f 69 64 20 49 52 70 63 43 68 61 6e 6e  ;.void IRpcChann
bd70: 65 6c 42 75 66 66 65 72 5f 46 72 65 65 42 75 66  elBuffer_FreeBuf
bd80: 66 65 72 5f 53 74 75 62 28 49 52 70 63 53 74 75  fer_Stub(IRpcStu
bd90: 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43 68  bBuffer*, IRpcCh
bda0: 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50 52  annelBuffer*, PR
bdb0: 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57 4f  PC_MESSAGE, PDWO
bdc0: 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49 52 70  RD);.HRESULT IRp
bdd0: 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 5f 47  cChannelBuffer_G
bde0: 65 74 44 65 73 74 43 74 78 5f 50 72 6f 78 79 28  etDestCtx_Proxy(
bdf0: 49 52 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65  IRpcChannelBuffe
be00: 72 2a 2c 20 44 57 4f 52 44 2a 2c 20 76 6f 69 64  r*, DWORD*, void
be10: 2a 2a 29 3b 0a 76 6f 69 64 20 49 52 70 63 43 68  **);.void IRpcCh
be20: 61 6e 6e 65 6c 42 75 66 66 65 72 5f 47 65 74 44  annelBuffer_GetD
be30: 65 73 74 43 74 78 5f 53 74 75 62 28 49 52 70 63  estCtx_Stub(IRpc
be40: 53 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52 70  StubBuffer*, IRp
be50: 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c  cChannelBuffer*,
be60: 20 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20 50   PRPC_MESSAGE, P
be70: 44 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54 20  DWORD);.HRESULT 
be80: 49 52 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65  IRpcChannelBuffe
be90: 72 5f 49 73 43 6f 6e 6e 65 63 74 65 64 5f 50 72  r_IsConnected_Pr
bea0: 6f 78 79 28 49 52 70 63 43 68 61 6e 6e 65 6c 42  oxy(IRpcChannelB
beb0: 75 66 66 65 72 2a 29 3b 0a 76 6f 69 64 20 49 52  uffer*);.void IR
bec0: 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 5f  pcChannelBuffer_
bed0: 49 73 43 6f 6e 6e 65 63 74 65 64 5f 53 74 75 62  IsConnected_Stub
bee0: 28 49 52 70 63 53 74 75 62 42 75 66 66 65 72 2a  (IRpcStubBuffer*
bef0: 2c 20 49 52 70 63 43 68 61 6e 6e 65 6c 42 75 66  , IRpcChannelBuf
bf00: 66 65 72 2a 2c 20 50 52 50 43 5f 4d 45 53 53 41  fer*, PRPC_MESSA
bf10: 47 45 2c 20 50 44 57 4f 52 44 29 3b 0a 48 52 45  GE, PDWORD);.HRE
bf20: 53 55 4c 54 20 49 52 70 63 50 72 6f 78 79 42 75  SULT IRpcProxyBu
bf30: 66 66 65 72 5f 43 6f 6e 6e 65 63 74 5f 50 72 6f  ffer_Connect_Pro
bf40: 78 79 28 49 52 70 63 50 72 6f 78 79 42 75 66 66  xy(IRpcProxyBuff
bf50: 65 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e 65 6c  er*, IRpcChannel
bf60: 42 75 66 66 65 72 2a 70 52 70 63 43 68 61 6e 6e  Buffer*pRpcChann
bf70: 65 6c 42 75 66 66 65 72 29 3b 0a 76 6f 69 64 20  elBuffer);.void 
bf80: 49 52 70 63 50 72 6f 78 79 42 75 66 66 65 72 5f  IRpcProxyBuffer_
bf90: 43 6f 6e 6e 65 63 74 5f 53 74 75 62 28 49 52 70  Connect_Stub(IRp
bfa0: 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52  cStubBuffer*, IR
bfb0: 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a  pcChannelBuffer*
bfc0: 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20  , PRPC_MESSAGE, 
bfd0: 50 44 57 4f 52 44 29 3b 0a 76 6f 69 64 20 49 52  PDWORD);.void IR
bfe0: 70 63 50 72 6f 78 79 42 75 66 66 65 72 5f 44 69  pcProxyBuffer_Di
bff0: 73 63 6f 6e 6e 65 63 74 5f 50 72 6f 78 79 28 49  sconnect_Proxy(I
c000: 52 70 63 50 72 6f 78 79 42 75 66 66 65 72 2a 29  RpcProxyBuffer*)
c010: 3b 0a 76 6f 69 64 20 49 52 70 63 50 72 6f 78 79  ;.void IRpcProxy
c020: 42 75 66 66 65 72 5f 44 69 73 63 6f 6e 6e 65 63  Buffer_Disconnec
c030: 74 5f 53 74 75 62 28 49 52 70 63 53 74 75 62 42  t_Stub(IRpcStubB
c040: 75 66 66 65 72 2a 2c 20 49 52 70 63 43 68 61 6e  uffer*, IRpcChan
c050: 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50 52 50 43  nelBuffer*, PRPC
c060: 5f 4d 45 53 53 41 47 45 2c 20 50 44 57 4f 52 44  _MESSAGE, PDWORD
c070: 29 3b 0a 48 52 45 53 55 4c 54 20 49 52 70 63 53  );.HRESULT IRpcS
c080: 74 75 62 42 75 66 66 65 72 5f 43 6f 6e 6e 65 63  tubBuffer_Connec
c090: 74 5f 50 72 6f 78 79 28 49 52 70 63 53 74 75 62  t_Proxy(IRpcStub
c0a0: 42 75 66 66 65 72 2a 2c 20 49 55 6e 6b 6e 6f 77  Buffer*, IUnknow
c0b0: 6e 2a 29 3b 0a 76 6f 69 64 20 49 52 70 63 53 74  n*);.void IRpcSt
c0c0: 75 62 42 75 66 66 65 72 5f 43 6f 6e 6e 65 63 74  ubBuffer_Connect
c0d0: 5f 53 74 75 62 28 49 52 70 63 53 74 75 62 42 75  _Stub(IRpcStubBu
c0e0: 66 66 65 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e  ffer*, IRpcChann
c0f0: 65 6c 42 75 66 66 65 72 2a 2c 20 50 52 50 43 5f  elBuffer*, PRPC_
c100: 4d 45 53 53 41 47 45 2c 20 50 44 57 4f 52 44 29  MESSAGE, PDWORD)
c110: 3b 0a 76 6f 69 64 20 49 52 70 63 53 74 75 62 42  ;.void IRpcStubB
c120: 75 66 66 65 72 5f 44 69 73 63 6f 6e 6e 65 63 74  uffer_Disconnect
c130: 5f 50 72 6f 78 79 28 49 52 70 63 53 74 75 62 42  _Proxy(IRpcStubB
c140: 75 66 66 65 72 2a 29 3b 0a 76 6f 69 64 20 49 52  uffer*);.void IR
c150: 70 63 53 74 75 62 42 75 66 66 65 72 5f 44 69 73  pcStubBuffer_Dis
c160: 63 6f 6e 6e 65 63 74 5f 53 74 75 62 28 49 52 70  connect_Stub(IRp
c170: 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52  cStubBuffer*, IR
c180: 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a  pcChannelBuffer*
c190: 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20  , PRPC_MESSAGE, 
c1a0: 50 44 57 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54  PDWORD);.HRESULT
c1b0: 20 49 52 70 63 53 74 75 62 42 75 66 66 65 72 5f   IRpcStubBuffer_
c1c0: 49 6e 76 6f 6b 65 5f 50 72 6f 78 79 28 49 52 70  Invoke_Proxy(IRp
c1d0: 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20 52 50  cStubBuffer*, RP
c1e0: 43 4f 4c 45 4d 45 53 53 41 47 45 2a 2c 20 49 52  COLEMESSAGE*, IR
c1f0: 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a  pcChannelBuffer*
c200: 29 3b 0a 76 6f 69 64 20 49 52 70 63 53 74 75 62  );.void IRpcStub
c210: 42 75 66 66 65 72 5f 49 6e 76 6f 6b 65 5f 53 74  Buffer_Invoke_St
c220: 75 62 28 49 52 70 63 53 74 75 62 42 75 66 66 65  ub(IRpcStubBuffe
c230: 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e 65 6c 42  r*, IRpcChannelB
c240: 75 66 66 65 72 2a 2c 20 50 52 50 43 5f 4d 45 53  uffer*, PRPC_MES
c250: 53 41 47 45 2c 20 50 44 57 4f 52 44 29 3b 0a 49  SAGE, PDWORD);.I
c260: 52 70 63 53 74 75 62 42 75 66 66 65 72 2a 49 52  RpcStubBuffer*IR
c270: 70 63 53 74 75 62 42 75 66 66 65 72 5f 49 73 49  pcStubBuffer_IsI
c280: 49 44 53 75 70 70 6f 72 74 65 64 5f 50 72 6f 78  IDSupported_Prox
c290: 79 28 49 52 70 63 53 74 75 62 42 75 66 66 65 72  y(IRpcStubBuffer
c2a0: 2a 2c 20 52 45 46 49 49 44 29 3b 0a 76 6f 69 64  *, REFIID);.void
c2b0: 20 49 52 70 63 53 74 75 62 42 75 66 66 65 72 5f   IRpcStubBuffer_
c2c0: 49 73 49 49 44 53 75 70 70 6f 72 74 65 64 5f 53  IsIIDSupported_S
c2d0: 74 75 62 28 49 52 70 63 53 74 75 62 42 75 66 66  tub(IRpcStubBuff
c2e0: 65 72 2a 2c 20 49 52 70 63 43 68 61 6e 6e 65 6c  er*, IRpcChannel
c2f0: 42 75 66 66 65 72 2a 2c 20 50 52 50 43 5f 4d 45  Buffer*, PRPC_ME
c300: 53 53 41 47 45 2c 20 50 44 57 4f 52 44 29 3b 0a  SSAGE, PDWORD);.
c310: 55 4c 4f 4e 47 20 49 52 70 63 53 74 75 62 42 75  ULONG IRpcStubBu
c320: 66 66 65 72 5f 43 6f 75 6e 74 52 65 66 73 5f 50  ffer_CountRefs_P
c330: 72 6f 78 79 28 49 52 70 63 53 74 75 62 42 75 66  roxy(IRpcStubBuf
c340: 66 65 72 2a 29 3b 0a 76 6f 69 64 20 49 52 70 63  fer*);.void IRpc
c350: 53 74 75 62 42 75 66 66 65 72 5f 43 6f 75 6e 74  StubBuffer_Count
c360: 52 65 66 73 5f 53 74 75 62 28 49 52 70 63 53 74  Refs_Stub(IRpcSt
c370: 75 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43  ubBuffer*, IRpcC
c380: 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50  hannelBuffer*, P
c390: 52 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57  RPC_MESSAGE, PDW
c3a0: 4f 52 44 29 3b 0a 48 52 45 53 55 4c 54 20 49 52  ORD);.HRESULT IR
c3b0: 70 63 53 74 75 62 42 75 66 66 65 72 5f 44 65 62  pcStubBuffer_Deb
c3c0: 75 67 53 65 72 76 65 72 51 75 65 72 79 49 6e 74  ugServerQueryInt
c3d0: 65 72 66 61 63 65 5f 50 72 6f 78 79 28 49 52 70  erface_Proxy(IRp
c3e0: 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20 76 6f  cStubBuffer*, vo
c3f0: 69 64 2a 2a 29 3b 0a 76 6f 69 64 20 49 52 70 63  id**);.void IRpc
c400: 53 74 75 62 42 75 66 66 65 72 5f 44 65 62 75 67  StubBuffer_Debug
c410: 53 65 72 76 65 72 51 75 65 72 79 49 6e 74 65 72  ServerQueryInter
c420: 66 61 63 65 5f 53 74 75 62 28 49 52 70 63 53 74  face_Stub(IRpcSt
c430: 75 62 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43  ubBuffer*, IRpcC
c440: 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50  hannelBuffer*, P
c450: 52 50 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57  RPC_MESSAGE, PDW
c460: 4f 52 44 29 3b 0a 76 6f 69 64 20 49 52 70 63 53  ORD);.void IRpcS
c470: 74 75 62 42 75 66 66 65 72 5f 44 65 62 75 67 53  tubBuffer_DebugS
c480: 65 72 76 65 72 52 65 6c 65 61 73 65 5f 50 72 6f  erverRelease_Pro
c490: 78 79 28 49 52 70 63 53 74 75 62 42 75 66 66 65  xy(IRpcStubBuffe
c4a0: 72 2a 2c 20 76 6f 69 64 2a 29 3b 0a 76 6f 69 64  r*, void*);.void
c4b0: 20 49 52 70 63 53 74 75 62 42 75 66 66 65 72 5f   IRpcStubBuffer_
c4c0: 44 65 62 75 67 53 65 72 76 65 72 52 65 6c 65 61  DebugServerRelea
c4d0: 73 65 5f 53 74 75 62 28 49 52 70 63 53 74 75 62  se_Stub(IRpcStub
c4e0: 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43 68 61  Buffer*, IRpcCha
c4f0: 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50 52 50  nnelBuffer*, PRP
c500: 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57 4f 52  C_MESSAGE, PDWOR
c510: 44 29 3b 0a 48 52 45 53 55 4c 54 20 49 50 53 46  D);.HRESULT IPSF
c520: 61 63 74 6f 72 79 42 75 66 66 65 72 5f 43 72 65  actoryBuffer_Cre
c530: 61 74 65 50 72 6f 78 79 5f 50 72 6f 78 79 28 49  ateProxy_Proxy(I
c540: 50 53 46 61 63 74 6f 72 79 42 75 66 66 65 72 2a  PSFactoryBuffer*
c550: 2c 20 49 55 6e 6b 6e 6f 77 6e 2a 2c 20 52 45 46  , IUnknown*, REF
c560: 49 49 44 2c 20 49 52 70 63 50 72 6f 78 79 42 75  IID, IRpcProxyBu
c570: 66 66 65 72 2a 2a 2c 20 76 6f 69 64 2a 2a 29 3b  ffer**, void**);
c580: 0a 76 6f 69 64 20 49 50 53 46 61 63 74 6f 72 79  .void IPSFactory
c590: 42 75 66 66 65 72 5f 43 72 65 61 74 65 50 72 6f  Buffer_CreatePro
c5a0: 78 79 5f 53 74 75 62 28 49 52 70 63 53 74 75 62  xy_Stub(IRpcStub
c5b0: 42 75 66 66 65 72 2a 2c 20 49 52 70 63 43 68 61  Buffer*, IRpcCha
c5c0: 6e 6e 65 6c 42 75 66 66 65 72 2a 2c 20 50 52 50  nnelBuffer*, PRP
c5d0: 43 5f 4d 45 53 53 41 47 45 2c 20 50 44 57 4f 52  C_MESSAGE, PDWOR
c5e0: 44 29 3b 0a 48 52 45 53 55 4c 54 20 49 50 53 46  D);.HRESULT IPSF
c5f0: 61 63 74 6f 72 79 42 75 66 66 65 72 5f 43 72 65  actoryBuffer_Cre
c600: 61 74 65 53 74 75 62 5f 50 72 6f 78 79 28 49 50  ateStub_Proxy(IP
c610: 53 46 61 63 74 6f 72 79 42 75 66 66 65 72 2a 2c  SFactoryBuffer*,
c620: 20 52 45 46 49 49 44 2c 20 49 55 6e 6b 6e 6f 77   REFIID, IUnknow
c630: 6e 2a 2c 20 49 52 70 63 53 74 75 62 42 75 66 66  n*, IRpcStubBuff
c640: 65 72 2a 2a 29 3b 0a 76 6f 69 64 20 49 50 53 46  er**);.void IPSF
c650: 61 63 74 6f 72 79 42 75 66 66 65 72 5f 43 72 65  actoryBuffer_Cre
c660: 61 74 65 53 74 75 62 5f 53 74 75 62 28 49 52 70  ateStub_Stub(IRp
c670: 63 53 74 75 62 42 75 66 66 65 72 2a 2c 20 49 52  cStubBuffer*, IR
c680: 70 63 43 68 61 6e 6e 65 6c 42 75 66 66 65 72 2a  pcChannelBuffer*
c690: 2c 20 50 52 50 43 5f 4d 45 53 53 41 47 45 2c 20  , PRPC_MESSAGE, 
c6a0: 50 44 57 4f 52 44 29 3b 0a 76 6f 69 64 20 53 4e  PDWORD);.void SN
c6b0: 42 5f 74 6f 5f 78 6d 69 74 28 53 4e 42 2a 2c 20  B_to_xmit(SNB*, 
c6c0: 52 65 6d 53 4e 42 2a 2a 29 3b 0a 76 6f 69 64 20  RemSNB**);.void 
c6d0: 53 4e 42 5f 66 72 6f 6d 5f 78 6d 69 74 28 52 65  SNB_from_xmit(Re
c6e0: 6d 53 4e 42 2a 2c 20 53 4e 42 2a 29 3b 0a 76 6f  mSNB*, SNB*);.vo
c6f0: 69 64 20 53 4e 42 5f 66 72 65 65 5f 69 6e 73 74  id SNB_free_inst
c700: 28 53 4e 42 2a 29 3b 0a 76 6f 69 64 20 53 4e 42  (SNB*);.void SNB
c710: 5f 66 72 65 65 5f 78 6d 69 74 28 52 65 6d 53 4e  _free_xmit(RemSN
c720: 42 2a 29 3b 0a 48 52 45 53 55 4c 54 20 49 45 6e  B*);.HRESULT IEn
c730: 75 6d 55 6e 6b 6e 6f 77 6e 5f 4e 65 78 74 5f 50  umUnknown_Next_P
c740: 72 6f 78 79 28 49 45 6e 75 6d 55 6e 6b 6e 6f 77  roxy(IEnumUnknow
c750: 6e 2a 2c 20 55 4c 4f 4e 47 2c 20 49 55 6e 6b 6e  n*, ULONG, IUnkn
c760: 6f 77 6e 2a 2a 2c 20 55 4c 4f 4e 47 2a 29 3b 0a  own**, ULONG*);.
c770: 48 52 45 53 55 4c 54 20 49 45 6e 75 6d 55 6e 6b  HRESULT IEnumUnk
c780: 6e 6f 77 6e 5f 4e 65 78 74 5f 53 74 75 62 28 49  nown_Next_Stub(I
c790: 45 6e 75 6d 55 6e 6b 6e 6f 77 6e 2a 2c 20 55 4c  EnumUnknown*, UL
c7a0: 4f 4e 47 2c 20 49 55 6e 6b 6e 6f 77 6e 2a 2a 2c  ONG, IUnknown**,
c7b0: 20 55 4c 4f 4e 47 2a 29 3b 0a 48 52 45 53 55 4c   ULONG*);.HRESUL
c7c0: 54 20 49 45 6e 75 6d 4d 6f 6e 69 6b 65 72 5f 4e  T IEnumMoniker_N
c7d0: 65 78 74 5f 50 72 6f 78 79 28 49 45 6e 75 6d 4d  ext_Proxy(IEnumM
c7e0: 6f 6e 69 6b 65 72 2a 2c 20 55 4c 4f 4e 47 2c 20  oniker*, ULONG, 
c7f0: 49 4d 6f 6e 69 6b 65 72 2a 2a 2c 20 55 4c 4f 4e  IMoniker**, ULON
c800: 47 2a 29 3b 0a 48 52 45 53 55 4c 54 20 49 45 6e  G*);.HRESULT IEn
c810: 75 6d 4d 6f 6e 69 6b 65 72 5f 4e 65 78 74 5f 53  umMoniker_Next_S
c820: 74 75 62 28 49 45 6e 75 6d 4d 6f 6e 69 6b 65 72  tub(IEnumMoniker
c830: 2a 2c 20 55 4c 4f 4e 47 2c 20 49 4d 6f 6e 69 6b  *, ULONG, IMonik
c840: 65 72 2a 2a 2c 20 55 4c 4f 4e 47 2a 29 3b 0a 48  er**, ULONG*);.H
c850: 52 45 53 55 4c 54 20 49 4d 6f 6e 69 6b 65 72 5f  RESULT IMoniker_
c860: 42 69 6e 64 54 6f 4f 62 6a 65 63 74 5f 50 72 6f  BindToObject_Pro
c870: 78 79 28 49 4d 6f 6e 69 6b 65 72 2a 2c 20 49 42  xy(IMoniker*, IB
c880: 69 6e 64 43 74 78 2a 2c 20 49 4d 6f 6e 69 6b 65  indCtx*, IMonike
c890: 72 2a 2c 20 52 45 46 49 49 44 2c 20 76 6f 69 64  r*, REFIID, void
c8a0: 2a 2a 29 3b 0a 48 52 45 53 55 4c 54 20 49 4d 6f  **);.HRESULT IMo
c8b0: 6e 69 6b 65 72 5f 42 69 6e 64 54 6f 4f 62 6a 65  niker_BindToObje
c8c0: 63 74 5f 53 74 75 62 28 49 4d 6f 6e 69 6b 65 72  ct_Stub(IMoniker
c8d0: 2a 2c 20 49 42 69 6e 64 43 74 78 2a 2c 20 49 4d  *, IBindCtx*, IM
c8e0: 6f 6e 69 6b 65 72 2a 2c 20 52 45 46 49 49 44 2c  oniker*, REFIID,
c8f0: 20 49 55 6e 6b 6e 6f 77 6e 2a 2a 29 3b 0a 48 52   IUnknown**);.HR
c900: 45 53 55 4c 54 20 49 4d 6f 6e 69 6b 65 72 5f 42  ESULT IMoniker_B
c910: 69 6e 64 54 6f 53 74 6f 72 61 67 65 5f 50 72 6f  indToStorage_Pro
c920: 78 79 28 49 4d 6f 6e 69 6b 65 72 2a 2c 20 49 42  xy(IMoniker*, IB
c930: 69 6e 64 43 74 78 2a 2c 20 49 4d 6f 6e 69 6b 65  indCtx*, IMonike
c940: 72 2a 2c 20 52 45 46 49 49 44 2c 20 76 6f 69 64  r*, REFIID, void
c950: 2a 2a 29 3b 0a 48 52 45 53 55 4c 54 20 49 4d 6f  **);.HRESULT IMo
c960: 6e 69 6b 65 72 5f 42 69 6e 64 54 6f 53 74 6f 72  niker_BindToStor
c970: 61 67 65 5f 53 74 75 62 28 49 4d 6f 6e 69 6b 65  age_Stub(IMonike
c980: 72 2a 2c 20 49 42 69 6e 64 43 74 78 2a 2c 20 49  r*, IBindCtx*, I
c990: 4d 6f 6e 69 6b 65 72 2a 2c 20 52 45 46 49 49 44  Moniker*, REFIID
c9a0: 2c 20 49 55 6e 6b 6e 6f 77 6e 2a 2a 29 3b 0a 48  , IUnknown**);.H
c9b0: 52 45 53 55 4c 54 20 49 45 6e 75 6d 53 74 72 69  RESULT IEnumStri
c9c0: 6e 67 5f 4e 65 78 74 5f 50 72 6f 78 79 28 49 45  ng_Next_Proxy(IE
c9d0: 6e 75 6d 53 74 72 69 6e 67 2a 2c 20 55 4c 4f 4e  numString*, ULON
c9e0: 47 2c 20 4c 50 43 53 54 52 2a 2c 20 55 4c 4f 4e  G, LPCSTR*, ULON
c9f0: 47 2a 29 3b 0a 48 52 45 53 55 4c 54 20 49 45 6e  G*);.HRESULT IEn
ca00: 75 6d 53 74 72 69 6e 67 5f 4e 65 78 74 5f 53 74  umString_Next_St
ca10: 75 62 28 49 45 6e 75 6d 53 74 72 69 6e 67 2a 2c  ub(IEnumString*,
ca20: 20 55 4c 4f 4e 47 2c 20 4c 50 43 53 54 52 2a 2c   ULONG, LPCSTR*,
ca30: 20 55 4c 4f 4e 47 2a 29 3b 0a 48 52 45 53 55 4c   ULONG*);.HRESUL
ca40: 54 20 49 53 74 72 65 61 6d 5f 52 65 61 64 5f 50  T IStream_Read_P
ca50: 72 6f 78 79 28 49 53 74 72 65 61 6d 2a 2c 20 76  roxy(IStream*, v
ca60: 6f 69 64 2a 2c 20 55 4c 4f 4e 47 2c 20 55 4c 4f  oid*, ULONG, ULO
ca70: 4e 47 2a 29 3b 0a 48 52 45 53 55 4c 54 20 49 53  NG*);.HRESULT IS
ca80: 74 72 65 61 6d 5f 52 65 61 64 5f 53 74 75 62 28  tream_Read_Stub(
ca90: 49 53 74 72 65 61 6d 2a 2c 20 42 59 54 45 2a 2c  IStream*, BYTE*,
caa0: 20 55 4c 4f 4e 47 2c 20 55 4c 4f 4e 47 2a 29 3b   ULONG, ULONG*);
cab0: 0a 48 52 45 53 55 4c 54 20 49 53 74 72 65 61 6d  .HRESULT IStream
cac0: 5f 57 72 69 74 65 5f 50 72 6f 78 79 28 49 53 74  _Write_Proxy(ISt
cad0: 72 65 61 6d 2a 2c 20 76 6f 69 64 2a 2c 20 55 4c  ream*, void*, UL
cae0: 4f 4e 47 2c 20 55 4c 4f 4e 47 2a 29 3b 0a 48 52  ONG, ULONG*);.HR
caf0: 45 53 55 4c 54 20 49 53 74 72 65 61 6d 5f 57 72  ESULT IStream_Wr
cb00: 69 74 65 5f 53 74 75 62 28 49 53 74 72 65 61 6d  ite_Stub(IStream
cb10: 2a 2c 20 42 59 54 45 2a 2c 20 55 4c 4f 4e 47 2c  *, BYTE*, ULONG,
cb20: 20 55 4c 4f 4e 47 2a 29 3b 0a 48 52 45 53 55 4c   ULONG*);.HRESUL
cb30: 54 20 49 53 74 72 65 61 6d 5f 53 65 65 6b 5f 50  T IStream_Seek_P
cb40: 72 6f 78 79 28 49 53 74 72 65 61 6d 2a 2c 20 4c  roxy(IStream*, L
cb50: 41 52 47 45 5f 49 4e 54 45 47 45 52 2c 20 44 57  ARGE_INTEGER, DW
cb60: 4f 52 44 2c 20 55 4c 41 52 47 45 5f 49 4e 54 45  ORD, ULARGE_INTE
cb70: 47 45 52 2a 29 3b 0a 48 52 45 53 55 4c 54 20 49  GER*);.HRESULT I
cb80: 53 74 72 65 61 6d 5f 53 65 65 6b 5f 53 74 75 62  Stream_Seek_Stub
cb90: 28 49 53 74 72 65 61 6d 2a 2c 20 4c 41 52 47 45  (IStream*, LARGE
cba0: 5f 49 4e 54 45 47 45 52 2c 20 44 57 4f 52 44 2c  _INTEGER, DWORD,
cbb0: 20 55 4c 41 52 47 45 5f 49 4e 54 45 47 45 52 2a   ULARGE_INTEGER*
cbc0: 29 3b 0a 48 52 45 53 55 4c 54 20 49 53 74 72 65  );.HRESULT IStre
cbd0: 61 6d 5f 43 6f 70 79 54 6f 5f 50 72 6f 78 79 28  am_CopyTo_Proxy(
cbe0: 49 53 74 72 65 61 6d 2a 2c 20 49 53 74 72 65 61  IStream*, IStrea
cbf0: 6d 2a 2c 20 55 4c 41 52 47 45 5f 49 4e 54 45 47  m*, ULARGE_INTEG
cc00: 45 52 2c 20 55 4c 41 52 47 45 5f 49 4e 54 45 47  ER, ULARGE_INTEG
cc10: 45 52 2a 2c 20 55 4c 41 52 47 45 5f 49 4e 54 45  ER*, ULARGE_INTE
cc20: 47 45 52 2a 29 3b 0a 48 52 45 53 55 4c 54 20 49  GER*);.HRESULT I
cc30: 53 74 72 65 61 6d 5f 43 6f 70 79 54 6f 5f 53 74  Stream_CopyTo_St
cc40: 75 62 28 49 53 74 72 65 61 6d 2a 2c 20 49 53 74  ub(IStream*, ISt
cc50: 72 65 61 6d 2a 2c 20 55 4c 41 52 47 45 5f 49 4e  ream*, ULARGE_IN
cc60: 54 45 47 45 52 2c 20 55 4c 41 52 47 45 5f 49 4e  TEGER, ULARGE_IN
cc70: 54 45 47 45 52 2a 2c 20 55 4c 41 52 47 45 5f 49  TEGER*, ULARGE_I
cc80: 4e 54 45 47 45 52 2a 29 3b 0a 48 52 45 53 55 4c  NTEGER*);.HRESUL
cc90: 54 20 49 45 6e 75 6d 53 54 41 54 53 54 47 5f 4e  T IEnumSTATSTG_N
cca0: 65 78 74 5f 50 72 6f 78 79 28 49 45 6e 75 6d 53  ext_Proxy(IEnumS
ccb0: 54 41 54 53 54 47 2a 2c 20 55 4c 4f 4e 47 2c 20  TATSTG*, ULONG, 
ccc0: 53 54 41 54 53 54 47 2a 2c 20 55 4c 4f 4e 47 2a  STATSTG*, ULONG*
ccd0: 29 3b 0a 48 52 45 53 55 4c 54 20 49 45 6e 75 6d  );.HRESULT IEnum
cce0: 53 54 41 54 53 54 47 5f 4e 65 78 74 5f 53 74 75  STATSTG_Next_Stu
ccf0: 62 28 49 45 6e 75 6d 53 54 41 54 53 54 47 2a 2c  b(IEnumSTATSTG*,
cd00: 20 55 4c 4f 4e 47 2c 20 53 54 41 54 53 54 47 2a   ULONG, STATSTG*
cd10: 2c 20 55 4c 4f 4e 47 2a 29 3b 0a 48 52 45 53 55  , ULONG*);.HRESU
cd20: 4c 54 20 49 53 74 6f 72 61 67 65 5f 4f 70 65 6e  LT IStorage_Open
cd30: 53 74 72 65 61 6d 5f 50 72 6f 78 79 28 49 53 74  Stream_Proxy(ISt
cd40: 6f 72 61 67 65 2a 2c 20 4f 4c 45 43 48 41 52 2a  orage*, OLECHAR*
cd50: 2c 20 76 6f 69 64 2a 2c 20 44 57 4f 52 44 2c 20  , void*, DWORD, 
cd60: 44 57 4f 52 44 2c 20 49 53 74 72 65 61 6d 2a 2a  DWORD, IStream**
cd70: 29 3b 0a 48 52 45 53 55 4c 54 20 49 53 74 6f 72  );.HRESULT IStor
cd80: 61 67 65 5f 4f 70 65 6e 53 74 72 65 61 6d 5f 53  age_OpenStream_S
cd90: 74 75 62 28 49 53 74 6f 72 61 67 65 2a 2c 20 4f  tub(IStorage*, O
cda0: 4c 45 43 48 41 52 2a 2c 20 75 69 6e 74 2c 20 42  LECHAR*, uint, B
cdb0: 59 54 45 2a 2c 20 44 57 4f 52 44 2c 20 44 57 4f  YTE*, DWORD, DWO
cdc0: 52 44 2c 20 49 53 74 72 65 61 6d 2a 2a 20 29 3b  RD, IStream** );
cdd0: 0a 48 52 45 53 55 4c 54 20 49 53 74 6f 72 61 67  .HRESULT IStorag
cde0: 65 5f 45 6e 75 6d 45 6c 65 6d 65 6e 74 73 5f 50  e_EnumElements_P
cdf0: 72 6f 78 79 28 49 53 74 6f 72 61 67 65 2a 2c 20  roxy(IStorage*, 
ce00: 44 57 4f 52 44 2c 20 76 6f 69 64 2a 2c 20 44 57  DWORD, void*, DW
ce10: 4f 52 44 2c 20 49 45 6e 75 6d 53 54 41 54 53 54  ORD, IEnumSTATST
ce20: 47 2a 2a 29 3b 0a 48 52 45 53 55 4c 54 20 49 53  G**);.HRESULT IS
ce30: 74 6f 72 61 67 65 5f 45 6e 75 6d 45 6c 65 6d 65  torage_EnumEleme
ce40: 6e 74 73 5f 53 74 75 62 28 49 53 74 6f 72 61 67  nts_Stub(IStorag
ce50: 65 2a 2c 20 44 57 4f 52 44 2c 20 75 69 6e 74 2c  e*, DWORD, uint,
ce60: 20 42 59 54 45 2a 2c 20 44 57 4f 52 44 2c 20 49   BYTE*, DWORD, I
ce70: 45 6e 75 6d 53 54 41 54 53 54 47 2a 2a 29 3b 0a  EnumSTATSTG**);.
ce80: 48 52 45 53 55 4c 54 20 49 4c 6f 63 6b 42 79 74  HRESULT ILockByt
ce90: 65 73 5f 52 65 61 64 41 74 5f 50 72 6f 78 79 28  es_ReadAt_Proxy(
cea0: 49 4c 6f 63 6b 42 79 74 65 73 2a 2c 20 55 4c 41  ILockBytes*, ULA
ceb0: 52 47 45 5f 49 4e 54 45 47 45 52 2c 20 76 6f 69  RGE_INTEGER, voi
cec0: 64 2a 2c 20 55 4c 4f 4e 47 2c 20 55 4c 4f 4e 47  d*, ULONG, ULONG
ced0: 2a 29 3b 0a 48 52 45 53 55 4c 54 20 49 4c 6f 63  *);.HRESULT ILoc
cee0: 6b 42 79 74 65 73 5f 52 65 61 64 41 74 5f 53 74  kBytes_ReadAt_St
cef0: 75 62 28 49 4c 6f 63 6b 42 79 74 65 73 2a 2c 20  ub(ILockBytes*, 
cf00: 55 4c 41 52 47 45 5f 49 4e 54 45 47 45 52 2c 20  ULARGE_INTEGER, 
cf10: 42 59 54 45 2a 2c 20 55 4c 4f 4e 47 2c 20 55 4c  BYTE*, ULONG, UL
cf20: 4f 4e 47 2a 29 3b 0a 48 52 45 53 55 4c 54 20 49  ONG*);.HRESULT I
cf30: 4c 6f 63 6b 42 79 74 65 73 5f 57 72 69 74 65 41  LockBytes_WriteA
cf40: 74 5f 50 72 6f 78 79 28 49 4c 6f 63 6b 42 79 74  t_Proxy(ILockByt
cf50: 65 73 2a 2c 20 55 4c 41 52 47 45 5f 49 4e 54 45  es*, ULARGE_INTE
cf60: 47 45 52 2c 20 43 50 74 72 21 28 76 6f 69 64 29  GER, CPtr!(void)
cf70: 2c 20 55 4c 4f 4e 47 2c 20 55 4c 4f 4e 47 2a 29  , ULONG, ULONG*)
cf80: 3b 0a 48 52 45 53 55 4c 54 20 49 4c 6f 63 6b 42  ;.HRESULT ILockB
cf90: 79 74 65 73 5f 57 72 69 74 65 41 74 5f 53 74 75  ytes_WriteAt_Stu
cfa0: 62 28 49 4c 6f 63 6b 42 79 74 65 73 2a 2c 20 55  b(ILockBytes*, U
cfb0: 4c 41 52 47 45 5f 49 4e 54 45 47 45 52 2c 20 42  LARGE_INTEGER, B
cfc0: 59 54 45 2a 2c 20 55 4c 4f 4e 47 2c 20 55 4c 4f  YTE*, ULONG, ULO
cfd0: 4e 47 2a 29 3b 0a 7d 0a 2b 2f 0a                 NG*);.}.+/.