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 20 6f 6c 65 2e ole.
0070: 64 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 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 62 79 20 53 74 65 77 61 by Stewa
01e0: 72 74 20 47 6f 72 64 6f 6e 20 20 20 20 20 20 20 rt Gordon
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 20 20
0220: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0230: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0240: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2a 0a *.
0250: 2a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 *
0260: 20 20 20 20 20 20 20 20 50 6c 61 63 65 64 20 69 Placed i
0270: 6e 74 6f 20 70 75 62 6c 69 63 20 64 6f 6d 61 69 nto public domai
0280: 6e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 n
0290: 20 20 20 20 20 20 20 20 2a 0a 5c 2a 2a 2a 2a 2a *.\*****
02a0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
02b0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
02c0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
02d0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
02e0: 2a 2a 2f 0a 6d 6f 64 75 6c 65 20 77 69 6e 33 32 **/.module win32
02f0: 2e 6f 6c 65 3b 0a 0a 70 72 69 76 61 74 65 20 69 .ole;..private i
0300: 6d 70 6f 72 74 20 77 69 6e 33 32 2e 77 69 6e 64 mport win32.wind
0310: 65 66 2c 20 77 69 6e 33 32 2e 77 69 6e 67 64 69 ef, win32.wingdi
0320: 2c 20 77 69 6e 33 32 2e 75 75 69 64 3b 0a 0a 61 , win32.uuid;..a
0330: 6c 69 61 73 20 4c 50 43 53 54 52 20 4f 4c 45 5f lias LPCSTR OLE_
0340: 4c 50 43 53 54 52 3b 0a 0a 2f 2b 23 64 65 66 69 LPCSTR;../+#defi
0350: 6e 65 20 4c 52 45 53 55 4c 54 20 4c 4f 4e 47 0a ne LRESULT LONG.
0360: 23 64 65 66 69 6e 65 20 48 47 4c 4f 42 41 4c 20 #define HGLOBAL
0370: 48 41 4e 44 4c 45 2b 2f 0a 0a 65 6e 75 6d 20 7b HANDLE+/..enum {
0380: 0a 09 4f 54 5f 4c 49 4e 4b 20 3d 20 31 2c 0a 09 ..OT_LINK = 1,..
0390: 4f 54 5f 45 4d 42 45 44 44 45 44 2c 0a 09 4f 54 OT_EMBEDDED,..OT
03a0: 5f 53 54 41 54 49 43 0a 7d 0a 0a 63 6f 6e 73 74 _STATIC.}..const
03b0: 20 4f 4c 45 56 45 52 42 5f 50 52 49 4d 41 52 59 OLEVERB_PRIMARY
03c0: 20 3d 20 30 3b 0a 63 6f 6e 73 74 20 4f 46 5f 53 = 0;.const OF_S
03d0: 45 54 20 20 20 20 20 20 20 20 20 20 3d 20 31 3b ET = 1;
03e0: 0a 63 6f 6e 73 74 20 4f 46 5f 47 45 54 20 20 20 .const OF_GET
03f0: 20 20 20 20 20 20 20 3d 20 32 3b 0a 63 6f 6e 73 = 2;.cons
0400: 74 20 4f 46 5f 48 41 4e 44 4c 45 52 20 20 20 20 t OF_HANDLER
0410: 20 20 3d 20 34 3b 0a 0a 73 74 72 75 63 74 20 4f = 4;..struct O
0420: 4c 45 54 41 52 47 45 54 44 45 56 49 43 45 20 7b LETARGETDEVICE {
0430: 0a 09 55 53 48 4f 52 54 20 6f 74 64 44 65 76 69 ..USHORT otdDevi
0440: 63 65 4e 61 6d 65 4f 66 66 73 65 74 3b 0a 09 55 ceNameOffset;..U
0450: 53 48 4f 52 54 20 6f 74 64 44 72 69 76 65 72 4e SHORT otdDriverN
0460: 61 6d 65 4f 66 66 73 65 74 3b 0a 09 55 53 48 4f ameOffset;..USHO
0470: 52 54 20 6f 74 64 50 6f 72 74 4e 61 6d 65 4f 66 RT otdPortNameOf
0480: 66 73 65 74 3b 0a 09 55 53 48 4f 52 54 20 6f 74 fset;..USHORT ot
0490: 64 45 78 74 44 65 76 6d 6f 64 65 4f 66 66 73 65 dExtDevmodeOffse
04a0: 74 3b 0a 09 55 53 48 4f 52 54 20 6f 74 64 45 78 t;..USHORT otdEx
04b0: 74 44 65 76 6d 6f 64 65 53 69 7a 65 3b 0a 09 55 tDevmodeSize;..U
04c0: 53 48 4f 52 54 20 6f 74 64 45 6e 76 69 72 6f 6e SHORT otdEnviron
04d0: 6d 65 6e 74 4f 66 66 73 65 74 3b 0a 09 55 53 48 mentOffset;..USH
04e0: 4f 52 54 20 6f 74 64 45 6e 76 69 72 6f 6e 6d 65 ORT otdEnvironme
04f0: 6e 74 53 69 7a 65 3b 0a 09 42 59 54 45 20 20 20 ntSize;..BYTE
0500: 5f 6f 74 64 44 61 74 61 3b 0a 09 42 59 54 45 2a _otdData;..BYTE*
0510: 20 20 6f 74 64 44 61 74 61 28 29 20 7b 20 72 65 otdData() { re
0520: 74 75 72 6e 20 26 5f 6f 74 64 44 61 74 61 3b 20 turn &_otdData;
0530: 7d 0a 7d 0a 61 6c 69 61 73 20 4f 4c 45 54 41 52 }.}.alias OLETAR
0540: 47 45 54 44 45 56 49 43 45 2a 20 4c 50 4f 4c 45 GETDEVICE* LPOLE
0550: 54 41 52 47 45 54 44 45 56 49 43 45 3b 0a 0a 65 TARGETDEVICE;..e
0560: 6e 75 6d 20 4f 4c 45 53 54 41 54 55 53 20 7b 0a num OLESTATUS {.
0570: 09 4f 4c 45 5f 4f 4b 2c 0a 09 4f 4c 45 5f 57 41 .OLE_OK,..OLE_WA
0580: 49 54 5f 46 4f 52 5f 52 45 4c 45 41 53 45 2c 0a IT_FOR_RELEASE,.
0590: 09 4f 4c 45 5f 42 55 53 59 2c 0a 09 4f 4c 45 5f .OLE_BUSY,..OLE_
05a0: 45 52 52 4f 52 5f 50 52 4f 54 45 43 54 5f 4f 4e ERROR_PROTECT_ON
05b0: 4c 59 2c 0a 09 4f 4c 45 5f 45 52 52 4f 52 5f 4d LY,..OLE_ERROR_M
05c0: 45 4d 4f 52 59 2c 0a 09 4f 4c 45 5f 45 52 52 4f EMORY,..OLE_ERRO
05d0: 52 5f 53 54 52 45 41 4d 2c 0a 09 4f 4c 45 5f 45 R_STREAM,..OLE_E
05e0: 52 52 4f 52 5f 53 54 41 54 49 43 2c 0a 09 4f 4c RROR_STATIC,..OL
05f0: 45 5f 45 52 52 4f 52 5f 42 4c 41 4e 4b 2c 0a 09 E_ERROR_BLANK,..
0600: 4f 4c 45 5f 45 52 52 4f 52 5f 44 52 41 57 2c 0a OLE_ERROR_DRAW,.
0610: 09 4f 4c 45 5f 45 52 52 4f 52 5f 4d 45 54 41 46 .OLE_ERROR_METAF
0620: 49 4c 45 2c 0a 09 4f 4c 45 5f 45 52 52 4f 52 5f ILE,..OLE_ERROR_
0630: 41 42 4f 52 54 2c 0a 09 4f 4c 45 5f 45 52 52 4f ABORT,..OLE_ERRO
0640: 52 5f 43 4c 49 50 42 4f 41 52 44 2c 0a 09 4f 4c R_CLIPBOARD,..OL
0650: 45 5f 45 52 52 4f 52 5f 46 4f 52 4d 41 54 2c 0a E_ERROR_FORMAT,.
0660: 09 4f 4c 45 5f 45 52 52 4f 52 5f 4f 42 4a 45 43 .OLE_ERROR_OBJEC
0670: 54 2c 0a 09 4f 4c 45 5f 45 52 52 4f 52 5f 4f 50 T,..OLE_ERROR_OP
0680: 54 49 4f 4e 2c 0a 09 4f 4c 45 5f 45 52 52 4f 52 TION,..OLE_ERROR
0690: 5f 50 52 4f 54 4f 43 4f 4c 2c 0a 09 4f 4c 45 5f _PROTOCOL,..OLE_
06a0: 45 52 52 4f 52 5f 41 44 44 52 45 53 53 2c 0a 09 ERROR_ADDRESS,..
06b0: 4f 4c 45 5f 45 52 52 4f 52 5f 4e 4f 54 5f 45 51 OLE_ERROR_NOT_EQ
06c0: 55 41 4c 2c 0a 09 4f 4c 45 5f 45 52 52 4f 52 5f UAL,..OLE_ERROR_
06d0: 48 41 4e 44 4c 45 2c 0a 09 4f 4c 45 5f 45 52 52 HANDLE,..OLE_ERR
06e0: 4f 52 5f 47 45 4e 45 52 49 43 2c 0a 09 4f 4c 45 OR_GENERIC,..OLE
06f0: 5f 45 52 52 4f 52 5f 43 4c 41 53 53 2c 0a 09 4f _ERROR_CLASS,..O
0700: 4c 45 5f 45 52 52 4f 52 5f 53 59 4e 54 41 58 2c LE_ERROR_SYNTAX,
0710: 0a 09 4f 4c 45 5f 45 52 52 4f 52 5f 44 41 54 41 ..OLE_ERROR_DATA
0720: 54 59 50 45 2c 0a 09 4f 4c 45 5f 45 52 52 4f 52 TYPE,..OLE_ERROR
0730: 5f 50 41 4c 45 54 54 45 2c 0a 09 4f 4c 45 5f 45 _PALETTE,..OLE_E
0740: 52 52 4f 52 5f 4e 4f 54 5f 4c 49 4e 4b 2c 0a 09 RROR_NOT_LINK,..
0750: 4f 4c 45 5f 45 52 52 4f 52 5f 4e 4f 54 5f 45 4d OLE_ERROR_NOT_EM
0760: 50 54 59 2c 0a 09 4f 4c 45 5f 45 52 52 4f 52 5f PTY,..OLE_ERROR_
0770: 53 49 5a 45 2c 0a 09 4f 4c 45 5f 45 52 52 4f 52 SIZE,..OLE_ERROR
0780: 5f 44 52 49 56 45 2c 0a 09 4f 4c 45 5f 45 52 52 _DRIVE,..OLE_ERR
0790: 4f 52 5f 4e 45 54 57 4f 52 4b 2c 0a 09 4f 4c 45 OR_NETWORK,..OLE
07a0: 5f 45 52 52 4f 52 5f 4e 41 4d 45 2c 0a 09 4f 4c _ERROR_NAME,..OL
07b0: 45 5f 45 52 52 4f 52 5f 54 45 4d 50 4c 41 54 45 E_ERROR_TEMPLATE
07c0: 2c 0a 09 4f 4c 45 5f 45 52 52 4f 52 5f 4e 45 57 ,..OLE_ERROR_NEW
07d0: 2c 0a 09 4f 4c 45 5f 45 52 52 4f 52 5f 45 44 49 ,..OLE_ERROR_EDI
07e0: 54 2c 0a 09 4f 4c 45 5f 45 52 52 4f 52 5f 4f 50 T,..OLE_ERROR_OP
07f0: 45 4e 2c 0a 09 4f 4c 45 5f 45 52 52 4f 52 5f 4e EN,..OLE_ERROR_N
0800: 4f 54 5f 4f 50 45 4e 2c 0a 09 4f 4c 45 5f 45 52 OT_OPEN,..OLE_ER
0810: 52 4f 52 5f 4c 41 55 4e 43 48 2c 0a 09 4f 4c 45 ROR_LAUNCH,..OLE
0820: 5f 45 52 52 4f 52 5f 43 4f 4d 4d 2c 0a 09 4f 4c _ERROR_COMM,..OL
0830: 45 5f 45 52 52 4f 52 5f 54 45 52 4d 49 4e 41 54 E_ERROR_TERMINAT
0840: 45 2c 0a 09 4f 4c 45 5f 45 52 52 4f 52 5f 43 4f E,..OLE_ERROR_CO
0850: 4d 4d 41 4e 44 2c 0a 09 4f 4c 45 5f 45 52 52 4f MMAND,..OLE_ERRO
0860: 52 5f 53 48 4f 57 2c 0a 09 4f 4c 45 5f 45 52 52 R_SHOW,..OLE_ERR
0870: 4f 52 5f 44 4f 56 45 52 42 2c 0a 09 4f 4c 45 5f OR_DOVERB,..OLE_
0880: 45 52 52 4f 52 5f 41 44 56 49 53 45 5f 4e 41 54 ERROR_ADVISE_NAT
0890: 49 56 45 2c 0a 09 4f 4c 45 5f 45 52 52 4f 52 5f IVE,..OLE_ERROR_
08a0: 41 44 56 49 53 45 5f 50 49 43 54 2c 0a 09 4f 4c ADVISE_PICT,..OL
08b0: 45 5f 45 52 52 4f 52 5f 41 44 56 49 53 45 5f 52 E_ERROR_ADVISE_R
08c0: 45 4e 41 4d 45 2c 0a 09 4f 4c 45 5f 45 52 52 4f ENAME,..OLE_ERRO
08d0: 52 5f 50 4f 4b 45 5f 4e 41 54 49 56 45 2c 0a 09 R_POKE_NATIVE,..
08e0: 4f 4c 45 5f 45 52 52 4f 52 5f 52 45 51 55 45 53 OLE_ERROR_REQUES
08f0: 54 5f 4e 41 54 49 56 45 2c 0a 09 4f 4c 45 5f 45 T_NATIVE,..OLE_E
0900: 52 52 4f 52 5f 52 45 51 55 45 53 54 5f 50 49 43 RROR_REQUEST_PIC
0910: 54 2c 0a 09 4f 4c 45 5f 45 52 52 4f 52 5f 53 45 T,..OLE_ERROR_SE
0920: 52 56 45 52 5f 42 4c 4f 43 4b 45 44 2c 0a 09 4f RVER_BLOCKED,..O
0930: 4c 45 5f 45 52 52 4f 52 5f 52 45 47 49 53 54 52 LE_ERROR_REGISTR
0940: 41 54 49 4f 4e 2c 0a 09 4f 4c 45 5f 45 52 52 4f ATION,..OLE_ERRO
0950: 52 5f 41 4c 52 45 41 44 59 5f 52 45 47 49 53 54 R_ALREADY_REGIST
0960: 45 52 45 44 2c 0a 09 4f 4c 45 5f 45 52 52 4f 52 ERED,..OLE_ERROR
0970: 5f 54 41 53 4b 2c 0a 09 4f 4c 45 5f 45 52 52 4f _TASK,..OLE_ERRO
0980: 52 5f 4f 55 54 4f 46 44 41 54 45 2c 0a 09 4f 4c R_OUTOFDATE,..OL
0990: 45 5f 45 52 52 4f 52 5f 43 41 4e 54 5f 55 50 44 E_ERROR_CANT_UPD
09a0: 41 54 45 5f 43 4c 49 45 4e 54 2c 0a 09 4f 4c 45 ATE_CLIENT,..OLE
09b0: 5f 45 52 52 4f 52 5f 55 50 44 41 54 45 2c 0a 09 _ERROR_UPDATE,..
09c0: 4f 4c 45 5f 45 52 52 4f 52 5f 53 45 54 44 41 54 OLE_ERROR_SETDAT
09d0: 41 5f 46 4f 52 4d 41 54 2c 0a 09 4f 4c 45 5f 45 A_FORMAT,..OLE_E
09e0: 52 52 4f 52 5f 53 54 41 54 49 43 5f 46 52 4f 4d RROR_STATIC_FROM
09f0: 5f 4f 54 48 45 52 5f 4f 53 2c 0a 09 4f 4c 45 5f _OTHER_OS,..OLE_
0a00: 45 52 52 4f 52 5f 46 49 4c 45 5f 56 45 52 2c 0a ERROR_FILE_VER,.
0a10: 09 4f 4c 45 5f 57 41 52 4e 5f 44 45 4c 45 54 45 .OLE_WARN_DELETE
0a20: 5f 44 41 54 41 20 3d 20 31 30 30 30 0a 7d 0a 0a _DATA = 1000.}..
0a30: 65 6e 75 6d 20 4f 4c 45 5f 4e 4f 54 49 46 49 43 enum OLE_NOTIFIC
0a40: 41 54 49 4f 4e 20 7b 0a 09 4f 4c 45 5f 43 48 41 ATION {..OLE_CHA
0a50: 4e 47 45 44 2c 0a 09 4f 4c 45 5f 53 41 56 45 44 NGED,..OLE_SAVED
0a60: 2c 0a 09 4f 4c 45 5f 43 4c 4f 53 45 44 2c 0a 09 ,..OLE_CLOSED,..
0a70: 4f 4c 45 5f 52 45 4e 41 4d 45 44 2c 0a 09 4f 4c OLE_RENAMED,..OL
0a80: 45 5f 51 55 45 52 59 5f 50 41 49 4e 54 2c 0a 09 E_QUERY_PAINT,..
0a90: 4f 4c 45 5f 52 45 4c 45 41 53 45 2c 0a 09 4f 4c OLE_RELEASE,..OL
0aa0: 45 5f 51 55 45 52 59 5f 52 45 54 52 59 0a 7d 0a E_QUERY_RETRY.}.
0ab0: 0a 65 6e 75 6d 20 4f 4c 45 5f 52 45 4c 45 41 53 .enum OLE_RELEAS
0ac0: 45 5f 4d 45 54 48 4f 44 20 7b 0a 09 4f 4c 45 5f E_METHOD {..OLE_
0ad0: 4e 4f 4e 45 2c 0a 09 4f 4c 45 5f 44 45 4c 45 54 NONE,..OLE_DELET
0ae0: 45 2c 0a 09 4f 4c 45 5f 4c 4e 4b 50 41 53 54 45 E,..OLE_LNKPASTE
0af0: 2c 0a 09 4f 4c 45 5f 45 4d 42 50 41 53 54 45 2c ,..OLE_EMBPASTE,
0b00: 0a 09 4f 4c 45 5f 53 48 4f 57 2c 0a 09 4f 4c 45 ..OLE_SHOW,..OLE
0b10: 5f 52 55 4e 2c 0a 09 4f 4c 45 5f 41 43 54 49 56 _RUN,..OLE_ACTIV
0b20: 41 54 45 2c 0a 09 4f 4c 45 5f 55 50 44 41 54 45 ATE,..OLE_UPDATE
0b30: 2c 0a 09 4f 4c 45 5f 43 4c 4f 53 45 2c 0a 09 4f ,..OLE_CLOSE,..O
0b40: 4c 45 5f 52 45 43 4f 4e 4e 45 43 54 2c 0a 09 4f LE_RECONNECT,..O
0b50: 4c 45 5f 53 45 54 55 50 44 41 54 45 4f 50 54 49 LE_SETUPDATEOPTI
0b60: 4f 4e 53 2c 0a 09 4f 4c 45 5f 53 45 52 56 45 52 ONS,..OLE_SERVER
0b70: 55 4e 4c 41 55 4e 43 48 2c 0a 09 4f 4c 45 5f 4c UNLAUNCH,..OLE_L
0b80: 4f 41 44 46 52 4f 4d 53 54 52 45 41 4d 2c 0a 09 OADFROMSTREAM,..
0b90: 4f 4c 45 5f 53 45 54 44 41 54 41 2c 0a 09 4f 4c OLE_SETDATA,..OL
0ba0: 45 5f 52 45 51 55 45 53 54 44 41 54 41 2c 0a 09 E_REQUESTDATA,..
0bb0: 4f 4c 45 5f 4f 54 48 45 52 2c 0a 09 4f 4c 45 5f OLE_OTHER,..OLE_
0bc0: 43 52 45 41 54 45 2c 0a 09 4f 4c 45 5f 43 52 45 CREATE,..OLE_CRE
0bd0: 41 54 45 46 52 4f 4d 54 45 4d 50 4c 41 54 45 2c ATEFROMTEMPLATE,
0be0: 0a 09 4f 4c 45 5f 43 52 45 41 54 45 4c 49 4e 4b ..OLE_CREATELINK
0bf0: 46 52 4f 4d 46 49 4c 45 2c 0a 09 4f 4c 45 5f 43 FROMFILE,..OLE_C
0c00: 4f 50 59 46 52 4f 4d 4c 4e 4b 2c 0a 09 4f 4c 45 OPYFROMLNK,..OLE
0c10: 5f 43 52 45 41 54 45 46 52 4f 4d 46 49 4c 45 2c _CREATEFROMFILE,
0c20: 0a 09 4f 4c 45 5f 43 52 45 41 54 45 49 4e 56 49 ..OLE_CREATEINVI
0c30: 53 49 42 4c 45 0a 7d 0a 0a 65 6e 75 6d 20 4f 4c SIBLE.}..enum OL
0c40: 45 4f 50 54 5f 52 45 4e 44 45 52 20 7b 0a 09 6f EOPT_RENDER {..o
0c50: 6c 65 72 65 6e 64 65 72 5f 6e 6f 6e 65 2c 0a 09 lerender_none,..
0c60: 6f 6c 65 72 65 6e 64 65 72 5f 64 72 61 77 2c 0a olerender_draw,.
0c70: 09 6f 6c 65 72 65 6e 64 65 72 5f 66 6f 72 6d 61 .olerender_forma
0c80: 74 0a 7d 0a 0a 61 6c 69 61 73 20 57 4f 52 44 20 t.}..alias WORD
0c90: 4f 4c 45 43 4c 49 50 46 4f 52 4d 41 54 3b 0a 0a OLECLIPFORMAT;..
0ca0: 65 6e 75 6d 20 4f 4c 45 4f 50 54 5f 55 50 44 41 enum OLEOPT_UPDA
0cb0: 54 45 20 7b 0a 09 6f 6c 65 75 70 64 61 74 65 5f TE {..oleupdate_
0cc0: 61 6c 77 61 79 73 2c 0a 09 6f 6c 65 75 70 64 61 always,..oleupda
0cd0: 74 65 5f 6f 6e 73 61 76 65 2c 0a 09 6f 6c 65 75 te_onsave,..oleu
0ce0: 70 64 61 74 65 5f 6f 6e 63 61 6c 6c 2c 0a 2f 2f pdate_oncall,.//
0cf0: 20 23 69 66 64 65 66 20 4f 4c 45 5f 49 4e 54 45 #ifdef OLE_INTE
0d00: 52 4e 41 4c 0a 09 6f 6c 65 75 70 64 61 74 65 5f RNAL..oleupdate_
0d10: 6f 6e 63 6c 6f 73 65 0a 2f 2f 20 23 65 6e 64 69 onclose.// #endi
0d20: 66 0a 7d 0a 0a 61 6c 69 61 73 20 48 41 4e 44 4c f.}..alias HANDL
0d30: 45 20 48 4f 42 4a 45 43 54 3b 0a 61 6c 69 61 73 E HOBJECT;.alias
0d40: 20 4c 4f 4e 47 20 4c 48 53 45 52 56 45 52 2c 20 LONG LHSERVER,
0d50: 4c 48 43 4c 49 45 4e 54 44 4f 43 2c 20 4c 48 53 LHCLIENTDOC, LHS
0d60: 45 52 56 45 52 44 4f 43 3b 0a 0a 73 74 72 75 63 ERVERDOC;..struc
0d70: 74 20 4f 4c 45 4f 42 4a 45 43 54 56 54 42 4c 20 t OLEOBJECTVTBL
0d80: 7b 0a 09 65 78 74 65 72 6e 20 28 57 69 6e 64 6f {..extern (Windo
0d90: 77 73 29 20 7b 0a 09 09 76 6f 69 64 2a 20 66 75 ws) {...void* fu
0da0: 6e 63 74 69 6f 6e 28 4c 50 4f 4c 45 4f 42 4a 45 nction(LPOLEOBJE
0db0: 43 54 2c 20 4f 4c 45 5f 4c 50 43 53 54 52 29 20 CT, OLE_LPCSTR)
0dc0: 51 75 65 72 79 50 72 6f 74 6f 63 6f 6c 3b 0a 09 QueryProtocol;..
0dd0: 09 4f 4c 45 53 54 41 54 55 53 20 66 75 6e 63 74 .OLESTATUS funct
0de0: 69 6f 6e 28 4c 50 4f 4c 45 4f 42 4a 45 43 54 29 ion(LPOLEOBJECT)
0df0: 20 52 65 6c 65 61 73 65 3b 0a 09 09 4f 4c 45 53 Release;...OLES
0e00: 54 41 54 55 53 20 66 75 6e 63 74 69 6f 6e 28 4c TATUS function(L
0e10: 50 4f 4c 45 4f 42 4a 45 43 54 2c 20 42 4f 4f 4c POLEOBJECT, BOOL
0e20: 29 20 53 68 6f 77 3b 0a 09 09 4f 4c 45 53 54 41 ) Show;...OLESTA
0e30: 54 55 53 20 66 75 6e 63 74 69 6f 6e 28 4c 50 4f TUS function(LPO
0e40: 4c 45 4f 42 4a 45 43 54 2c 20 55 49 4e 54 2c 20 LEOBJECT, UINT,
0e50: 42 4f 4f 4c 2c 20 42 4f 4f 4c 29 20 44 6f 56 65 BOOL, BOOL) DoVe
0e60: 72 62 3b 0a 09 09 4f 4c 45 53 54 41 54 55 53 20 rb;...OLESTATUS
0e70: 66 75 6e 63 74 69 6f 6e 28 4c 50 4f 4c 45 4f 42 function(LPOLEOB
0e80: 4a 45 43 54 2c 20 4f 4c 45 43 4c 49 50 46 4f 52 JECT, OLECLIPFOR
0e90: 4d 41 54 2c 20 48 41 4e 44 4c 45 2a 29 20 47 65 MAT, HANDLE*) Ge
0ea0: 74 44 61 74 61 3b 0a 09 09 4f 4c 45 53 54 41 54 tData;...OLESTAT
0eb0: 55 53 20 66 75 6e 63 74 69 6f 6e 28 4c 50 4f 4c US function(LPOL
0ec0: 45 4f 42 4a 45 43 54 2c 20 4f 4c 45 43 4c 49 50 EOBJECT, OLECLIP
0ed0: 46 4f 52 4d 41 54 2c 20 48 41 4e 44 4c 45 29 20 FORMAT, HANDLE)
0ee0: 53 65 74 44 61 74 61 3b 0a 09 09 4f 4c 45 53 54 SetData;...OLEST
0ef0: 41 54 55 53 20 66 75 6e 63 74 69 6f 6e 28 4c 50 ATUS function(LP
0f00: 4f 4c 45 4f 42 4a 45 43 54 2c 20 48 47 4c 4f 42 OLEOBJECT, HGLOB
0f10: 41 4c 29 20 53 65 74 54 61 72 67 65 74 44 65 76 AL) SetTargetDev
0f20: 69 63 65 3b 0a 09 09 4f 4c 45 53 54 41 54 55 53 ice;...OLESTATUS
0f30: 20 66 75 6e 63 74 69 6f 6e 28 4c 50 4f 4c 45 4f function(LPOLEO
0f40: 42 4a 45 43 54 2c 20 52 45 43 54 2a 29 20 53 65 BJECT, RECT*) Se
0f50: 74 42 6f 75 6e 64 73 3b 0a 09 09 4f 4c 45 43 4c tBounds;...OLECL
0f60: 49 50 46 4f 52 4d 41 54 20 66 75 6e 63 74 69 6f IPFORMAT functio
0f70: 6e 28 4c 50 4f 4c 45 4f 42 4a 45 43 54 2c 20 4f n(LPOLEOBJECT, O
0f80: 4c 45 43 4c 49 50 46 4f 52 4d 41 54 29 20 45 6e LECLIPFORMAT) En
0f90: 75 6d 46 6f 72 6d 61 74 73 3b 0a 09 09 4f 4c 45 umFormats;...OLE
0fa0: 53 54 41 54 55 53 20 66 75 6e 63 74 69 6f 6e 28 STATUS function(
0fb0: 4c 50 4f 4c 45 4f 42 4a 45 43 54 2c 20 4c 4f 47 LPOLEOBJECT, LOG
0fc0: 50 41 4c 45 54 54 45 2a 29 20 53 65 74 43 6f 6c PALETTE*) SetCol
0fd0: 6f 72 53 63 68 65 6d 65 3b 0a 2f 2f 23 69 66 6e orScheme;.//#ifn
0fe0: 64 65 66 20 53 45 52 56 45 52 4f 4e 4c 59 0a 09 def SERVERONLY..
0ff0: 09 4f 4c 45 53 54 41 54 55 53 20 66 75 6e 63 74 .OLESTATUS funct
1000: 69 6f 6e 28 4c 50 4f 4c 45 4f 42 4a 45 43 54 29 ion(LPOLEOBJECT)
1010: 20 44 65 6c 65 74 65 3b 0a 09 09 4f 4c 45 53 54 Delete;...OLEST
1020: 41 54 55 53 20 66 75 6e 63 74 69 6f 6e 28 4c 50 ATUS function(LP
1030: 4f 4c 45 4f 42 4a 45 43 54 2c 20 4f 4c 45 5f 4c OLEOBJECT, OLE_L
1040: 50 43 53 54 52 2c 20 4f 4c 45 5f 4c 50 43 53 54 PCSTR, OLE_LPCST
1050: 52 29 20 53 65 74 48 6f 73 74 4e 61 6d 65 73 3b R) SetHostNames;
1060: 0a 09 09 4f 4c 45 53 54 41 54 55 53 20 66 75 6e ...OLESTATUS fun
1070: 63 74 69 6f 6e 28 4c 50 4f 4c 45 4f 42 4a 45 43 ction(LPOLEOBJEC
1080: 54 2c 20 4c 50 4f 4c 45 53 54 52 45 41 4d 29 20 T, LPOLESTREAM)
1090: 53 61 76 65 54 6f 53 74 72 65 61 6d 3b 0a 09 09 SaveToStream;...
10a0: 4f 4c 45 53 54 41 54 55 53 20 66 75 6e 63 74 69 OLESTATUS functi
10b0: 6f 6e 28 4c 50 4f 4c 45 4f 42 4a 45 43 54 2c 20 on(LPOLEOBJECT,
10c0: 4c 50 4f 4c 45 43 4c 49 45 4e 54 2c 20 4c 48 43 LPOLECLIENT, LHC
10d0: 4c 49 45 4e 54 44 4f 43 2c 20 4f 4c 45 5f 4c 50 LIENTDOC, OLE_LP
10e0: 43 53 54 52 2c 0a 09 09 20 20 4c 50 4f 4c 45 4f CSTR,... LPOLEO
10f0: 42 4a 45 43 54 2a 29 20 43 6c 6f 6e 65 3b 0a 09 BJECT*) Clone;..
1100: 09 4f 4c 45 53 54 41 54 55 53 20 66 75 6e 63 74 .OLESTATUS funct
1110: 69 6f 6e 28 4c 50 4f 4c 45 4f 42 4a 45 43 54 2c ion(LPOLEOBJECT,
1120: 20 4c 50 4f 4c 45 43 4c 49 45 4e 54 2c 20 4c 48 LPOLECLIENT, LH
1130: 43 4c 49 45 4e 54 44 4f 43 2c 20 4f 4c 45 5f 4c CLIENTDOC, OLE_L
1140: 50 43 53 54 52 2c 0a 09 09 20 20 4c 50 4f 4c 45 PCSTR,... LPOLE
1150: 4f 42 4a 45 43 54 2a 29 20 43 6f 70 79 46 72 6f OBJECT*) CopyFro
1160: 6d 4c 69 6e 6b 3b 0a 09 09 4f 4c 45 53 54 41 54 mLink;...OLESTAT
1170: 55 53 20 66 75 6e 63 74 69 6f 6e 28 4c 50 4f 4c US function(LPOL
1180: 45 4f 42 4a 45 43 54 2c 20 4c 50 4f 4c 45 4f 42 EOBJECT, LPOLEOB
1190: 4a 45 43 54 29 20 45 71 75 61 6c 3b 0a 09 09 4f JECT) Equal;...O
11a0: 4c 45 53 54 41 54 55 53 20 66 75 6e 63 74 69 6f LESTATUS functio
11b0: 6e 28 4c 50 4f 4c 45 4f 42 4a 45 43 54 29 20 43 n(LPOLEOBJECT) C
11c0: 6f 70 79 54 6f 43 6c 69 70 62 6f 61 72 64 3b 0a opyToClipboard;.
11d0: 09 09 4f 4c 45 53 54 41 54 55 53 20 66 75 6e 63 ..OLESTATUS func
11e0: 74 69 6f 6e 28 4c 50 4f 4c 45 4f 42 4a 45 43 54 tion(LPOLEOBJECT
11f0: 2c 20 48 44 43 2c 20 52 45 43 54 2a 2c 20 52 45 , HDC, RECT*, RE
1200: 43 54 2a 2c 20 48 44 43 29 20 44 72 61 77 3b 0a CT*, HDC) Draw;.
1210: 09 09 4f 4c 45 53 54 41 54 55 53 20 66 75 6e 63 ..OLESTATUS func
1220: 74 69 6f 6e 28 4c 50 4f 4c 45 4f 42 4a 45 43 54 tion(LPOLEOBJECT
1230: 2c 20 55 49 4e 54 2c 20 42 4f 4f 4c 2c 20 42 4f , UINT, BOOL, BO
1240: 4f 4c 2c 20 48 57 4e 44 2c 20 52 45 43 54 2a 29 OL, HWND, RECT*)
1250: 0a 09 09 20 20 41 63 74 69 76 61 74 65 3b 0a 09 ... Activate;..
1260: 09 4f 4c 45 53 54 41 54 55 53 20 66 75 6e 63 74 .OLESTATUS funct
1270: 69 6f 6e 28 4c 50 4f 4c 45 4f 42 4a 45 43 54 2c ion(LPOLEOBJECT,
1280: 20 48 47 4c 4f 42 41 4c 2c 20 55 49 4e 54 29 20 HGLOBAL, UINT)
1290: 45 78 65 63 75 74 65 3b 0a 09 09 4f 4c 45 53 54 Execute;...OLEST
12a0: 41 54 55 53 20 66 75 6e 63 74 69 6f 6e 28 4c 50 ATUS function(LP
12b0: 4f 4c 45 4f 42 4a 45 43 54 29 20 43 6c 6f 73 65 OLEOBJECT) Close
12c0: 3b 0a 09 09 4f 4c 45 53 54 41 54 55 53 20 66 75 ;...OLESTATUS fu
12d0: 6e 63 74 69 6f 6e 28 4c 50 4f 4c 45 4f 42 4a 45 nction(LPOLEOBJE
12e0: 43 54 29 20 55 70 64 61 74 65 3b 0a 09 09 4f 4c CT) Update;...OL
12f0: 45 53 54 41 54 55 53 20 66 75 6e 63 74 69 6f 6e ESTATUS function
1300: 28 4c 50 4f 4c 45 4f 42 4a 45 43 54 29 20 52 65 (LPOLEOBJECT) Re
1310: 63 6f 6e 6e 65 63 74 3b 0a 09 09 4f 4c 45 53 54 connect;...OLEST
1320: 41 54 55 53 20 66 75 6e 63 74 69 6f 6e 28 4c 50 ATUS function(LP
1330: 4f 4c 45 4f 42 4a 45 43 54 2c 20 4f 4c 45 5f 4c OLEOBJECT, OLE_L
1340: 50 43 53 54 52 2c 20 4c 50 4f 4c 45 43 4c 49 45 PCSTR, LPOLECLIE
1350: 4e 54 2c 20 4c 48 43 4c 49 45 4e 54 44 4f 43 2c NT, LHCLIENTDOC,
1360: 0a 09 09 20 20 4f 4c 45 5f 4c 50 43 53 54 52 2c ... OLE_LPCSTR,
1370: 20 4c 50 4f 4c 45 4f 42 4a 45 43 54 2a 29 20 4f LPOLEOBJECT*) O
1380: 62 6a 65 63 74 43 6f 6e 76 65 72 74 3b 0a 09 09 bjectConvert;...
1390: 4f 4c 45 53 54 41 54 55 53 20 66 75 6e 63 74 69 OLESTATUS functi
13a0: 6f 6e 28 4c 50 4f 4c 45 4f 42 4a 45 43 54 2c 20 on(LPOLEOBJECT,
13b0: 4f 4c 45 4f 50 54 5f 55 50 44 41 54 45 2a 29 20 OLEOPT_UPDATE*)
13c0: 47 65 74 4c 69 6e 6b 55 70 64 61 74 65 4f 70 74 GetLinkUpdateOpt
13d0: 69 6f 6e 73 3b 0a 09 09 4f 4c 45 53 54 41 54 55 ions;...OLESTATU
13e0: 53 20 66 75 6e 63 74 69 6f 6e 28 4c 50 4f 4c 45 S function(LPOLE
13f0: 4f 42 4a 45 43 54 2c 20 4f 4c 45 4f 50 54 5f 55 OBJECT, OLEOPT_U
1400: 50 44 41 54 45 29 20 53 65 74 4c 69 6e 6b 55 70 PDATE) SetLinkUp
1410: 64 61 74 65 4f 70 74 69 6f 6e 73 3b 0a 09 09 4f dateOptions;...O
1420: 4c 45 53 54 41 54 55 53 20 66 75 6e 63 74 69 6f LESTATUS functio
1430: 6e 28 4c 50 4f 4c 45 4f 42 4a 45 43 54 2c 20 4f n(LPOLEOBJECT, O
1440: 4c 45 5f 4c 50 43 53 54 52 29 20 52 65 6e 61 6d LE_LPCSTR) Renam
1450: 65 3b 0a 09 09 4f 4c 45 53 54 41 54 55 53 20 66 e;...OLESTATUS f
1460: 75 6e 63 74 69 6f 6e 28 4c 50 4f 4c 45 4f 42 4a unction(LPOLEOBJ
1470: 45 43 54 2c 20 4c 50 53 54 52 2c 20 55 49 4e 54 ECT, LPSTR, UINT
1480: 2a 29 20 51 75 65 72 79 4e 61 6d 65 3b 0a 09 09 *) QueryName;...
1490: 4f 4c 45 53 54 41 54 55 53 20 66 75 6e 63 74 69 OLESTATUS functi
14a0: 6f 6e 28 4c 50 4f 4c 45 4f 42 4a 45 43 54 2c 20 on(LPOLEOBJECT,
14b0: 4c 4f 4e 47 2a 29 20 51 75 65 72 79 54 79 70 65 LONG*) QueryType
14c0: 3b 0a 09 09 4f 4c 45 53 54 41 54 55 53 20 66 75 ;...OLESTATUS fu
14d0: 6e 63 74 69 6f 6e 28 4c 50 4f 4c 45 4f 42 4a 45 nction(LPOLEOBJE
14e0: 43 54 2c 20 52 45 43 54 2a 29 20 51 75 65 72 79 CT, RECT*) Query
14f0: 42 6f 75 6e 64 73 3b 0a 09 09 4f 4c 45 53 54 41 Bounds;...OLESTA
1500: 54 55 53 20 66 75 6e 63 74 69 6f 6e 28 4c 50 4f TUS function(LPO
1510: 4c 45 4f 42 4a 45 43 54 2c 20 44 57 4f 52 44 2a LEOBJECT, DWORD*
1520: 29 20 51 75 65 72 79 53 69 7a 65 3b 0a 09 09 4f ) QuerySize;...O
1530: 4c 45 53 54 41 54 55 53 20 66 75 6e 63 74 69 6f LESTATUS functio
1540: 6e 28 4c 50 4f 4c 45 4f 42 4a 45 43 54 29 20 51 n(LPOLEOBJECT) Q
1550: 75 65 72 79 4f 70 65 6e 3b 0a 09 09 4f 4c 45 53 ueryOpen;...OLES
1560: 54 41 54 55 53 20 66 75 6e 63 74 69 6f 6e 28 4c TATUS function(L
1570: 50 4f 4c 45 4f 42 4a 45 43 54 29 20 51 75 65 72 POLEOBJECT) Quer
1580: 79 4f 75 74 4f 66 44 61 74 65 3b 0a 09 09 4f 4c yOutOfDate;...OL
1590: 45 53 54 41 54 55 53 20 66 75 6e 63 74 69 6f 6e ESTATUS function
15a0: 28 4c 50 4f 4c 45 4f 42 4a 45 43 54 29 20 51 75 (LPOLEOBJECT) Qu
15b0: 65 72 79 52 65 6c 65 61 73 65 53 74 61 74 75 73 eryReleaseStatus
15c0: 3b 0a 09 09 4f 4c 45 53 54 41 54 55 53 20 66 75 ;...OLESTATUS fu
15d0: 6e 63 74 69 6f 6e 28 4c 50 4f 4c 45 4f 42 4a 45 nction(LPOLEOBJE
15e0: 43 54 29 20 51 75 65 72 79 52 65 6c 65 61 73 65 CT) QueryRelease
15f0: 45 72 72 6f 72 3b 0a 09 09 4f 4c 45 5f 52 45 4c Error;...OLE_REL
1600: 45 41 53 45 5f 4d 45 54 48 4f 44 20 66 75 6e 63 EASE_METHOD func
1610: 74 69 6f 6e 28 4c 50 4f 4c 45 4f 42 4a 45 43 54 tion(LPOLEOBJECT
1620: 29 20 51 75 65 72 79 52 65 6c 65 61 73 65 4d 65 ) QueryReleaseMe
1630: 74 68 6f 64 3b 0a 09 09 4f 4c 45 53 54 41 54 55 thod;...OLESTATU
1640: 53 20 66 75 6e 63 74 69 6f 6e 28 4c 50 4f 4c 45 S function(LPOLE
1650: 4f 42 4a 45 43 54 2c 20 4f 4c 45 43 4c 49 50 46 OBJECT, OLECLIPF
1660: 4f 52 4d 41 54 29 20 52 65 71 75 65 73 74 44 61 ORMAT) RequestDa
1670: 74 61 3b 0a 09 09 4f 4c 45 53 54 41 54 55 53 20 ta;...OLESTATUS
1680: 66 75 6e 63 74 69 6f 6e 28 4c 50 4f 4c 45 4f 42 function(LPOLEOB
1690: 4a 45 43 54 2c 20 55 49 4e 54 2c 20 4c 4f 4e 47 JECT, UINT, LONG
16a0: 2a 29 20 4f 62 6a 65 63 74 4c 6f 6e 67 3b 0a 09 *) ObjectLong;..
16b0: 09 4f 4c 45 53 54 41 54 55 53 20 66 75 6e 63 74 .OLESTATUS funct
16c0: 69 6f 6e 28 4c 50 4f 4c 45 4f 42 4a 45 43 54 2c ion(LPOLEOBJECT,
16d0: 20 48 41 4e 44 4c 45 2c 20 4c 50 4f 4c 45 43 4c HANDLE, LPOLECL
16e0: 49 45 4e 54 2c 20 42 4f 4f 4c 29 20 43 68 61 6e IENT, BOOL) Chan
16f0: 67 65 44 61 74 61 3b 0a 2f 2f 23 65 6e 64 69 66 geData;.//#endif
1700: 0a 09 7d 0a 7d 0a 61 6c 69 61 73 20 4f 4c 45 4f ..}.}.alias OLEO
1710: 42 4a 45 43 54 56 54 42 4c 2a 20 4c 50 4f 4c 45 BJECTVTBL* LPOLE
1720: 4f 42 4a 45 43 54 56 54 42 4c 3b 0a 0a 2f 2f 23 OBJECTVTBL;..//#
1730: 69 66 6e 64 65 66 20 4f 4c 45 5f 49 4e 54 45 52 ifndef OLE_INTER
1740: 4e 41 4c 0a 73 74 72 75 63 74 20 4f 4c 45 4f 42 NAL.struct OLEOB
1750: 4a 45 43 54 20 7b 0a 09 4c 50 4f 4c 45 4f 42 4a JECT {..LPOLEOBJ
1760: 45 43 54 56 54 42 4c 20 6c 70 76 74 62 6c 3b 0a ECTVTBL lpvtbl;.
1770: 7d 0a 61 6c 69 61 73 20 4f 4c 45 4f 42 4a 45 43 }.alias OLEOBJEC
1780: 54 2a 20 4c 50 4f 4c 45 4f 42 4a 45 43 54 3b 0a T* LPOLEOBJECT;.
1790: 2f 2f 23 65 6e 64 69 66 0a 0a 73 74 72 75 63 74 //#endif..struct
17a0: 20 4f 4c 45 43 4c 49 45 4e 54 56 54 42 4c 20 7b OLECLIENTVTBL {
17b0: 0a 09 69 6e 74 20 66 75 6e 63 74 69 6f 6e 28 4c ..int function(L
17c0: 50 4f 4c 45 43 4c 49 45 4e 54 2c 20 4f 4c 45 5f POLECLIENT, OLE_
17d0: 4e 4f 54 49 46 49 43 41 54 49 4f 4e 2c 20 4c 50 NOTIFICATION, LP
17e0: 4f 4c 45 4f 42 4a 45 43 54 29 20 43 61 6c 6c 42 OLEOBJECT) CallB
17f0: 61 63 6b 3b 0a 7d 0a 61 6c 69 61 73 20 4f 4c 45 ack;.}.alias OLE
1800: 43 4c 49 45 4e 54 56 54 42 4c 2a 20 4c 50 4f 4c CLIENTVTBL* LPOL
1810: 45 43 4c 49 45 4e 54 56 54 42 4c 3b 0a 0a 73 74 ECLIENTVTBL;..st
1820: 72 75 63 74 20 4f 4c 45 43 4c 49 45 4e 54 20 7b ruct OLECLIENT {
1830: 0a 09 4c 50 4f 4c 45 43 4c 49 45 4e 54 56 54 42 ..LPOLECLIENTVTB
1840: 4c 20 6c 70 76 74 62 6c 3b 0a 7d 0a 61 6c 69 61 L lpvtbl;.}.alia
1850: 73 20 4f 4c 45 43 4c 49 45 4e 54 2a 20 4c 50 4f s OLECLIENT* LPO
1860: 4c 45 43 4c 49 45 4e 54 3b 0a 0a 73 74 72 75 63 LECLIENT;..struc
1870: 74 20 4f 4c 45 53 54 52 45 41 4d 56 54 42 4c 20 t OLESTREAMVTBL
1880: 7b 0a 09 44 57 4f 52 44 20 66 75 6e 63 74 69 6f {..DWORD functio
1890: 6e 28 4c 50 4f 4c 45 53 54 52 45 41 4d 2c 20 76 n(LPOLESTREAM, v
18a0: 6f 69 64 2a 2c 20 44 57 4f 52 44 29 20 47 65 74 oid*, DWORD) Get
18b0: 3b 0a 09 44 57 4f 52 44 20 66 75 6e 63 74 69 6f ;..DWORD functio
18c0: 6e 28 4c 50 4f 4c 45 53 54 52 45 41 4d 2c 20 76 n(LPOLESTREAM, v
18d0: 6f 69 64 2a 2c 20 44 57 4f 52 44 29 20 50 75 74 oid*, DWORD) Put
18e0: 3b 0a 7d 0a 61 6c 69 61 73 20 4f 4c 45 53 54 52 ;.}.alias OLESTR
18f0: 45 41 4d 56 54 42 4c 2a 20 4c 50 4f 4c 45 53 54 EAMVTBL* LPOLEST
1900: 52 45 41 4d 56 54 42 4c 3b 0a 0a 73 74 72 75 63 REAMVTBL;..struc
1910: 74 20 4f 4c 45 53 54 52 45 41 4d 20 7b 0a 09 4c t OLESTREAM {..L
1920: 50 4f 4c 45 53 54 52 45 41 4d 56 54 42 4c 20 6c POLESTREAMVTBL l
1930: 70 73 74 62 6c 3b 0a 7d 0a 61 6c 69 61 73 20 4f pstbl;.}.alias O
1940: 4c 45 53 54 52 45 41 4d 2a 20 4c 50 4f 4c 45 53 LESTREAM* LPOLES
1950: 54 52 45 41 4d 3b 0a 0a 65 6e 75 6d 20 4f 4c 45 TREAM;..enum OLE
1960: 5f 53 45 52 56 45 52 5f 55 53 45 20 7b 0a 09 4f _SERVER_USE {..O
1970: 4c 45 5f 53 45 52 56 45 52 5f 4d 55 4c 54 49 2c LE_SERVER_MULTI,
1980: 0a 09 4f 4c 45 5f 53 45 52 56 45 52 5f 53 49 4e ..OLE_SERVER_SIN
1990: 47 4c 45 0a 7d 0a 0a 73 74 72 75 63 74 20 4f 4c GLE.}..struct OL
19a0: 45 53 45 52 56 45 52 56 54 42 4c 20 7b 0a 09 4f ESERVERVTBL {..O
19b0: 4c 45 53 54 41 54 55 53 20 66 75 6e 63 74 69 6f LESTATUS functio
19c0: 6e 28 4c 50 4f 4c 45 53 45 52 56 45 52 2c 20 4c n(LPOLESERVER, L
19d0: 48 53 45 52 56 45 52 44 4f 43 2c 20 4f 4c 45 5f HSERVERDOC, OLE_
19e0: 4c 50 43 53 54 52 2c 20 4c 50 4f 4c 45 53 45 52 LPCSTR, LPOLESER
19f0: 56 45 52 44 4f 43 2a 29 0a 09 20 20 4f 70 65 6e VERDOC*).. Open
1a00: 3b 0a 09 4f 4c 45 53 54 41 54 55 53 20 66 75 6e ;..OLESTATUS fun
1a10: 63 74 69 6f 6e 28 4c 50 4f 4c 45 53 45 52 56 45 ction(LPOLESERVE
1a20: 52 2c 20 4c 48 53 45 52 56 45 52 44 4f 43 2c 20 R, LHSERVERDOC,
1a30: 4f 4c 45 5f 4c 50 43 53 54 52 2c 20 4f 4c 45 5f OLE_LPCSTR, OLE_
1a40: 4c 50 43 53 54 52 2c 0a 09 20 20 4c 50 4f 4c 45 LPCSTR,.. LPOLE
1a50: 53 45 52 56 45 52 44 4f 43 2a 29 20 43 72 65 61 SERVERDOC*) Crea
1a60: 74 65 3b 0a 09 4f 4c 45 53 54 41 54 55 53 20 66 te;..OLESTATUS f
1a70: 75 6e 63 74 69 6f 6e 28 4c 50 4f 4c 45 53 45 52 unction(LPOLESER
1a80: 56 45 52 2c 20 4c 48 53 45 52 56 45 52 44 4f 43 VER, LHSERVERDOC
1a90: 2c 20 4f 4c 45 5f 4c 50 43 53 54 52 2c 20 4f 4c , OLE_LPCSTR, OL
1aa0: 45 5f 4c 50 43 53 54 52 2c 0a 09 20 20 4f 4c 45 E_LPCSTR,.. OLE
1ab0: 5f 4c 50 43 53 54 52 2c 20 4c 50 4f 4c 45 53 45 _LPCSTR, LPOLESE
1ac0: 52 56 45 52 44 4f 43 2a 29 20 43 72 65 61 74 65 RVERDOC*) Create
1ad0: 46 72 6f 6d 54 65 6d 70 6c 61 74 65 3b 0a 09 4f FromTemplate;..O
1ae0: 4c 45 53 54 41 54 55 53 20 66 75 6e 63 74 69 6f LESTATUS functio
1af0: 6e 28 4c 50 4f 4c 45 53 45 52 56 45 52 2c 20 4c n(LPOLESERVER, L
1b00: 48 53 45 52 56 45 52 44 4f 43 2c 20 4f 4c 45 5f HSERVERDOC, OLE_
1b10: 4c 50 43 53 54 52 2c 20 4f 4c 45 5f 4c 50 43 53 LPCSTR, OLE_LPCS
1b20: 54 52 2c 0a 09 20 20 4c 50 4f 4c 45 53 45 52 56 TR,.. LPOLESERV
1b30: 45 52 44 4f 43 2a 29 20 45 64 69 74 3b 0a 09 4f ERDOC*) Edit;..O
1b40: 4c 45 53 54 41 54 55 53 20 66 75 6e 63 74 69 6f LESTATUS functio
1b50: 6e 28 4c 50 4f 4c 45 53 45 52 56 45 52 29 20 45 n(LPOLESERVER) E
1b60: 78 69 74 3b 0a 09 4f 4c 45 53 54 41 54 55 53 20 xit;..OLESTATUS
1b70: 66 75 6e 63 74 69 6f 6e 28 4c 50 4f 4c 45 53 45 function(LPOLESE
1b80: 52 56 45 52 29 20 52 65 6c 65 61 73 65 3b 0a 09 RVER) Release;..
1b90: 4f 4c 45 53 54 41 54 55 53 20 66 75 6e 63 74 69 OLESTATUS functi
1ba0: 6f 6e 28 4c 50 4f 4c 45 53 45 52 56 45 52 2c 20 on(LPOLESERVER,
1bb0: 48 47 4c 4f 42 41 4c 29 20 45 78 65 63 75 74 65 HGLOBAL) Execute
1bc0: 3b 0a 7d 0a 61 6c 69 61 73 20 4f 4c 45 53 45 52 ;.}.alias OLESER
1bd0: 56 45 52 56 54 42 4c 2a 20 4c 50 4f 4c 45 53 45 VERVTBL* LPOLESE
1be0: 52 56 45 52 56 54 42 4c 3b 0a 0a 73 74 72 75 63 RVERVTBL;..struc
1bf0: 74 20 4f 4c 45 53 45 52 56 45 52 20 7b 0a 09 4c t OLESERVER {..L
1c00: 50 4f 4c 45 53 45 52 56 45 52 56 54 42 4c 20 6c POLESERVERVTBL l
1c10: 70 76 74 62 6c 3b 0a 7d 0a 61 6c 69 61 73 20 4f pvtbl;.}.alias O
1c20: 4c 45 53 45 52 56 45 52 2a 20 4c 50 4f 4c 45 53 LESERVER* LPOLES
1c30: 45 52 56 45 52 3b 0a 0a 73 74 72 75 63 74 20 4f ERVER;..struct O
1c40: 4c 45 53 45 52 56 45 52 44 4f 43 56 54 42 4c 20 LESERVERDOCVTBL
1c50: 7b 0a 09 4f 4c 45 53 54 41 54 55 53 20 66 75 6e {..OLESTATUS fun
1c60: 63 74 69 6f 6e 28 4c 50 4f 4c 45 53 45 52 56 45 ction(LPOLESERVE
1c70: 52 44 4f 43 29 20 53 61 76 65 3b 0a 09 4f 4c 45 RDOC) Save;..OLE
1c80: 53 54 41 54 55 53 20 66 75 6e 63 74 69 6f 6e 28 STATUS function(
1c90: 4c 50 4f 4c 45 53 45 52 56 45 52 44 4f 43 29 20 LPOLESERVERDOC)
1ca0: 43 6c 6f 73 65 3b 0a 09 4f 4c 45 53 54 41 54 55 Close;..OLESTATU
1cb0: 53 20 66 75 6e 63 74 69 6f 6e 28 4c 50 4f 4c 45 S function(LPOLE
1cc0: 53 45 52 56 45 52 44 4f 43 2c 20 4f 4c 45 5f 4c SERVERDOC, OLE_L
1cd0: 50 43 53 54 52 2c 20 4f 4c 45 5f 4c 50 43 53 54 PCSTR, OLE_LPCST
1ce0: 52 29 20 53 65 74 48 6f 73 74 4e 61 6d 65 73 3b R) SetHostNames;
1cf0: 0a 09 4f 4c 45 53 54 41 54 55 53 20 66 75 6e 63 ..OLESTATUS func
1d00: 74 69 6f 6e 28 4c 50 4f 4c 45 53 45 52 56 45 52 tion(LPOLESERVER
1d10: 44 4f 43 2c 20 52 45 43 54 2a 29 20 53 65 74 44 DOC, RECT*) SetD
1d20: 6f 63 44 69 6d 65 6e 73 69 6f 6e 73 3b 0a 09 4f ocDimensions;..O
1d30: 4c 45 53 54 41 54 55 53 20 66 75 6e 63 74 69 6f LESTATUS functio
1d40: 6e 28 4c 50 4f 4c 45 53 45 52 56 45 52 44 4f 43 n(LPOLESERVERDOC
1d50: 2c 20 4f 4c 45 5f 4c 50 43 53 54 52 2c 20 4c 50 , OLE_LPCSTR, LP
1d60: 4f 4c 45 4f 42 4a 45 43 54 2a 2c 20 4c 50 4f 4c OLEOBJECT*, LPOL
1d70: 45 43 4c 49 45 4e 54 29 0a 09 20 20 47 65 74 4f ECLIENT).. GetO
1d80: 62 6a 65 63 74 3b 0a 09 4f 4c 45 53 54 41 54 55 bject;..OLESTATU
1d90: 53 20 66 75 6e 63 74 69 6f 6e 28 4c 50 4f 4c 45 S function(LPOLE
1da0: 53 45 52 56 45 52 44 4f 43 29 20 52 65 6c 65 61 SERVERDOC) Relea
1db0: 73 65 3b 0a 09 4f 4c 45 53 54 41 54 55 53 20 66 se;..OLESTATUS f
1dc0: 75 6e 63 74 69 6f 6e 28 4c 50 4f 4c 45 53 45 52 unction(LPOLESER
1dd0: 56 45 52 44 4f 43 2c 20 4c 4f 47 50 41 4c 45 54 VERDOC, LOGPALET
1de0: 54 45 2a 29 20 53 65 74 43 6f 6c 6f 72 53 63 68 TE*) SetColorSch
1df0: 65 6d 65 3b 0a 09 4f 4c 45 53 54 41 54 55 53 20 eme;..OLESTATUS
1e00: 66 75 6e 63 74 69 6f 6e 28 4c 50 4f 4c 45 53 45 function(LPOLESE
1e10: 52 56 45 52 44 4f 43 2c 20 48 47 4c 4f 42 41 4c RVERDOC, HGLOBAL
1e20: 29 20 45 78 65 63 75 74 65 3b 0a 7d 0a 61 6c 69 ) Execute;.}.ali
1e30: 61 73 20 4f 4c 45 53 45 52 56 45 52 44 4f 43 56 as OLESERVERDOCV
1e40: 54 42 4c 2a 20 4c 50 4f 4c 45 53 45 52 56 45 52 TBL* LPOLESERVER
1e50: 44 4f 43 56 54 42 4c 3b 0a 0a 73 74 72 75 63 74 DOCVTBL;..struct
1e60: 20 4f 4c 45 53 45 52 56 45 52 44 4f 43 20 7b 0a OLESERVERDOC {.
1e70: 09 4c 50 4f 4c 45 53 45 52 56 45 52 44 4f 43 56 .LPOLESERVERDOCV
1e80: 54 42 4c 20 6c 70 76 74 62 6c 3b 0a 7d 0a 61 6c TBL lpvtbl;.}.al
1e90: 69 61 73 20 4f 4c 45 53 45 52 56 45 52 44 4f 43 ias OLESERVERDOC
1ea0: 2a 20 4c 50 4f 4c 45 53 45 52 56 45 52 44 4f 43 * LPOLESERVERDOC
1eb0: 3b 0a 0a 65 78 74 65 72 6e 20 28 57 69 6e 64 6f ;..extern (Windo
1ec0: 77 73 29 20 7b 0a 09 4f 4c 45 53 54 41 54 55 53 ws) {..OLESTATUS
1ed0: 20 4f 6c 65 44 65 6c 65 74 65 28 4c 50 4f 4c 45 OleDelete(LPOLE
1ee0: 4f 42 4a 45 43 54 29 3b 0a 09 4f 4c 45 53 54 41 OBJECT);..OLESTA
1ef0: 54 55 53 20 4f 6c 65 52 65 6c 65 61 73 65 28 4c TUS OleRelease(L
1f00: 50 4f 4c 45 4f 42 4a 45 43 54 29 3b 0a 09 4f 4c POLEOBJECT);..OL
1f10: 45 53 54 41 54 55 53 20 4f 6c 65 53 61 76 65 54 ESTATUS OleSaveT
1f20: 6f 53 74 72 65 61 6d 28 4c 50 4f 4c 45 4f 42 4a oStream(LPOLEOBJ
1f30: 45 43 54 2c 20 4c 50 4f 4c 45 53 54 52 45 41 4d ECT, LPOLESTREAM
1f40: 29 3b 0a 09 4f 4c 45 53 54 41 54 55 53 20 4f 6c );..OLESTATUS Ol
1f50: 65 45 71 75 61 6c 28 4c 50 4f 4c 45 4f 42 4a 45 eEqual(LPOLEOBJE
1f60: 43 54 2c 20 4c 50 4f 4c 45 4f 42 4a 45 43 54 29 CT, LPOLEOBJECT)
1f70: 3b 0a 09 4f 4c 45 53 54 41 54 55 53 20 4f 6c 65 ;..OLESTATUS Ole
1f80: 43 6f 70 79 54 6f 43 6c 69 70 62 6f 61 72 64 28 CopyToClipboard(
1f90: 4c 50 4f 4c 45 4f 42 4a 45 43 54 29 3b 0a 09 4f LPOLEOBJECT);..O
1fa0: 4c 45 53 54 41 54 55 53 20 4f 6c 65 53 65 74 48 LESTATUS OleSetH
1fb0: 6f 73 74 4e 61 6d 65 73 28 4c 50 4f 4c 45 4f 42 ostNames(LPOLEOB
1fc0: 4a 45 43 54 2c 20 4c 50 43 53 54 52 2c 20 4c 50 JECT, LPCSTR, LP
1fd0: 43 53 54 52 29 3b 0a 09 4f 4c 45 53 54 41 54 55 CSTR);..OLESTATU
1fe0: 53 20 4f 6c 65 53 65 74 54 61 72 67 65 74 44 65 S OleSetTargetDe
1ff0: 76 69 63 65 28 4c 50 4f 4c 45 4f 42 4a 45 43 54 vice(LPOLEOBJECT
2000: 2c 20 48 47 4c 4f 42 41 4c 29 3b 0a 09 4f 4c 45 , HGLOBAL);..OLE
2010: 53 54 41 54 55 53 20 4f 6c 65 53 65 74 42 6f 75 STATUS OleSetBou
2020: 6e 64 73 28 4c 50 4f 4c 45 4f 42 4a 45 43 54 2c nds(LPOLEOBJECT,
2030: 20 4c 50 43 52 45 43 54 29 3b 0a 09 4f 4c 45 53 LPCRECT);..OLES
2040: 54 41 54 55 53 20 4f 6c 65 53 65 74 43 6f 6c 6f TATUS OleSetColo
2050: 72 53 63 68 65 6d 65 28 4c 50 4f 4c 45 4f 42 4a rScheme(LPOLEOBJ
2060: 45 43 54 2c 20 43 50 74 72 21 28 4c 4f 47 50 41 ECT, CPtr!(LOGPA
2070: 4c 45 54 54 45 29 29 3b 0a 09 4f 4c 45 53 54 41 LETTE));..OLESTA
2080: 54 55 53 20 4f 6c 65 51 75 65 72 79 42 6f 75 6e TUS OleQueryBoun
2090: 64 73 28 4c 50 4f 4c 45 4f 42 4a 45 43 54 2c 20 ds(LPOLEOBJECT,
20a0: 52 45 43 54 2a 29 3b 0a 09 4f 4c 45 53 54 41 54 RECT*);..OLESTAT
20b0: 55 53 20 4f 6c 65 51 75 65 72 79 53 69 7a 65 28 US OleQuerySize(
20c0: 4c 50 4f 4c 45 4f 42 4a 45 43 54 2c 20 44 57 4f LPOLEOBJECT, DWO
20d0: 52 44 2a 29 3b 0a 09 4f 4c 45 53 54 41 54 55 53 RD*);..OLESTATUS
20e0: 20 4f 6c 65 44 72 61 77 28 4c 50 4f 4c 45 4f 42 OleDraw(LPOLEOB
20f0: 4a 45 43 54 2c 20 48 44 43 2c 20 4c 50 43 52 45 JECT, HDC, LPCRE
2100: 43 54 2c 20 4c 50 43 52 45 43 54 2c 20 48 44 43 CT, LPCRECT, HDC
2110: 29 3b 0a 09 4f 4c 45 53 54 41 54 55 53 20 4f 6c );..OLESTATUS Ol
2120: 65 51 75 65 72 79 4f 70 65 6e 28 4c 50 4f 4c 45 eQueryOpen(LPOLE
2130: 4f 42 4a 45 43 54 29 3b 0a 09 4f 4c 45 53 54 41 OBJECT);..OLESTA
2140: 54 55 53 20 4f 6c 65 41 63 74 69 76 61 74 65 28 TUS OleActivate(
2150: 4c 50 4f 4c 45 4f 42 4a 45 43 54 2c 20 55 49 4e LPOLEOBJECT, UIN
2160: 54 2c 20 42 4f 4f 4c 2c 20 42 4f 4f 4c 2c 20 48 T, BOOL, BOOL, H
2170: 57 4e 44 2c 20 4c 50 43 52 45 43 54 29 3b 0a 09 WND, LPCRECT);..
2180: 4f 4c 45 53 54 41 54 55 53 20 4f 6c 65 45 78 65 OLESTATUS OleExe
2190: 63 75 74 65 28 4c 50 4f 4c 45 4f 42 4a 45 43 54 cute(LPOLEOBJECT
21a0: 2c 20 48 47 4c 4f 42 41 4c 2c 20 55 49 4e 54 29 , HGLOBAL, UINT)
21b0: 3b 0a 09 4f 4c 45 53 54 41 54 55 53 20 4f 6c 65 ;..OLESTATUS Ole
21c0: 43 6c 6f 73 65 28 4c 50 4f 4c 45 4f 42 4a 45 43 Close(LPOLEOBJEC
21d0: 54 29 3b 0a 09 4f 4c 45 53 54 41 54 55 53 20 4f T);..OLESTATUS O
21e0: 6c 65 55 70 64 61 74 65 28 4c 50 4f 4c 45 4f 42 leUpdate(LPOLEOB
21f0: 4a 45 43 54 29 3b 0a 09 4f 4c 45 53 54 41 54 55 JECT);..OLESTATU
2200: 53 20 4f 6c 65 52 65 63 6f 6e 6e 65 63 74 28 4c S OleReconnect(L
2210: 50 4f 4c 45 4f 42 4a 45 43 54 29 3b 0a 09 4f 4c POLEOBJECT);..OL
2220: 45 53 54 41 54 55 53 20 4f 6c 65 47 65 74 4c 69 ESTATUS OleGetLi
2230: 6e 6b 55 70 64 61 74 65 4f 70 74 69 6f 6e 73 28 nkUpdateOptions(
2240: 4c 50 4f 4c 45 4f 42 4a 45 43 54 2c 20 4f 4c 45 LPOLEOBJECT, OLE
2250: 4f 50 54 5f 55 50 44 41 54 45 2a 29 3b 0a 09 4f OPT_UPDATE*);..O
2260: 4c 45 53 54 41 54 55 53 20 4f 6c 65 53 65 74 4c LESTATUS OleSetL
2270: 69 6e 6b 55 70 64 61 74 65 4f 70 74 69 6f 6e 73 inkUpdateOptions
2280: 28 4c 50 4f 4c 45 4f 42 4a 45 43 54 2c 20 4f 4c (LPOLEOBJECT, OL
2290: 45 4f 50 54 5f 55 50 44 41 54 45 29 3b 0a 09 76 EOPT_UPDATE);..v
22a0: 6f 69 64 2a 20 4f 6c 65 51 75 65 72 79 50 72 6f oid* OleQueryPro
22b0: 74 6f 63 6f 6c 28 4c 50 4f 4c 45 4f 42 4a 45 43 tocol(LPOLEOBJEC
22c0: 54 2c 20 4c 50 43 53 54 52 29 3b 0a 09 4f 4c 45 T, LPCSTR);..OLE
22d0: 53 54 41 54 55 53 20 4f 6c 65 51 75 65 72 79 52 STATUS OleQueryR
22e0: 65 6c 65 61 73 65 53 74 61 74 75 73 28 4c 50 4f eleaseStatus(LPO
22f0: 4c 45 4f 42 4a 45 43 54 29 3b 0a 09 4f 4c 45 53 LEOBJECT);..OLES
2300: 54 41 54 55 53 20 4f 6c 65 51 75 65 72 79 52 65 TATUS OleQueryRe
2310: 6c 65 61 73 65 45 72 72 6f 72 28 4c 50 4f 4c 45 leaseError(LPOLE
2320: 4f 42 4a 45 43 54 29 3b 0a 09 4f 4c 45 5f 52 45 OBJECT);..OLE_RE
2330: 4c 45 41 53 45 5f 4d 45 54 48 4f 44 20 4f 6c 65 LEASE_METHOD Ole
2340: 51 75 65 72 79 52 65 6c 65 61 73 65 4d 65 74 68 QueryReleaseMeth
2350: 6f 64 28 4c 50 4f 4c 45 4f 42 4a 45 43 54 29 3b od(LPOLEOBJECT);
2360: 0a 09 4f 4c 45 53 54 41 54 55 53 20 4f 6c 65 51 ..OLESTATUS OleQ
2370: 75 65 72 79 54 79 70 65 28 4c 50 4f 4c 45 4f 42 ueryType(LPOLEOB
2380: 4a 45 43 54 2c 20 4c 4f 4e 47 2a 29 3b 0a 09 44 JECT, LONG*);..D
2390: 57 4f 52 44 20 4f 6c 65 51 75 65 72 79 43 6c 69 WORD OleQueryCli
23a0: 65 6e 74 56 65 72 73 69 6f 6e 28 29 3b 0a 09 44 entVersion();..D
23b0: 57 4f 52 44 20 4f 6c 65 51 75 65 72 79 53 65 72 WORD OleQuerySer
23c0: 76 65 72 56 65 72 73 69 6f 6e 28 29 3b 0a 09 4f verVersion();..O
23d0: 4c 45 43 4c 49 50 46 4f 52 4d 41 54 20 4f 6c 65 LECLIPFORMAT Ole
23e0: 45 6e 75 6d 46 6f 72 6d 61 74 73 28 4c 50 4f 4c EnumFormats(LPOL
23f0: 45 4f 42 4a 45 43 54 2c 20 4f 4c 45 43 4c 49 50 EOBJECT, OLECLIP
2400: 46 4f 52 4d 41 54 29 3b 0a 09 4f 4c 45 53 54 41 FORMAT);..OLESTA
2410: 54 55 53 20 4f 6c 65 47 65 74 44 61 74 61 28 4c TUS OleGetData(L
2420: 50 4f 4c 45 4f 42 4a 45 43 54 2c 20 4f 4c 45 43 POLEOBJECT, OLEC
2430: 4c 49 50 46 4f 52 4d 41 54 2c 20 48 41 4e 44 4c LIPFORMAT, HANDL
2440: 45 2a 29 3b 0a 09 4f 4c 45 53 54 41 54 55 53 20 E*);..OLESTATUS
2450: 4f 6c 65 53 65 74 44 61 74 61 28 4c 50 4f 4c 45 OleSetData(LPOLE
2460: 4f 42 4a 45 43 54 2c 20 4f 4c 45 43 4c 49 50 46 OBJECT, OLECLIPF
2470: 4f 52 4d 41 54 2c 20 48 41 4e 44 4c 45 29 3b 0a ORMAT, HANDLE);.
2480: 09 4f 4c 45 53 54 41 54 55 53 20 4f 6c 65 51 75 .OLESTATUS OleQu
2490: 65 72 79 4f 75 74 4f 66 44 61 74 65 28 4c 50 4f eryOutOfDate(LPO
24a0: 4c 45 4f 42 4a 45 43 54 29 3b 0a 09 4f 4c 45 53 LEOBJECT);..OLES
24b0: 54 41 54 55 53 20 4f 6c 65 52 65 71 75 65 73 74 TATUS OleRequest
24c0: 44 61 74 61 28 4c 50 4f 4c 45 4f 42 4a 45 43 54 Data(LPOLEOBJECT
24d0: 2c 20 4f 4c 45 43 4c 49 50 46 4f 52 4d 41 54 29 , OLECLIPFORMAT)
24e0: 3b 0a 09 4f 4c 45 53 54 41 54 55 53 20 4f 6c 65 ;..OLESTATUS Ole
24f0: 51 75 65 72 79 4c 69 6e 6b 46 72 6f 6d 43 6c 69 QueryLinkFromCli
2500: 70 28 4c 50 43 53 54 52 2c 20 4f 4c 45 4f 50 54 p(LPCSTR, OLEOPT
2510: 5f 52 45 4e 44 45 52 2c 20 4f 4c 45 43 4c 49 50 _RENDER, OLECLIP
2520: 46 4f 52 4d 41 54 29 3b 0a 09 4f 4c 45 53 54 41 FORMAT);..OLESTA
2530: 54 55 53 20 4f 6c 65 51 75 65 72 79 43 72 65 61 TUS OleQueryCrea
2540: 74 65 46 72 6f 6d 43 6c 69 70 28 4c 50 43 53 54 teFromClip(LPCST
2550: 52 2c 20 4f 4c 45 4f 50 54 5f 52 45 4e 44 45 52 R, OLEOPT_RENDER
2560: 2c 20 4f 4c 45 43 4c 49 50 46 4f 52 4d 41 54 29 , OLECLIPFORMAT)
2570: 3b 0a 09 4f 4c 45 53 54 41 54 55 53 20 4f 6c 65 ;..OLESTATUS Ole
2580: 43 72 65 61 74 65 46 72 6f 6d 43 6c 69 70 28 4c CreateFromClip(L
2590: 50 43 53 54 52 2c 20 4c 50 4f 4c 45 43 4c 49 45 PCSTR, LPOLECLIE
25a0: 4e 54 2c 20 4c 48 43 4c 49 45 4e 54 44 4f 43 2c NT, LHCLIENTDOC,
25b0: 20 4c 50 43 53 54 52 2c 0a 09 20 20 4c 50 4f 4c LPCSTR,.. LPOL
25c0: 45 4f 42 4a 45 43 54 2a 2c 20 4f 4c 45 4f 50 54 EOBJECT*, OLEOPT
25d0: 5f 52 45 4e 44 45 52 2c 20 4f 4c 45 43 4c 49 50 _RENDER, OLECLIP
25e0: 46 4f 52 4d 41 54 29 3b 0a 09 4f 4c 45 53 54 41 FORMAT);..OLESTA
25f0: 54 55 53 20 4f 6c 65 43 72 65 61 74 65 4c 69 6e TUS OleCreateLin
2600: 6b 46 72 6f 6d 43 6c 69 70 28 4c 50 43 53 54 52 kFromClip(LPCSTR
2610: 2c 20 4c 50 4f 4c 45 43 4c 49 45 4e 54 2c 20 4c , LPOLECLIENT, L
2620: 48 43 4c 49 45 4e 54 44 4f 43 2c 20 4c 50 43 53 HCLIENTDOC, LPCS
2630: 54 52 2c 0a 09 20 20 4c 50 4f 4c 45 4f 42 4a 45 TR,.. LPOLEOBJE
2640: 43 54 2a 2c 20 4f 4c 45 4f 50 54 5f 52 45 4e 44 CT*, OLEOPT_REND
2650: 45 52 2c 20 4f 4c 45 43 4c 49 50 46 4f 52 4d 41 ER, OLECLIPFORMA
2660: 54 29 3b 0a 09 4f 4c 45 53 54 41 54 55 53 20 4f T);..OLESTATUS O
2670: 6c 65 43 72 65 61 74 65 46 72 6f 6d 46 69 6c 65 leCreateFromFile
2680: 28 4c 50 43 53 54 52 2c 20 4c 50 4f 4c 45 43 4c (LPCSTR, LPOLECL
2690: 49 45 4e 54 2c 20 4c 50 43 53 54 52 2c 20 4c 50 IENT, LPCSTR, LP
26a0: 43 53 54 52 2c 0a 09 20 20 4c 48 43 4c 49 45 4e CSTR,.. LHCLIEN
26b0: 54 44 4f 43 2c 20 4c 50 43 53 54 52 2c 20 4c 50 TDOC, LPCSTR, LP
26c0: 4f 4c 45 4f 42 4a 45 43 54 2a 2c 20 4f 4c 45 4f OLEOBJECT*, OLEO
26d0: 50 54 5f 52 45 4e 44 45 52 2c 20 4f 4c 45 43 4c PT_RENDER, OLECL
26e0: 49 50 46 4f 52 4d 41 54 29 3b 0a 09 4f 4c 45 53 IPFORMAT);..OLES
26f0: 54 41 54 55 53 20 4f 6c 65 43 72 65 61 74 65 4c TATUS OleCreateL
2700: 69 6e 6b 46 72 6f 6d 46 69 6c 65 28 4c 50 43 53 inkFromFile(LPCS
2710: 54 52 2c 20 4c 50 4f 4c 45 43 4c 49 45 4e 54 2c TR, LPOLECLIENT,
2720: 20 4c 50 43 53 54 52 2c 20 4c 50 43 53 54 52 2c LPCSTR, LPCSTR,
2730: 0a 09 20 20 4c 50 43 53 54 52 2c 20 4c 48 43 4c .. LPCSTR, LHCL
2740: 49 45 4e 54 44 4f 43 2c 20 4c 50 43 53 54 52 2c IENTDOC, LPCSTR,
2750: 20 4c 50 4f 4c 45 4f 42 4a 45 43 54 2a 2c 20 4f LPOLEOBJECT*, O
2760: 4c 45 4f 50 54 5f 52 45 4e 44 45 52 2c 20 4f 4c LEOPT_RENDER, OL
2770: 45 43 4c 49 50 46 4f 52 4d 41 54 29 3b 0a 09 4f ECLIPFORMAT);..O
2780: 4c 45 53 54 41 54 55 53 20 4f 6c 65 4c 6f 61 64 LESTATUS OleLoad
2790: 46 72 6f 6d 53 74 72 65 61 6d 28 4c 50 4f 4c 45 FromStream(LPOLE
27a0: 53 54 52 45 41 4d 2c 20 4c 50 43 53 54 52 2c 20 STREAM, LPCSTR,
27b0: 4c 50 4f 4c 45 43 4c 49 45 4e 54 2c 20 4c 48 43 LPOLECLIENT, LHC
27c0: 4c 49 45 4e 54 44 4f 43 2c 0a 09 20 20 4c 50 43 LIENTDOC,.. LPC
27d0: 53 54 52 2c 20 4c 50 4f 4c 45 4f 42 4a 45 43 54 STR, LPOLEOBJECT
27e0: 2a 29 3b 0a 09 4f 4c 45 53 54 41 54 55 53 20 4f *);..OLESTATUS O
27f0: 6c 65 43 72 65 61 74 65 28 4c 50 43 53 54 52 2c leCreate(LPCSTR,
2800: 20 4c 50 4f 4c 45 43 4c 49 45 4e 54 2c 20 4c 50 LPOLECLIENT, LP
2810: 43 53 54 52 2c 20 4c 48 43 4c 49 45 4e 54 44 4f CSTR, LHCLIENTDO
2820: 43 2c 20 4c 50 43 53 54 52 2c 0a 09 20 20 4c 50 C, LPCSTR,.. LP
2830: 4f 4c 45 4f 42 4a 45 43 54 2a 2c 20 4f 4c 45 4f OLEOBJECT*, OLEO
2840: 50 54 5f 52 45 4e 44 45 52 2c 20 4f 4c 45 43 4c PT_RENDER, OLECL
2850: 49 50 46 4f 52 4d 41 54 29 3b 0a 09 4f 4c 45 53 IPFORMAT);..OLES
2860: 54 41 54 55 53 20 4f 6c 65 43 72 65 61 74 65 49 TATUS OleCreateI
2870: 6e 76 69 73 69 62 6c 65 28 4c 50 43 53 54 52 2c nvisible(LPCSTR,
2880: 20 4c 50 4f 4c 45 43 4c 49 45 4e 54 2c 20 4c 50 LPOLECLIENT, LP
2890: 43 53 54 52 2c 20 4c 48 43 4c 49 45 4e 54 44 4f CSTR, LHCLIENTDO
28a0: 43 2c 0a 09 20 20 4c 50 43 53 54 52 2c 20 4c 50 C,.. LPCSTR, LP
28b0: 4f 4c 45 4f 42 4a 45 43 54 2a 2c 20 4f 4c 45 4f OLEOBJECT*, OLEO
28c0: 50 54 5f 52 45 4e 44 45 52 2c 20 4f 4c 45 43 4c PT_RENDER, OLECL
28d0: 49 50 46 4f 52 4d 41 54 2c 20 42 4f 4f 4c 29 3b IPFORMAT, BOOL);
28e0: 0a 09 4f 4c 45 53 54 41 54 55 53 20 4f 6c 65 43 ..OLESTATUS OleC
28f0: 72 65 61 74 65 46 72 6f 6d 54 65 6d 70 6c 61 74 reateFromTemplat
2900: 65 28 4c 50 43 53 54 52 2c 20 4c 50 4f 4c 45 43 e(LPCSTR, LPOLEC
2910: 4c 49 45 4e 54 2c 20 4c 50 43 53 54 52 2c 20 4c LIENT, LPCSTR, L
2920: 48 43 4c 49 45 4e 54 44 4f 43 2c 0a 09 20 20 4c HCLIENTDOC,.. L
2930: 50 43 53 54 52 2c 20 4c 50 4f 4c 45 4f 42 4a 45 PCSTR, LPOLEOBJE
2940: 43 54 2a 2c 20 4f 4c 45 4f 50 54 5f 52 45 4e 44 CT*, OLEOPT_REND
2950: 45 52 2c 20 4f 4c 45 43 4c 49 50 46 4f 52 4d 41 ER, OLECLIPFORMA
2960: 54 29 3b 0a 09 4f 4c 45 53 54 41 54 55 53 20 4f T);..OLESTATUS O
2970: 6c 65 43 6c 6f 6e 65 28 4c 50 4f 4c 45 4f 42 4a leClone(LPOLEOBJ
2980: 45 43 54 2c 20 4c 50 4f 4c 45 43 4c 49 45 4e 54 ECT, LPOLECLIENT
2990: 2c 20 4c 48 43 4c 49 45 4e 54 44 4f 43 2c 20 4c , LHCLIENTDOC, L
29a0: 50 43 53 54 52 2c 0a 09 20 20 4c 50 4f 4c 45 4f PCSTR,.. LPOLEO
29b0: 42 4a 45 43 54 2a 29 3b 0a 09 4f 4c 45 53 54 41 BJECT*);..OLESTA
29c0: 54 55 53 20 4f 6c 65 43 6f 70 79 46 72 6f 6d 4c TUS OleCopyFromL
29d0: 69 6e 6b 28 4c 50 4f 4c 45 4f 42 4a 45 43 54 2c ink(LPOLEOBJECT,
29e0: 20 4c 50 43 53 54 52 2c 20 4c 50 4f 4c 45 43 4c LPCSTR, LPOLECL
29f0: 49 45 4e 54 2c 20 4c 48 43 4c 49 45 4e 54 44 4f IENT, LHCLIENTDO
2a00: 43 2c 0a 09 20 20 4c 50 43 53 54 52 2c 20 4c 50 C,.. LPCSTR, LP
2a10: 4f 4c 45 4f 42 4a 45 43 54 2a 29 3b 0a 09 4f 4c OLEOBJECT*);..OL
2a20: 45 53 54 41 54 55 53 20 4f 6c 65 4f 62 6a 65 63 ESTATUS OleObjec
2a30: 74 43 6f 6e 76 65 72 74 28 4c 50 4f 4c 45 4f 42 tConvert(LPOLEOB
2a40: 4a 45 43 54 2c 20 4c 50 43 53 54 52 2c 20 4c 50 JECT, LPCSTR, LP
2a50: 4f 4c 45 43 4c 49 45 4e 54 2c 20 4c 48 43 4c 49 OLECLIENT, LHCLI
2a60: 45 4e 54 44 4f 43 2c 0a 09 20 20 4c 50 43 53 54 ENTDOC,.. LPCST
2a70: 52 2c 20 4c 50 4f 4c 45 4f 42 4a 45 43 54 2a 29 R, LPOLEOBJECT*)
2a80: 3b 0a 09 4f 4c 45 53 54 41 54 55 53 20 4f 6c 65 ;..OLESTATUS Ole
2a90: 52 65 6e 61 6d 65 28 4c 50 4f 4c 45 4f 42 4a 45 Rename(LPOLEOBJE
2aa0: 43 54 2c 20 4c 50 43 53 54 52 29 3b 0a 09 4f 4c CT, LPCSTR);..OL
2ab0: 45 53 54 41 54 55 53 20 4f 6c 65 51 75 65 72 79 ESTATUS OleQuery
2ac0: 4e 61 6d 65 28 4c 50 4f 4c 45 4f 42 4a 45 43 54 Name(LPOLEOBJECT
2ad0: 2c 20 4c 50 53 54 52 2c 20 55 49 4e 54 2a 29 3b , LPSTR, UINT*);
2ae0: 0a 09 4f 4c 45 53 54 41 54 55 53 20 4f 6c 65 52 ..OLESTATUS OleR
2af0: 65 76 6f 6b 65 4f 62 6a 65 63 74 28 4c 50 4f 4c evokeObject(LPOL
2b00: 45 43 4c 49 45 4e 54 29 3b 0a 09 42 4f 4f 4c 20 ECLIENT);..BOOL
2b10: 4f 6c 65 49 73 44 63 4d 65 74 61 28 48 44 43 29 OleIsDcMeta(HDC)
2b20: 3b 0a 09 4f 4c 45 53 54 41 54 55 53 20 4f 6c 65 ;..OLESTATUS Ole
2b30: 52 65 67 69 73 74 65 72 43 6c 69 65 6e 74 44 6f RegisterClientDo
2b40: 63 28 4c 50 43 53 54 52 2c 20 4c 50 43 53 54 52 c(LPCSTR, LPCSTR
2b50: 2c 20 4c 4f 4e 47 2c 20 4c 48 43 4c 49 45 4e 54 , LONG, LHCLIENT
2b60: 44 4f 43 2a 29 3b 0a 09 4f 4c 45 53 54 41 54 55 DOC*);..OLESTATU
2b70: 53 20 4f 6c 65 52 65 76 6f 6b 65 43 6c 69 65 6e S OleRevokeClien
2b80: 74 44 6f 63 28 4c 48 43 4c 49 45 4e 54 44 4f 43 tDoc(LHCLIENTDOC
2b90: 29 3b 0a 09 4f 4c 45 53 54 41 54 55 53 20 4f 6c );..OLESTATUS Ol
2ba0: 65 52 65 6e 61 6d 65 43 6c 69 65 6e 74 44 6f 63 eRenameClientDoc
2bb0: 28 4c 48 43 4c 49 45 4e 54 44 4f 43 2c 20 4c 50 (LHCLIENTDOC, LP
2bc0: 43 53 54 52 29 3b 0a 09 4f 4c 45 53 54 41 54 55 CSTR);..OLESTATU
2bd0: 53 20 4f 6c 65 52 65 76 65 72 74 43 6c 69 65 6e S OleRevertClien
2be0: 74 44 6f 63 28 4c 48 43 4c 49 45 4e 54 44 4f 43 tDoc(LHCLIENTDOC
2bf0: 29 3b 0a 09 4f 4c 45 53 54 41 54 55 53 20 4f 6c );..OLESTATUS Ol
2c00: 65 53 61 76 65 64 43 6c 69 65 6e 74 44 6f 63 28 eSavedClientDoc(
2c10: 4c 48 43 4c 49 45 4e 54 44 4f 43 29 3b 0a 09 4f LHCLIENTDOC);..O
2c20: 4c 45 53 54 41 54 55 53 20 4f 6c 65 45 6e 75 6d LESTATUS OleEnum
2c30: 4f 62 6a 65 63 74 73 28 4c 48 43 4c 49 45 4e 54 Objects(LHCLIENT
2c40: 44 4f 43 2c 20 4c 50 4f 4c 45 4f 42 4a 45 43 54 DOC, LPOLEOBJECT
2c50: 2a 29 3b 0a 09 4f 4c 45 53 54 41 54 55 53 20 4f *);..OLESTATUS O
2c60: 6c 65 52 65 67 69 73 74 65 72 53 65 72 76 65 72 leRegisterServer
2c70: 28 4c 50 43 53 54 52 2c 20 4c 50 4f 4c 45 53 45 (LPCSTR, LPOLESE
2c80: 52 56 45 52 2c 20 4c 48 53 45 52 56 45 52 2a 2c RVER, LHSERVER*,
2c90: 20 48 49 4e 53 54 41 4e 43 45 2c 0a 09 20 20 4f HINSTANCE,.. O
2ca0: 4c 45 5f 53 45 52 56 45 52 5f 55 53 45 29 3b 0a LE_SERVER_USE);.
2cb0: 09 4f 4c 45 53 54 41 54 55 53 20 4f 6c 65 52 65 .OLESTATUS OleRe
2cc0: 76 6f 6b 65 53 65 72 76 65 72 28 4c 48 53 45 52 vokeServer(LHSER
2cd0: 56 45 52 29 3b 0a 09 4f 4c 45 53 54 41 54 55 53 VER);..OLESTATUS
2ce0: 20 4f 6c 65 42 6c 6f 63 6b 53 65 72 76 65 72 28 OleBlockServer(
2cf0: 4c 48 53 45 52 56 45 52 29 3b 0a 09 4f 4c 45 53 LHSERVER);..OLES
2d00: 54 41 54 55 53 20 4f 6c 65 55 6e 62 6c 6f 63 6b TATUS OleUnblock
2d10: 53 65 72 76 65 72 28 4c 48 53 45 52 56 45 52 2c Server(LHSERVER,
2d20: 20 42 4f 4f 4c 2a 29 3b 0a 09 4f 4c 45 53 54 41 BOOL*);..OLESTA
2d30: 54 55 53 20 4f 6c 65 4c 6f 63 6b 53 65 72 76 65 TUS OleLockServe
2d40: 72 28 4c 50 4f 4c 45 4f 42 4a 45 43 54 2c 20 4c r(LPOLEOBJECT, L
2d50: 48 53 45 52 56 45 52 2a 29 3b 0a 09 4f 4c 45 53 HSERVER*);..OLES
2d60: 54 41 54 55 53 20 4f 6c 65 55 6e 6c 6f 63 6b 53 TATUS OleUnlockS
2d70: 65 72 76 65 72 28 4c 48 53 45 52 56 45 52 29 3b erver(LHSERVER);
2d80: 0a 09 4f 4c 45 53 54 41 54 55 53 20 4f 6c 65 52 ..OLESTATUS OleR
2d90: 65 67 69 73 74 65 72 53 65 72 76 65 72 44 6f 63 egisterServerDoc
2da0: 28 4c 48 53 45 52 56 45 52 2c 20 4c 50 43 53 54 (LHSERVER, LPCST
2db0: 52 2c 20 4c 50 4f 4c 45 53 45 52 56 45 52 44 4f R, LPOLESERVERDO
2dc0: 43 2c 0a 09 20 20 4c 48 53 45 52 56 45 52 44 4f C,.. LHSERVERDO
2dd0: 43 2a 29 3b 0a 09 4f 4c 45 53 54 41 54 55 53 20 C*);..OLESTATUS
2de0: 4f 6c 65 52 65 76 6f 6b 65 53 65 72 76 65 72 44 OleRevokeServerD
2df0: 6f 63 28 4c 48 53 45 52 56 45 52 44 4f 43 29 3b oc(LHSERVERDOC);
2e00: 0a 09 4f 4c 45 53 54 41 54 55 53 20 4f 6c 65 52 ..OLESTATUS OleR
2e10: 65 6e 61 6d 65 53 65 72 76 65 72 44 6f 63 28 4c enameServerDoc(L
2e20: 48 53 45 52 56 45 52 44 4f 43 2c 20 4c 50 43 53 HSERVERDOC, LPCS
2e30: 54 52 29 3b 0a 09 4f 4c 45 53 54 41 54 55 53 20 TR);..OLESTATUS
2e40: 4f 6c 65 52 65 76 65 72 74 53 65 72 76 65 72 44 OleRevertServerD
2e50: 6f 63 28 4c 48 53 45 52 56 45 52 44 4f 43 29 3b oc(LHSERVERDOC);
2e60: 0a 09 4f 4c 45 53 54 41 54 55 53 20 4f 6c 65 53 ..OLESTATUS OleS
2e70: 61 76 65 64 53 65 72 76 65 72 44 6f 63 28 4c 48 avedServerDoc(LH
2e80: 53 45 52 56 45 52 44 4f 43 29 3b 0a 7d 0a SERVERDOC);.}.