Artifact d49872cd6ba219cd2ba773b6441e9cafd987c501:
- File
src/win32/oleauto.d
-
2015-05-05 06:49:05
- part of checkin
[9b639cf2d6]
on branch trunk
- Working version for update to 2.067.
The problem was __gshared. Replacing it with TLS fixed the issue. Remaining problem is that "hack.d"'s CloseHandle hack is not working anymore.
(user: kinaba) [annotate]
-
2015-05-05 06:49:05
- part of checkin
[9b639cf2d6]
on branch trunk
- Working version for update to 2.067.
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 0d 0a 2a 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 6c 65 61 75 oleau
0070: 74 6f 2e 64 20 20 20 20 20 20 20 20 20 20 20 20 to.d
0080: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0090: 20 20 20 2a 0d 0a 2a 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 20 20 2a 0d *.
00e0: 0a 2a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .*
00f0: 20 20 20 20 20 20 20 20 20 57 69 6e 64 6f 77 73 Windows
0100: 20 41 50 49 20 68 65 61 64 65 72 20 6d 6f 64 75 API header modu
0110: 6c 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20 le
0120: 20 20 20 20 20 20 20 20 20 2a 0d 0a 2a 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: 20 20 20 20 2a 0d 0a 2a 20 20 20 20 20 20 20 20 *..*
0180: 20 20 20 20 20 20 20 20 20 54 72 61 6e 73 6c 61 Transla
0190: 74 65 64 20 66 72 6f 6d 20 4d 69 6e 47 57 20 57 ted from MinGW W
01a0: 69 6e 64 6f 77 73 20 68 65 61 64 65 72 73 20 20 indows headers
01b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2a *
01c0: 0d 0a 2a 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 20 20 20 20 20 20 2a 0d 0a 2a 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 50 6c 61 63 65 64 20 69 6e 74 6f Placed into
0230: 20 70 75 62 6c 69 63 20 64 6f 6d 61 69 6e 20 20 public domain
0240: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0250: 20 20 20 20 20 2a 0d 0a 5c 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 2a 2a 2a 2a 2a 2a 2a 2a ****************
02a0: 2f 0d 0a 6d 6f 64 75 6c 65 20 77 69 6e 33 32 2e /..module win32.
02b0: 6f 6c 65 61 75 74 6f 3b 0d 0a 70 72 61 67 6d 61 oleauto;..pragma
02c0: 28 6c 69 62 2c 20 22 6f 6c 65 61 75 74 33 32 22 (lib, "oleaut32"
02d0: 29 3b 0d 0a 0d 0a 69 6d 70 6f 72 74 20 77 69 6e );....import win
02e0: 33 32 2e 6f 61 69 64 6c 3b 0d 0a 70 72 69 76 61 32.oaidl;..priva
02f0: 74 65 20 69 6d 70 6f 72 74 20 77 69 6e 33 32 2e te import win32.
0300: 62 61 73 65 74 79 70 73 2c 20 77 69 6e 33 32 2e basetyps, win32.
0310: 75 6e 6b 6e 77 6e 2c 20 77 69 6e 33 32 2e 77 69 unknwn, win32.wi
0320: 6e 64 65 66 2c 20 77 69 6e 33 32 2e 77 74 79 70 ndef, win32.wtyp
0330: 65 73 3b 0d 0a 70 72 69 76 61 74 65 20 69 6d 70 es;..private imp
0340: 6f 72 74 20 77 69 6e 33 32 2e 77 69 6e 62 61 73 ort win32.winbas
0350: 65 3b 20 2f 2f 20 66 6f 72 20 53 59 53 54 45 4d e; // for SYSTEM
0360: 54 49 4d 45 0d 0a 0d 0a 61 6c 69 67 6e 28 38 29 TIME....align(8)
0370: 3a 0d 0a 63 6f 6e 73 74 20 53 54 44 4f 4c 45 5f :..const STDOLE_
0380: 4d 41 4a 4f 52 56 45 52 4e 55 4d 20 3d 20 31 3b MAJORVERNUM = 1;
0390: 0d 0a 63 6f 6e 73 74 20 53 54 44 4f 4c 45 5f 4d ..const STDOLE_M
03a0: 49 4e 4f 52 56 45 52 4e 55 4d 20 3d 20 30 3b 0d INORVERNUM = 0;.
03b0: 0a 63 6f 6e 73 74 20 53 54 44 4f 4c 45 5f 4c 43 .const STDOLE_LC
03c0: 49 44 20 3d 20 30 3b 0d 0a 0d 0a 63 6f 6e 73 74 ID = 0;....const
03d0: 20 56 41 52 49 41 4e 54 5f 4e 4f 56 41 4c 55 45 VARIANT_NOVALUE
03e0: 50 52 4f 50 20 3d 20 30 78 30 31 3b 0d 0a 63 6f PROP = 0x01;..co
03f0: 6e 73 74 20 56 41 52 49 41 4e 54 5f 41 4c 50 48 nst VARIANT_ALPH
0400: 41 42 4f 4f 4c 20 3d 20 30 78 30 32 3b 0d 0a 63 ABOOL = 0x02;..c
0410: 6f 6e 73 74 20 56 41 52 49 41 4e 54 5f 4e 4f 55 onst VARIANT_NOU
0420: 53 45 4f 56 45 52 52 49 44 45 20 3d 20 30 78 30 SEOVERRIDE = 0x0
0430: 34 3b 0d 0a 63 6f 6e 73 74 20 56 41 52 49 41 4e 4;..const VARIAN
0440: 54 5f 4c 4f 43 41 4c 42 4f 4f 4c 20 3d 20 30 78 T_LOCALBOOL = 0x
0450: 30 38 3b 0d 0a 0d 0a 63 6f 6e 73 74 20 56 41 52 08;....const VAR
0460: 5f 54 49 4d 45 56 41 4c 55 45 4f 4e 4c 59 20 3d _TIMEVALUEONLY =
0470: 20 30 78 30 30 30 31 3b 0d 0a 63 6f 6e 73 74 20 0x0001;..const
0480: 56 41 52 5f 44 41 54 45 56 41 4c 55 45 4f 4e 4c VAR_DATEVALUEONL
0490: 59 20 3d 20 30 78 30 30 30 32 3b 0d 0a 63 6f 6e Y = 0x0002;..con
04a0: 73 74 20 56 41 52 5f 56 41 4c 49 44 44 41 54 45 st VAR_VALIDDATE
04b0: 20 3d 20 30 78 30 30 30 34 3b 0d 0a 63 6f 6e 73 = 0x0004;..cons
04c0: 74 20 56 41 52 5f 43 41 4c 45 4e 44 41 52 5f 48 t VAR_CALENDAR_H
04d0: 49 4a 52 49 20 3d 20 30 78 30 30 30 38 3b 0d 0a IJRI = 0x0008;..
04e0: 63 6f 6e 73 74 20 56 41 52 5f 4c 4f 43 41 4c 42 const VAR_LOCALB
04f0: 4f 4f 4c 20 3d 20 30 78 30 30 31 30 3b 0d 0a 63 OOL = 0x0010;..c
0500: 6f 6e 73 74 20 56 41 52 5f 46 4f 52 4d 41 54 5f onst VAR_FORMAT_
0510: 4e 4f 53 55 42 53 54 49 54 55 54 45 20 3d 20 30 NOSUBSTITUTE = 0
0520: 78 30 30 32 30 3b 0d 0a 63 6f 6e 73 74 20 56 41 x0020;..const VA
0530: 52 5f 46 4f 55 52 44 49 47 49 54 59 45 41 52 53 R_FOURDIGITYEARS
0540: 20 3d 20 30 78 30 30 34 30 3b 0d 0a 63 6f 6e 73 = 0x0040;..cons
0550: 74 20 56 41 52 5f 43 41 4c 45 4e 44 41 52 5f 54 t VAR_CALENDAR_T
0560: 48 41 49 20 3d 20 30 78 30 30 38 30 3b 0d 0a 63 HAI = 0x0080;..c
0570: 6f 6e 73 74 20 56 41 52 5f 43 41 4c 45 4e 44 41 onst VAR_CALENDA
0580: 52 5f 47 52 45 47 4f 52 49 41 4e 20 3d 20 30 78 R_GREGORIAN = 0x
0590: 30 31 30 30 3b 0d 0a 0d 0a 63 6f 6e 73 74 20 4d 0100;....const M
05a0: 45 4d 42 45 52 49 44 5f 4e 49 4c 20 3d 20 44 49 EMBERID_NIL = DI
05b0: 53 50 49 44 5f 55 4e 4b 4e 4f 57 4e 3b 0d 0a 63 SPID_UNKNOWN;..c
05c0: 6f 6e 73 74 20 49 44 5f 44 45 46 41 55 4c 54 49 onst ID_DEFAULTI
05d0: 4e 53 54 20 3d 20 20 2d 32 3b 0d 0a 63 6f 6e 73 NST = -2;..cons
05e0: 74 20 44 49 53 50 41 54 43 48 5f 4d 45 54 48 4f t DISPATCH_METHO
05f0: 44 20 3d 20 31 3b 0d 0a 63 6f 6e 73 74 20 44 49 D = 1;..const DI
0600: 53 50 41 54 43 48 5f 50 52 4f 50 45 52 54 59 47 SPATCH_PROPERTYG
0610: 45 54 20 3d 20 32 3b 0d 0a 63 6f 6e 73 74 20 44 ET = 2;..const D
0620: 49 53 50 41 54 43 48 5f 50 52 4f 50 45 52 54 59 ISPATCH_PROPERTY
0630: 50 55 54 20 3d 20 34 3b 0d 0a 63 6f 6e 73 74 20 PUT = 4;..const
0640: 44 49 53 50 41 54 43 48 5f 50 52 4f 50 45 52 54 DISPATCH_PROPERT
0650: 59 50 55 54 52 45 46 20 3d 20 38 3b 0d 0a 0d 0a YPUTREF = 8;....
0660: 2f 2f 55 4c 4f 4e 47 20 4c 48 61 73 68 56 61 6c //ULONG LHashVal
0670: 4f 66 4e 61 6d 65 28 4c 43 49 44 20 6c 2c 20 4f OfName(LCID l, O
0680: 4c 45 43 48 41 52 2a 20 6e 29 20 7b 20 72 65 74 LECHAR* n) { ret
0690: 75 72 6e 20 4c 48 61 73 68 56 61 6c 4f 66 4e 61 urn LHashValOfNa
06a0: 6d 65 53 79 73 28 53 59 53 4b 49 4e 44 2e 53 59 meSys(SYSKIND.SY
06b0: 53 5f 57 49 4e 33 32 2c 20 6c 2c 20 6e 29 3b 20 S_WIN32, l, n);
06c0: 7d 0d 0a 0d 0a 2f 2f 20 44 41 43 3a 20 54 68 65 }....// DAC: The
06d0: 73 65 20 61 72 65 6e 27 74 20 69 6e 20 74 68 65 se aren't in the
06e0: 20 32 30 30 33 20 53 44 4b 2e 0d 0a 2f 2f 4d 41 2003 SDK...//MA
06f0: 43 52 4f 20 23 64 65 66 69 6e 65 20 57 48 61 73 CRO #define WHas
0700: 68 56 61 6c 4f 66 4c 48 61 73 68 56 61 6c 28 68 hValOfLHashVal(h
0710: 29 20 28 28 75 6e 73 69 67 6e 65 64 20 73 68 6f ) ((unsigned sho
0720: 72 74 29 28 30 78 30 30 30 30 66 66 66 66 26 28 rt)(0x0000ffff&(
0730: 68 29 29 29 0d 0a 2f 2f 4d 41 43 52 4f 20 23 64 h)))..//MACRO #d
0740: 65 66 69 6e 65 20 49 73 48 61 73 68 56 61 6c 43 efine IsHashValC
0750: 6f 6d 70 61 74 69 62 6c 65 28 68 31 2c 20 68 32 ompatible(h1, h2
0760: 29 20 28 28 42 4f 4f 4c 29 28 28 30 78 30 30 66 ) ((BOOL)((0x00f
0770: 66 30 30 30 30 26 28 68 31 29 29 3d 3d 28 30 78 f0000&(h1))==(0x
0780: 30 30 66 66 30 30 30 30 26 28 68 32 29 29 29 29 00ff0000&(h2))))
0790: 0d 0a 0d 0a 65 6e 75 6d 20 7b 0d 0a 09 41 43 54 ....enum {...ACT
07a0: 49 56 45 4f 42 4a 45 43 54 5f 53 54 52 4f 4e 47 IVEOBJECT_STRONG
07b0: 20 3d 20 30 2c 0d 0a 09 41 43 54 49 56 45 4f 42 = 0,...ACTIVEOB
07c0: 4a 45 43 54 5f 57 45 41 4b 20 20 20 3d 20 31 0d JECT_WEAK = 1.
07d0: 0a 7d 0d 0a 0d 0a 2f 2f 20 44 41 43 3a 20 54 68 .}....// DAC: Th
07e0: 65 73 65 20 73 65 65 6d 20 74 6f 20 62 65 20 69 ese seem to be i
07f0: 72 72 65 6c 65 76 61 6e 74 20 66 6f 72 20 44 2e rrelevant for D.
0800: 0d 0a 2f 2f 23 64 65 66 69 6e 65 20 56 5f 55 4e ..//#define V_UN
0810: 49 4f 4e 28 58 2c 20 59 29 20 28 28 58 29 2d 3e ION(X, Y) ((X)->
0820: 59 29 0d 0a 2f 2f 23 64 65 66 69 6e 65 20 56 5f Y)..//#define V_
0830: 56 54 28 58 29 20 28 28 58 29 2d 3e 76 74 29 0d VT(X) ((X)->vt).
0840: 0a 2f 2f 23 64 65 66 69 6e 65 20 56 5f 42 4f 4f .//#define V_BOO
0850: 4c 28 58 29 20 56 5f 55 4e 49 4f 4e 28 58 2c 20 L(X) V_UNION(X,
0860: 62 6f 6f 6c 56 61 6c 29 0d 0a 2f 2f 23 64 65 66 boolVal)..//#def
0870: 69 6e 65 20 56 5f 49 53 42 59 52 45 46 28 58 29 ine V_ISBYREF(X)
0880: 20 28 56 5f 56 54 28 58 29 26 56 54 5f 42 59 52 (V_VT(X)&VT_BYR
0890: 45 46 29 0d 0a 2f 2f 23 64 65 66 69 6e 65 20 56 EF)..//#define V
08a0: 5f 49 53 41 52 52 41 59 28 58 29 20 28 56 5f 56 _ISARRAY(X) (V_V
08b0: 54 28 58 29 26 56 54 5f 41 52 52 41 59 29 0d 0a T(X)&VT_ARRAY)..
08c0: 2f 2f 23 64 65 66 69 6e 65 20 56 5f 49 53 56 45 //#define V_ISVE
08d0: 43 54 4f 52 28 58 29 20 28 56 5f 56 54 28 58 29 CTOR(X) (V_VT(X)
08e0: 26 56 54 5f 56 45 43 54 4f 52 29 0d 0a 2f 2f 23 &VT_VECTOR)..//#
08f0: 64 65 66 69 6e 65 20 56 5f 4e 4f 4e 45 28 58 29 define V_NONE(X)
0900: 20 56 5f 49 32 28 58 29 0d 0a 2f 2f 23 64 65 66 V_I2(X)..//#def
0910: 69 6e 65 20 56 5f 55 49 31 28 58 29 20 56 5f 55 ine V_UI1(X) V_U
0920: 4e 49 4f 4e 28 58 2c 20 62 56 61 6c 29 0d 0a 2f NION(X, bVal)../
0930: 2f 23 64 65 66 69 6e 65 20 56 5f 55 49 31 52 45 /#define V_UI1RE
0940: 46 28 58 29 20 56 5f 55 4e 49 4f 4e 28 58 2c 20 F(X) V_UNION(X,
0950: 70 62 56 61 6c 29 0d 0a 2f 2f 23 64 65 66 69 6e pbVal)..//#defin
0960: 65 20 56 5f 49 32 28 58 29 20 56 5f 55 4e 49 4f e V_I2(X) V_UNIO
0970: 4e 28 58 2c 20 69 56 61 6c 29 0d 0a 2f 2f 23 64 N(X, iVal)..//#d
0980: 65 66 69 6e 65 20 56 5f 55 49 32 28 58 29 20 56 efine V_UI2(X) V
0990: 5f 55 4e 49 4f 4e 28 58 2c 20 75 69 56 61 6c 29 _UNION(X, uiVal)
09a0: 0d 0a 2f 2f 23 64 65 66 69 6e 65 20 56 5f 49 32 ..//#define V_I2
09b0: 52 45 46 28 58 29 20 56 5f 55 4e 49 4f 4e 28 58 REF(X) V_UNION(X
09c0: 2c 20 70 69 56 61 6c 29 0d 0a 2f 2f 23 64 65 66 , piVal)..//#def
09d0: 69 6e 65 20 56 5f 49 34 28 58 29 20 56 5f 55 4e ine V_I4(X) V_UN
09e0: 49 4f 4e 28 58 2c 20 6c 56 61 6c 29 0d 0a 2f 2f ION(X, lVal)..//
09f0: 23 64 65 66 69 6e 65 20 56 5f 55 49 34 28 58 29 #define V_UI4(X)
0a00: 20 56 5f 55 4e 49 4f 4e 28 58 2c 20 75 6c 56 61 V_UNION(X, ulVa
0a10: 6c 29 0d 0a 2f 2f 23 64 65 66 69 6e 65 20 56 5f l)..//#define V_
0a20: 49 34 52 45 46 28 58 29 20 56 5f 55 4e 49 4f 4e I4REF(X) V_UNION
0a30: 28 58 2c 20 70 6c 56 61 6c 29 0d 0a 2f 2f 23 64 (X, plVal)..//#d
0a40: 65 66 69 6e 65 20 56 5f 55 49 34 52 45 46 28 58 efine V_UI4REF(X
0a50: 29 20 56 5f 55 4e 49 4f 4e 28 58 2c 20 70 75 6c ) V_UNION(X, pul
0a60: 56 61 6c 29 0d 0a 2f 2f 23 64 65 66 69 6e 65 20 Val)..//#define
0a70: 56 5f 49 38 28 58 29 20 56 5f 55 4e 49 4f 4e 28 V_I8(X) V_UNION(
0a80: 58 2c 20 6c 6c 56 61 6c 29 0d 0a 2f 2f 23 64 65 X, llVal)..//#de
0a90: 66 69 6e 65 20 56 5f 55 49 38 28 58 29 20 56 5f fine V_UI8(X) V_
0aa0: 55 4e 49 4f 4e 28 58 2c 20 75 6c 6c 56 61 6c 29 UNION(X, ullVal)
0ab0: 0d 0a 2f 2f 23 64 65 66 69 6e 65 20 56 5f 49 38 ..//#define V_I8
0ac0: 52 45 46 28 58 29 20 56 5f 55 4e 49 4f 4e 28 58 REF(X) V_UNION(X
0ad0: 2c 20 70 6c 6c 56 61 6c 29 0d 0a 2f 2f 23 64 65 , pllVal)..//#de
0ae0: 66 69 6e 65 20 56 5f 55 49 38 52 45 46 28 58 29 fine V_UI8REF(X)
0af0: 20 56 5f 55 4e 49 4f 4e 28 58 2c 20 70 75 6c 6c V_UNION(X, pull
0b00: 56 61 6c 29 0d 0a 2f 2f 23 64 65 66 69 6e 65 20 Val)..//#define
0b10: 56 5f 52 34 28 58 29 20 56 5f 55 4e 49 4f 4e 28 V_R4(X) V_UNION(
0b20: 58 2c 20 66 6c 74 56 61 6c 29 0d 0a 2f 2f 23 64 X, fltVal)..//#d
0b30: 65 66 69 6e 65 20 56 5f 52 34 52 45 46 28 58 29 efine V_R4REF(X)
0b40: 20 56 5f 55 4e 49 4f 4e 28 58 2c 20 70 66 6c 74 V_UNION(X, pflt
0b50: 56 61 6c 29 0d 0a 2f 2f 23 64 65 66 69 6e 65 20 Val)..//#define
0b60: 56 5f 52 38 28 58 29 20 56 5f 55 4e 49 4f 4e 28 V_R8(X) V_UNION(
0b70: 58 2c 20 64 62 6c 56 61 6c 29 0d 0a 2f 2f 23 64 X, dblVal)..//#d
0b80: 65 66 69 6e 65 20 56 5f 52 38 52 45 46 28 58 29 efine V_R8REF(X)
0b90: 20 56 5f 55 4e 49 4f 4e 28 58 2c 20 70 64 62 6c V_UNION(X, pdbl
0ba0: 56 61 6c 29 0d 0a 2f 2f 23 64 65 66 69 6e 65 20 Val)..//#define
0bb0: 56 5f 43 59 28 58 29 20 56 5f 55 4e 49 4f 4e 28 V_CY(X) V_UNION(
0bc0: 58 2c 20 63 79 56 61 6c 29 0d 0a 2f 2f 23 64 65 X, cyVal)..//#de
0bd0: 66 69 6e 65 20 56 5f 43 59 52 45 46 28 58 29 20 fine V_CYREF(X)
0be0: 56 5f 55 4e 49 4f 4e 28 58 2c 20 70 63 79 56 61 V_UNION(X, pcyVa
0bf0: 6c 29 0d 0a 2f 2f 23 64 65 66 69 6e 65 20 56 5f l)..//#define V_
0c00: 44 41 54 45 28 58 29 20 56 5f 55 4e 49 4f 4e 28 DATE(X) V_UNION(
0c10: 58 2c 20 64 61 74 65 29 0d 0a 2f 2f 23 64 65 66 X, date)..//#def
0c20: 69 6e 65 20 56 5f 44 41 54 45 52 45 46 28 58 29 ine V_DATEREF(X)
0c30: 20 56 5f 55 4e 49 4f 4e 28 58 2c 20 70 64 61 74 V_UNION(X, pdat
0c40: 65 29 0d 0a 2f 2f 23 64 65 66 69 6e 65 20 56 5f e)..//#define V_
0c50: 42 53 54 52 28 58 29 20 56 5f 55 4e 49 4f 4e 28 BSTR(X) V_UNION(
0c60: 58 2c 20 62 73 74 72 56 61 6c 29 0d 0a 2f 2f 23 X, bstrVal)..//#
0c70: 64 65 66 69 6e 65 20 56 5f 42 53 54 52 52 45 46 define V_BSTRREF
0c80: 28 58 29 20 56 5f 55 4e 49 4f 4e 28 58 2c 20 70 (X) V_UNION(X, p
0c90: 62 73 74 72 56 61 6c 29 0d 0a 2f 2f 23 64 65 66 bstrVal)..//#def
0ca0: 69 6e 65 20 56 5f 44 49 53 50 41 54 43 48 28 58 ine V_DISPATCH(X
0cb0: 29 20 56 5f 55 4e 49 4f 4e 28 58 2c 20 70 64 69 ) V_UNION(X, pdi
0cc0: 73 70 56 61 6c 29 0d 0a 2f 2f 23 64 65 66 69 6e spVal)..//#defin
0cd0: 65 20 56 5f 44 49 53 50 41 54 43 48 52 45 46 28 e V_DISPATCHREF(
0ce0: 58 29 20 56 5f 55 4e 49 4f 4e 28 58 2c 20 70 70 X) V_UNION(X, pp
0cf0: 64 69 73 70 56 61 6c 29 0d 0a 2f 2f 23 64 65 66 dispVal)..//#def
0d00: 69 6e 65 20 56 5f 45 52 52 4f 52 28 58 29 20 56 ine V_ERROR(X) V
0d10: 5f 55 4e 49 4f 4e 28 58 2c 20 73 63 6f 64 65 29 _UNION(X, scode)
0d20: 0d 0a 2f 2f 23 64 65 66 69 6e 65 20 56 5f 45 52 ..//#define V_ER
0d30: 52 4f 52 52 45 46 28 58 29 20 56 5f 55 4e 49 4f RORREF(X) V_UNIO
0d40: 4e 28 58 2c 20 70 73 63 6f 64 65 29 0d 0a 2f 2f N(X, pscode)..//
0d50: 23 64 65 66 69 6e 65 20 56 5f 42 4f 4f 4c 52 45 #define V_BOOLRE
0d60: 46 28 58 29 20 56 5f 55 4e 49 4f 4e 28 58 2c 20 F(X) V_UNION(X,
0d70: 70 62 6f 6f 6c 56 61 6c 29 0d 0a 2f 2f 23 64 65 pboolVal)..//#de
0d80: 66 69 6e 65 20 56 5f 55 4e 4b 4e 4f 57 4e 28 58 fine V_UNKNOWN(X
0d90: 29 20 56 5f 55 4e 49 4f 4e 28 58 2c 20 70 75 6e ) V_UNION(X, pun
0da0: 6b 56 61 6c 29 0d 0a 2f 2f 23 64 65 66 69 6e 65 kVal)..//#define
0db0: 20 56 5f 55 4e 4b 4e 4f 57 4e 52 45 46 28 58 29 V_UNKNOWNREF(X)
0dc0: 20 56 5f 55 4e 49 4f 4e 28 58 2c 20 70 70 75 6e V_UNION(X, ppun
0dd0: 6b 56 61 6c 29 0d 0a 2f 2f 23 64 65 66 69 6e 65 kVal)..//#define
0de0: 20 56 5f 56 41 52 49 41 4e 54 52 45 46 28 58 29 V_VARIANTREF(X)
0df0: 20 56 5f 55 4e 49 4f 4e 28 58 2c 20 70 76 61 72 V_UNION(X, pvar
0e00: 56 61 6c 29 0d 0a 2f 2f 23 64 65 66 69 6e 65 20 Val)..//#define
0e10: 56 5f 4c 50 53 54 52 28 58 29 20 56 5f 55 4e 49 V_LPSTR(X) V_UNI
0e20: 4f 4e 28 58 2c 20 70 73 7a 56 61 6c 29 0d 0a 2f ON(X, pszVal)../
0e30: 2f 23 64 65 66 69 6e 65 20 56 5f 4c 50 53 54 52 /#define V_LPSTR
0e40: 52 45 46 28 58 29 20 56 5f 55 4e 49 4f 4e 28 58 REF(X) V_UNION(X
0e50: 2c 20 70 70 73 7a 56 61 6c 29 0d 0a 2f 2f 23 64 , ppszVal)..//#d
0e60: 65 66 69 6e 65 20 56 5f 4c 50 57 53 54 52 28 58 efine V_LPWSTR(X
0e70: 29 20 56 5f 55 4e 49 4f 4e 28 58 2c 20 70 77 73 ) V_UNION(X, pws
0e80: 7a 56 61 6c 29 0d 0a 2f 2f 23 64 65 66 69 6e 65 zVal)..//#define
0e90: 20 56 5f 4c 50 57 53 54 52 52 45 46 28 58 29 20 V_LPWSTRREF(X)
0ea0: 56 5f 55 4e 49 4f 4e 28 58 2c 20 70 70 77 73 7a V_UNION(X, ppwsz
0eb0: 56 61 6c 29 0d 0a 2f 2f 23 64 65 66 69 6e 65 20 Val)..//#define
0ec0: 56 5f 46 49 4c 45 54 49 4d 45 28 58 29 20 56 5f V_FILETIME(X) V_
0ed0: 55 4e 49 4f 4e 28 58 2c 20 66 69 6c 65 74 69 6d UNION(X, filetim
0ee0: 65 29 0d 0a 2f 2f 23 64 65 66 69 6e 65 20 56 5f e)..//#define V_
0ef0: 46 49 4c 45 54 49 4d 45 52 45 46 28 58 29 20 56 FILETIMEREF(X) V
0f00: 5f 55 4e 49 4f 4e 28 58 2c 20 70 66 69 6c 65 74 _UNION(X, pfilet
0f10: 69 6d 65 29 0d 0a 2f 2f 23 64 65 66 69 6e 65 20 ime)..//#define
0f20: 56 5f 42 4c 4f 42 28 58 29 20 56 5f 55 4e 49 4f V_BLOB(X) V_UNIO
0f30: 4e 28 58 2c 20 62 6c 6f 62 29 0d 0a 2f 2f 23 64 N(X, blob)..//#d
0f40: 65 66 69 6e 65 20 56 5f 55 55 49 44 28 58 29 20 efine V_UUID(X)
0f50: 56 5f 55 4e 49 4f 4e 28 58 2c 20 70 75 75 69 64 V_UNION(X, puuid
0f60: 29 0d 0a 2f 2f 23 64 65 66 69 6e 65 20 56 5f 43 )..//#define V_C
0f70: 4c 53 49 44 28 58 29 20 56 5f 55 4e 49 4f 4e 28 LSID(X) V_UNION(
0f80: 58 2c 20 70 75 75 69 64 29 0d 0a 2f 2f 23 64 65 X, puuid)..//#de
0f90: 66 69 6e 65 20 56 5f 41 52 52 41 59 28 58 29 20 fine V_ARRAY(X)
0fa0: 56 5f 55 4e 49 4f 4e 28 58 2c 20 70 61 72 72 61 V_UNION(X, parra
0fb0: 79 29 0d 0a 2f 2f 23 64 65 66 69 6e 65 20 56 5f y)..//#define V_
0fc0: 41 52 52 41 59 52 45 46 28 58 29 20 56 5f 55 4e ARRAYREF(X) V_UN
0fd0: 49 4f 4e 28 58 2c 20 70 70 61 72 72 61 79 29 0d ION(X, pparray).
0fe0: 0a 2f 2f 23 64 65 66 69 6e 65 20 56 5f 42 59 52 .//#define V_BYR
0ff0: 45 46 28 58 29 20 56 5f 55 4e 49 4f 4e 28 58 2c EF(X) V_UNION(X,
1000: 20 62 79 72 65 66 29 0d 0a 2f 2f 23 64 65 66 69 byref)..//#defi
1010: 6e 65 20 56 5f 44 45 43 49 4d 41 4c 28 58 29 20 ne V_DECIMAL(X)
1020: 28 28 58 29 2d 3e 64 65 63 56 61 6c 29 0d 0a 2f ((X)->decVal)../
1030: 2f 23 64 65 66 69 6e 65 20 56 5f 44 45 43 49 4d /#define V_DECIM
1040: 41 4c 52 45 46 28 58 29 20 56 5f 55 4e 49 4f 4e ALREF(X) V_UNION
1050: 28 58 2c 20 70 64 65 63 56 61 6c 29 0d 0a 2f 2f (X, pdecVal)..//
1060: 23 64 65 66 69 6e 65 20 56 5f 49 31 28 58 29 20 #define V_I1(X)
1070: 56 5f 55 4e 49 4f 4e 28 58 2c 20 63 56 61 6c 29 V_UNION(X, cVal)
1080: 0d 0a 0d 0a 2f 2f 23 69 66 64 65 66 20 5f 57 49 ....//#ifdef _WI
1090: 4e 36 34 0d 0a 2f 2f 23 64 65 66 69 6e 65 20 56 N64..//#define V
10a0: 5f 49 4e 54 5f 50 54 52 28 58 29 20 56 5f 49 38 _INT_PTR(X) V_I8
10b0: 28 58 29 0d 0a 2f 2f 23 64 65 66 69 6e 65 20 56 (X)..//#define V
10c0: 5f 55 49 4e 54 5f 50 54 52 28 58 29 20 56 5f 55 _UINT_PTR(X) V_U
10d0: 49 38 28 58 29 0d 0a 2f 2f 23 64 65 66 69 6e 65 I8(X)..//#define
10e0: 20 56 5f 49 4e 54 5f 50 54 52 52 45 46 28 58 29 V_INT_PTRREF(X)
10f0: 20 56 5f 49 38 52 45 46 28 58 29 0d 0a 2f 2f 23 V_I8REF(X)..//#
1100: 64 65 66 69 6e 65 20 56 5f 55 49 4e 54 5f 50 54 define V_UINT_PT
1110: 52 52 45 46 28 58 29 20 56 5f 55 49 38 52 45 46 RREF(X) V_UI8REF
1120: 28 58 29 0d 0a 2f 2f 23 65 6c 73 65 0d 0a 2f 2f (X)..//#else..//
1130: 23 64 65 66 69 6e 65 20 56 5f 49 4e 54 5f 50 54 #define V_INT_PT
1140: 52 28 58 29 20 56 5f 49 34 28 58 29 0d 0a 2f 2f R(X) V_I4(X)..//
1150: 23 64 65 66 69 6e 65 20 56 5f 55 49 4e 54 5f 50 #define V_UINT_P
1160: 54 52 28 58 29 20 56 5f 55 49 34 28 58 29 0d 0a TR(X) V_UI4(X)..
1170: 2f 2f 23 64 65 66 69 6e 65 20 56 5f 49 4e 54 5f //#define V_INT_
1180: 50 54 52 52 45 46 28 58 29 20 56 5f 49 34 52 45 PTRREF(X) V_I4RE
1190: 46 28 58 29 0d 0a 2f 2f 23 64 65 66 69 6e 65 20 F(X)..//#define
11a0: 56 5f 55 49 4e 54 5f 50 54 52 52 45 46 28 58 29 V_UINT_PTRREF(X)
11b0: 20 56 5f 55 49 34 52 45 46 28 58 29 0d 0a 2f 2f V_UI4REF(X)..//
11c0: 23 65 6e 64 69 66 0d 0a 0d 0a 65 6e 75 6d 20 7b #endif....enum {
11d0: 0d 0a 09 56 41 52 43 4d 50 5f 4c 54 20 3d 20 30 ...VARCMP_LT = 0
11e0: 2c 0d 0a 09 56 41 52 43 4d 50 5f 45 51 2c 0d 0a ,...VARCMP_EQ,..
11f0: 09 56 41 52 43 4d 50 5f 47 54 2c 0d 0a 09 56 41 .VARCMP_GT,...VA
1200: 52 43 4d 50 5f 4e 55 4c 4c 20 2f 2f 20 3d 20 33 RCMP_NULL // = 3
1210: 0d 0a 7d 0d 0a 0d 0a 63 6f 6e 73 74 20 4c 4f 43 ..}....const LOC
1220: 41 4c 45 5f 55 53 45 5f 4e 4c 53 20 3d 20 30 78 ALE_USE_NLS = 0x
1230: 31 30 30 30 30 30 30 30 3b 0d 0a 0d 0a 63 6f 6e 10000000;....con
1240: 73 74 20 56 41 52 49 41 4e 54 5f 4e 4f 55 53 45 st VARIANT_NOUSE
1250: 52 4f 56 45 52 52 49 44 45 20 20 20 20 20 3d 20 ROVERRIDE =
1260: 30 78 30 34 3b 0d 0a 63 6f 6e 73 74 20 56 41 52 0x04;..const VAR
1270: 49 41 4e 54 5f 43 41 4c 45 4e 44 41 52 5f 48 49 IANT_CALENDAR_HI
1280: 4a 52 49 20 20 20 20 20 3d 20 30 78 30 38 3b 0d JRI = 0x08;.
1290: 0a 63 6f 6e 73 74 20 56 41 52 49 41 4e 54 5f 43 .const VARIANT_C
12a0: 41 4c 45 4e 44 41 52 5f 54 48 41 49 20 20 20 20 ALENDAR_THAI
12b0: 20 20 3d 20 30 78 32 30 3b 0d 0a 63 6f 6e 73 74 = 0x20;..const
12c0: 20 56 41 52 49 41 4e 54 5f 43 41 4c 45 4e 44 41 VARIANT_CALENDA
12d0: 52 5f 47 52 45 47 4f 52 49 41 4e 20 3d 20 30 78 R_GREGORIAN = 0x
12e0: 34 30 3b 0d 0a 63 6f 6e 73 74 20 56 41 52 49 41 40;..const VARIA
12f0: 4e 54 5f 55 53 45 5f 4e 4c 53 20 20 20 20 20 20 NT_USE_NLS
1300: 20 20 20 20 20 20 3d 20 30 78 38 30 3b 0d 0a 0d = 0x80;...
1310: 0a 63 6f 6e 73 74 20 4e 55 4d 50 52 53 5f 4c 45 .const NUMPRS_LE
1320: 41 44 49 4e 47 5f 57 48 49 54 45 20 20 3d 20 30 ADING_WHITE = 0
1330: 78 30 30 30 30 31 3b 0d 0a 63 6f 6e 73 74 20 4e x00001;..const N
1340: 55 4d 50 52 53 5f 54 52 41 49 4c 49 4e 47 5f 57 UMPRS_TRAILING_W
1350: 48 49 54 45 20 3d 20 30 78 30 30 30 30 32 3b 0d HITE = 0x00002;.
1360: 0a 63 6f 6e 73 74 20 4e 55 4d 50 52 53 5f 4c 45 .const NUMPRS_LE
1370: 41 44 49 4e 47 5f 50 4c 55 53 20 20 20 3d 20 30 ADING_PLUS = 0
1380: 78 30 30 30 30 34 3b 0d 0a 63 6f 6e 73 74 20 4e x00004;..const N
1390: 55 4d 50 52 53 5f 54 52 41 49 4c 49 4e 47 5f 50 UMPRS_TRAILING_P
13a0: 4c 55 53 20 20 3d 20 30 78 30 30 30 30 38 3b 0d LUS = 0x00008;.
13b0: 0a 63 6f 6e 73 74 20 4e 55 4d 50 52 53 5f 4c 45 .const NUMPRS_LE
13c0: 41 44 49 4e 47 5f 4d 49 4e 55 53 20 20 3d 20 30 ADING_MINUS = 0
13d0: 78 30 30 30 31 30 3b 0d 0a 63 6f 6e 73 74 20 4e x00010;..const N
13e0: 55 4d 50 52 53 5f 54 52 41 49 4c 49 4e 47 5f 4d UMPRS_TRAILING_M
13f0: 49 4e 55 53 20 3d 20 30 78 30 30 30 32 30 3b 0d INUS = 0x00020;.
1400: 0a 63 6f 6e 73 74 20 4e 55 4d 50 52 53 5f 48 45 .const NUMPRS_HE
1410: 58 5f 4f 43 54 20 20 20 20 20 20 20 20 3d 20 30 X_OCT = 0
1420: 78 30 30 30 34 30 3b 0d 0a 63 6f 6e 73 74 20 4e x00040;..const N
1430: 55 4d 50 52 53 5f 50 41 52 45 4e 53 20 20 20 20 UMPRS_PARENS
1440: 20 20 20 20 20 3d 20 30 78 30 30 30 38 30 3b 0d = 0x00080;.
1450: 0a 63 6f 6e 73 74 20 4e 55 4d 50 52 53 5f 44 45 .const NUMPRS_DE
1460: 43 49 4d 41 4c 20 20 20 20 20 20 20 20 3d 20 30 CIMAL = 0
1470: 78 30 30 31 30 30 3b 0d 0a 63 6f 6e 73 74 20 4e x00100;..const N
1480: 55 4d 50 52 53 5f 54 48 4f 55 53 41 4e 44 53 20 UMPRS_THOUSANDS
1490: 20 20 20 20 20 3d 20 30 78 30 30 32 30 30 3b 0d = 0x00200;.
14a0: 0a 63 6f 6e 73 74 20 4e 55 4d 50 52 53 5f 43 55 .const NUMPRS_CU
14b0: 52 52 45 4e 43 59 20 20 20 20 20 20 20 3d 20 30 RRENCY = 0
14c0: 78 30 30 34 30 30 3b 0d 0a 63 6f 6e 73 74 20 4e x00400;..const N
14d0: 55 4d 50 52 53 5f 45 58 50 4f 4e 45 4e 54 20 20 UMPRS_EXPONENT
14e0: 20 20 20 20 20 3d 20 30 78 30 30 38 30 30 3b 0d = 0x00800;.
14f0: 0a 63 6f 6e 73 74 20 4e 55 4d 50 52 53 5f 55 53 .const NUMPRS_US
1500: 45 5f 41 4c 4c 20 20 20 20 20 20 20 20 3d 20 30 E_ALL = 0
1510: 78 30 31 30 30 30 3b 0d 0a 63 6f 6e 73 74 20 4e x01000;..const N
1520: 55 4d 50 52 53 5f 53 54 44 20 20 20 20 20 20 20 UMPRS_STD
1530: 20 20 20 20 20 3d 20 30 78 30 31 46 46 46 3b 0d = 0x01FFF;.
1540: 0a 63 6f 6e 73 74 20 4e 55 4d 50 52 53 5f 4e 45 .const NUMPRS_NE
1550: 47 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 G = 0
1560: 78 31 30 30 30 30 3b 0d 0a 63 6f 6e 73 74 20 4e x10000;..const N
1570: 55 4d 50 52 53 5f 49 4e 45 58 41 43 54 20 20 20 UMPRS_INEXACT
1580: 20 20 20 20 20 3d 20 30 78 32 30 30 30 30 3b 0d = 0x20000;.
1590: 0a 0d 0a 63 6f 6e 73 74 20 56 54 42 49 54 5f 49 ...const VTBIT_I
15a0: 31 20 3d 20 31 20 3c 3c 20 56 41 52 45 4e 55 4d 1 = 1 << VARENUM
15b0: 2e 56 54 5f 49 31 3b 0d 0a 63 6f 6e 73 74 20 56 .VT_I1;..const V
15c0: 54 42 49 54 5f 55 49 31 20 3d 20 31 20 3c 3c 20 TBIT_UI1 = 1 <<
15d0: 56 41 52 45 4e 55 4d 2e 56 54 5f 55 49 31 3b 0d VARENUM.VT_UI1;.
15e0: 0a 63 6f 6e 73 74 20 56 54 42 49 54 5f 49 32 20 .const VTBIT_I2
15f0: 3d 20 31 20 3c 3c 20 56 41 52 45 4e 55 4d 2e 56 = 1 << VARENUM.V
1600: 54 5f 49 32 3b 0d 0a 63 6f 6e 73 74 20 56 54 42 T_I2;..const VTB
1610: 49 54 5f 55 49 32 20 3d 20 31 20 3c 3c 20 56 41 IT_UI2 = 1 << VA
1620: 52 45 4e 55 4d 2e 56 54 5f 55 49 32 3b 0d 0a 63 RENUM.VT_UI2;..c
1630: 6f 6e 73 74 20 56 54 42 49 54 5f 49 34 20 3d 20 onst VTBIT_I4 =
1640: 31 20 3c 3c 20 56 41 52 45 4e 55 4d 2e 56 54 5f 1 << VARENUM.VT_
1650: 49 34 3b 0d 0a 63 6f 6e 73 74 20 56 54 42 49 54 I4;..const VTBIT
1660: 5f 55 49 34 20 3d 20 31 20 3c 3c 20 56 41 52 45 _UI4 = 1 << VARE
1670: 4e 55 4d 2e 56 54 5f 55 49 34 3b 0d 0a 63 6f 6e NUM.VT_UI4;..con
1680: 73 74 20 56 54 42 49 54 5f 49 38 20 3d 20 31 20 st VTBIT_I8 = 1
1690: 3c 3c 20 56 41 52 45 4e 55 4d 2e 56 54 5f 49 38 << VARENUM.VT_I8
16a0: 3b 0d 0a 63 6f 6e 73 74 20 56 54 42 49 54 5f 55 ;..const VTBIT_U
16b0: 49 38 20 3d 20 31 20 3c 3c 20 56 41 52 45 4e 55 I8 = 1 << VARENU
16c0: 4d 2e 56 54 5f 55 49 38 3b 0d 0a 63 6f 6e 73 74 M.VT_UI8;..const
16d0: 20 56 54 42 49 54 5f 52 34 20 3d 20 31 20 3c 3c VTBIT_R4 = 1 <<
16e0: 20 56 41 52 45 4e 55 4d 2e 56 54 5f 52 34 3b 0d VARENUM.VT_R4;.
16f0: 0a 63 6f 6e 73 74 20 56 54 42 49 54 5f 52 38 20 .const VTBIT_R8
1700: 3d 20 31 20 3c 3c 20 56 41 52 45 4e 55 4d 2e 56 = 1 << VARENUM.V
1710: 54 5f 52 38 3b 0d 0a 63 6f 6e 73 74 20 56 54 42 T_R8;..const VTB
1720: 49 54 5f 43 59 20 3d 20 31 20 3c 3c 20 56 41 52 IT_CY = 1 << VAR
1730: 45 4e 55 4d 2e 56 54 5f 43 59 3b 0d 0a 63 6f 6e ENUM.VT_CY;..con
1740: 73 74 20 56 54 42 49 54 5f 44 45 43 49 4d 41 4c st VTBIT_DECIMAL
1750: 20 3d 20 31 20 3c 3c 20 56 41 52 45 4e 55 4d 2e = 1 << VARENUM.
1760: 56 54 5f 44 45 43 49 4d 41 4c 3b 0d 0a 0d 0a 0d VT_DECIMAL;.....
1770: 0a 65 6e 75 6d 20 52 45 47 4b 49 4e 44 7b 0d 0a .enum REGKIND{..
1780: 09 52 45 47 4b 49 4e 44 5f 44 45 46 41 55 4c 54 .REGKIND_DEFAULT
1790: 2c 0d 0a 09 52 45 47 4b 49 4e 44 5f 52 45 47 49 ,...REGKIND_REGI
17a0: 53 54 45 52 2c 0d 0a 09 52 45 47 4b 49 4e 44 5f STER,...REGKIND_
17b0: 4e 4f 4e 45 0d 0a 7d 0d 0a 0d 0a 73 74 72 75 63 NONE..}....struc
17c0: 74 20 50 41 52 41 4d 44 41 54 41 7b 0d 0a 09 4f t PARAMDATA{...O
17d0: 4c 45 43 48 41 52 2a 20 73 7a 4e 61 6d 65 3b 0d LECHAR* szName;.
17e0: 0a 09 56 41 52 54 59 50 45 20 76 74 3b 0d 0a 7d ..VARTYPE vt;..}
17f0: 0d 0a 61 6c 69 61 73 20 50 41 52 41 4d 44 41 54 ..alias PARAMDAT
1800: 41 2a 20 4c 50 50 41 52 41 4d 44 41 54 41 3b 0d A* LPPARAMDATA;.
1810: 0a 0d 0a 73 74 72 75 63 74 20 4d 45 54 48 4f 44 ...struct METHOD
1820: 44 41 54 41 7b 0d 0a 09 4f 4c 45 43 48 41 52 2a DATA{...OLECHAR*
1830: 20 73 7a 4e 61 6d 65 3b 0d 0a 09 50 41 52 41 4d szName;...PARAM
1840: 44 41 54 41 2a 20 70 70 64 61 74 61 3b 0d 0a 09 DATA* ppdata;...
1850: 44 49 53 50 49 44 20 64 69 73 70 69 64 3b 0d 0a DISPID dispid;..
1860: 09 55 49 4e 54 20 69 4d 65 74 68 3b 0d 0a 09 43 .UINT iMeth;...C
1870: 41 4c 4c 43 4f 4e 56 20 63 63 3b 0d 0a 09 55 49 ALLCONV cc;...UI
1880: 4e 54 20 63 41 72 67 73 3b 0d 0a 09 57 4f 52 44 NT cArgs;...WORD
1890: 20 77 46 6c 61 67 73 3b 0d 0a 09 56 41 52 54 59 wFlags;...VARTY
18a0: 50 45 20 76 74 52 65 74 75 72 6e 3b 0d 0a 7d 0d PE vtReturn;..}.
18b0: 0a 61 6c 69 61 73 20 4d 45 54 48 4f 44 44 41 54 .alias METHODDAT
18c0: 41 2a 20 4c 50 4d 45 54 48 4f 44 44 41 54 41 3b A* LPMETHODDATA;
18d0: 0d 0a 0d 0a 73 74 72 75 63 74 20 49 4e 54 45 52 ....struct INTER
18e0: 46 41 43 45 44 41 54 41 7b 0d 0a 09 4d 45 54 48 FACEDATA{...METH
18f0: 4f 44 44 41 54 41 2a 20 70 6d 65 74 68 64 61 74 ODDATA* pmethdat
1900: 61 3b 0d 0a 09 55 49 4e 54 20 63 4d 65 6d 62 65 a;...UINT cMembe
1910: 72 73 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 49 4e rs;..}..alias IN
1920: 54 45 52 46 41 43 45 44 41 54 41 2a 20 4c 50 49 TERFACEDATA* LPI
1930: 4e 54 45 52 46 41 43 45 44 41 54 41 3b 0d 0a 0d NTERFACEDATA;...
1940: 0a 73 74 72 75 63 74 20 55 44 41 54 45 20 7b 0d .struct UDATE {.
1950: 0a 09 53 59 53 54 45 4d 54 49 4d 45 20 73 74 3b ..SYSTEMTIME st;
1960: 0d 0a 09 55 53 48 4f 52 54 20 77 44 61 79 4f 66 ...USHORT wDayOf
1970: 59 65 61 72 3b 0d 0a 7d 0d 0a 0d 0a 73 74 72 75 Year;..}....stru
1980: 63 74 20 4e 55 4d 50 41 52 53 45 20 7b 0d 0a 09 ct NUMPARSE {...
1990: 69 6e 74 20 63 44 69 67 3b 0d 0a 09 75 69 6e 74 int cDig;...uint
19a0: 20 64 77 49 6e 46 6c 61 67 73 3b 0d 0a 09 75 69 dwInFlags;...ui
19b0: 6e 74 20 64 77 4f 75 74 46 6c 61 67 73 3b 0d 0a nt dwOutFlags;..
19c0: 09 69 6e 74 20 63 63 68 55 73 65 64 3b 0d 0a 09 .int cchUsed;...
19d0: 69 6e 74 20 6e 42 61 73 65 53 68 69 66 74 3b 0d int nBaseShift;.
19e0: 0a 09 69 6e 74 20 6e 50 77 72 31 30 3b 0d 0a 7d ..int nPwr10;..}
19f0: 0d 0a 0d 0a 0d 0a 2f 2f 20 44 41 43 3a 20 49 6e ......// DAC: In
1a00: 20 4d 69 6e 47 57 2c 20 74 68 65 73 65 20 77 65 MinGW, these we
1a10: 72 65 20 64 65 63 6c 61 72 65 64 20 62 75 74 20 re declared but
1a20: 6e 6f 74 20 64 65 66 69 6e 65 64 20 69 6e 20 6f not defined in o
1a30: 61 69 64 6c 2e 0d 0a 2f 2f 20 54 68 65 20 53 44 aidl...// The SD
1a40: 4b 20 64 6f 63 73 20 73 75 67 67 65 73 74 20 74 K docs suggest t
1a50: 68 65 79 20 62 65 6c 6f 6e 67 20 69 6e 20 74 68 hey belong in th
1a60: 69 73 20 66 69 6c 65 20 69 6e 73 74 65 61 64 2e is file instead.
1a70: 0d 0a 0d 0a 64 65 70 72 65 63 61 74 65 64 20 7b ....deprecated {
1a80: 20 20 2f 2f 20 6e 6f 74 20 61 63 74 75 61 6c 6c // not actuall
1a90: 79 20 64 65 70 72 65 63 61 74 65 64 2c 20 62 75 y deprecated, bu
1aa0: 74 20 74 68 65 79 20 61 72 65 6e 27 74 20 63 6f t they aren't co
1ab0: 6e 76 65 72 74 65 64 20 79 65 74 2e 0d 0a 20 20 nverted yet...
1ac0: 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 28 // (
1ad0: 77 69 6c 6c 20 6e 65 65 64 20 74 6f 20 72 65 69 will need to rei
1ae0: 6e 73 74 61 74 65 20 43 72 65 61 74 65 54 79 70 nstate CreateTyp
1af0: 65 4c 69 62 20 61 73 20 77 65 6c 6c 29 0d 0a 09 eLib as well)...
1b00: 69 6e 74 65 72 66 61 63 65 20 49 43 72 65 61 74 interface ICreat
1b10: 65 54 79 70 65 49 6e 66 6f 20 7b 7d 3b 0d 0a 09 eTypeInfo {};...
1b20: 69 6e 74 65 72 66 61 63 65 20 49 43 72 65 61 74 interface ICreat
1b30: 65 54 79 70 65 49 6e 66 6f 32 20 7b 7d 3b 0d 0a eTypeInfo2 {};..
1b40: 09 69 6e 74 65 72 66 61 63 65 20 49 43 72 65 61 .interface ICrea
1b50: 74 65 54 79 70 65 4c 69 62 20 7b 7d 3b 0d 0a 09 teTypeLib {};...
1b60: 69 6e 74 65 72 66 61 63 65 20 49 43 72 65 61 74 interface ICreat
1b70: 65 54 79 70 65 4c 69 62 32 20 7b 7d 3b 0d 0a 0d eTypeLib2 {};...
1b80: 0a 09 61 6c 69 61 73 20 49 43 72 65 61 74 65 54 ..alias ICreateT
1b90: 79 70 65 49 6e 66 6f 20 4c 50 43 52 45 41 54 45 ypeInfo LPCREATE
1ba0: 54 59 50 45 49 4e 46 4f 3b 0d 0a 09 61 6c 69 61 TYPEINFO;...alia
1bb0: 73 20 49 43 72 65 61 74 65 54 79 70 65 49 6e 66 s ICreateTypeInf
1bc0: 6f 32 20 4c 50 43 52 45 41 54 45 54 59 50 45 49 o2 LPCREATETYPEI
1bd0: 4e 46 4f 32 3b 0d 0a 09 61 6c 69 61 73 20 49 43 NFO2;...alias IC
1be0: 72 65 61 74 65 54 79 70 65 4c 69 62 20 4c 50 43 reateTypeLib LPC
1bf0: 52 45 41 54 45 54 59 50 45 4c 49 42 3b 0d 0a 09 REATETYPELIB;...
1c00: 61 6c 69 61 73 20 49 43 72 65 61 74 65 54 79 70 alias ICreateTyp
1c10: 65 4c 69 62 32 20 4c 50 43 52 45 41 54 45 54 59 eLib2 LPCREATETY
1c20: 50 45 4c 49 42 32 3b 0d 0a 7d 0d 0a 0d 0a 65 78 PELIB2;..}....ex
1c30: 74 65 72 6e 20 28 57 69 6e 64 6f 77 73 29 20 7b tern (Windows) {
1c40: 0d 0a 09 42 53 54 52 20 53 79 73 41 6c 6c 6f 63 ...BSTR SysAlloc
1c50: 53 74 72 69 6e 67 28 63 6f 6e 73 74 28 4f 4c 45 String(const(OLE
1c60: 43 48 41 52 29 2a 29 3b 0d 0a 09 69 6e 74 20 53 CHAR)*);...int S
1c70: 79 73 52 65 41 6c 6c 6f 63 53 74 72 69 6e 67 28 ysReAllocString(
1c80: 42 53 54 52 2a 2c 20 63 6f 6e 73 74 28 4f 4c 45 BSTR*, const(OLE
1c90: 43 48 41 52 29 2a 29 3b 0d 0a 09 42 53 54 52 20 CHAR)*);...BSTR
1ca0: 53 79 73 41 6c 6c 6f 63 53 74 72 69 6e 67 4c 65 SysAllocStringLe
1cb0: 6e 28 63 6f 6e 73 74 28 4f 4c 45 43 48 41 52 29 n(const(OLECHAR)
1cc0: 2a 2c 20 75 69 6e 74 29 3b 0d 0a 09 69 6e 74 20 *, uint);...int
1cd0: 53 79 73 52 65 41 6c 6c 6f 63 53 74 72 69 6e 67 SysReAllocString
1ce0: 4c 65 6e 28 42 53 54 52 2a 2c 20 63 6f 6e 73 74 Len(BSTR*, const
1cf0: 28 4f 4c 45 43 48 41 52 29 2a 2c 20 75 69 6e 74 (OLECHAR)*, uint
1d00: 29 3b 0d 0a 09 76 6f 69 64 20 53 79 73 46 72 65 );...void SysFre
1d10: 65 53 74 72 69 6e 67 28 42 53 54 52 29 3b 0d 0a eString(BSTR);..
1d20: 09 75 69 6e 74 20 53 79 73 53 74 72 69 6e 67 4c .uint SysStringL
1d30: 65 6e 28 42 53 54 52 29 3b 0d 0a 09 75 69 6e 74 en(BSTR);...uint
1d40: 20 53 79 73 53 74 72 69 6e 67 42 79 74 65 4c 65 SysStringByteLe
1d50: 6e 28 42 53 54 52 29 3b 0d 0a 09 42 53 54 52 20 n(BSTR);...BSTR
1d60: 53 79 73 41 6c 6c 6f 63 53 74 72 69 6e 67 42 79 SysAllocStringBy
1d70: 74 65 4c 65 6e 28 63 6f 6e 73 74 28 63 68 61 72 teLen(const(char
1d80: 29 2a 2c 20 75 69 6e 74 29 3b 0d 0a 09 69 6e 74 )*, uint);...int
1d90: 20 44 6f 73 44 61 74 65 54 69 6d 65 54 6f 56 61 DosDateTimeToVa
1da0: 72 69 61 6e 74 54 69 6d 65 28 75 73 68 6f 72 74 riantTime(ushort
1db0: 2c 20 75 73 68 6f 72 74 2c 20 64 6f 75 62 6c 65 , ushort, double
1dc0: 2a 29 3b 0d 0a 09 69 6e 74 20 56 61 72 69 61 6e *);...int Varian
1dd0: 74 54 69 6d 65 54 6f 44 6f 73 44 61 74 65 54 69 tTimeToDosDateTi
1de0: 6d 65 28 64 6f 75 62 6c 65 2c 20 75 73 68 6f 72 me(double, ushor
1df0: 74 2a 2c 20 75 73 68 6f 72 74 2a 29 3b 0d 0a 09 t*, ushort*);...
1e00: 69 6e 74 20 56 61 72 69 61 6e 74 54 69 6d 65 54 int VariantTimeT
1e10: 6f 53 79 73 74 65 6d 54 69 6d 65 28 64 6f 75 62 oSystemTime(doub
1e20: 6c 65 2c 20 4c 50 53 59 53 54 45 4d 54 49 4d 45 le, LPSYSTEMTIME
1e30: 29 3b 0d 0a 09 69 6e 74 20 53 79 73 74 65 6d 54 );...int SystemT
1e40: 69 6d 65 54 6f 56 61 72 69 61 6e 74 54 69 6d 65 imeToVariantTime
1e50: 28 4c 50 53 59 53 54 45 4d 54 49 4d 45 2c 20 64 (LPSYSTEMTIME, d
1e60: 6f 75 62 6c 65 2a 29 3b 0d 0a 09 48 52 45 53 55 ouble*);...HRESU
1e70: 4c 54 20 56 61 72 44 61 74 65 46 72 6f 6d 55 64 LT VarDateFromUd
1e80: 61 74 65 28 55 44 41 54 45 2a 2c 20 55 4c 4f 4e ate(UDATE*, ULON
1e90: 47 2c 20 44 41 54 45 2a 29 3b 0d 0a 09 48 52 45 G, DATE*);...HRE
1ea0: 53 55 4c 54 20 56 61 72 44 61 74 65 46 72 6f 6d SULT VarDateFrom
1eb0: 55 64 61 74 65 45 78 28 55 44 41 54 45 2a 2c 20 UdateEx(UDATE*,
1ec0: 4c 43 49 44 2c 20 55 4c 4f 4e 47 2c 20 44 41 54 LCID, ULONG, DAT
1ed0: 45 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 E*);...HRESULT V
1ee0: 61 72 55 64 61 74 65 46 72 6f 6d 44 61 74 65 28 arUdateFromDate(
1ef0: 44 41 54 45 2c 20 55 4c 4f 4e 47 2c 20 55 44 41 DATE, ULONG, UDA
1f00: 54 45 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 TE*);...HRESULT
1f10: 53 61 66 65 41 72 72 61 79 41 6c 6c 6f 63 44 65 SafeArrayAllocDe
1f20: 73 63 72 69 70 74 6f 72 28 75 69 6e 74 2c 20 53 scriptor(uint, S
1f30: 41 46 45 41 52 52 41 59 2a 2a 29 3b 0d 0a 09 48 AFEARRAY**);...H
1f40: 52 45 53 55 4c 54 20 53 61 66 65 41 72 72 61 79 RESULT SafeArray
1f50: 41 6c 6c 6f 63 44 61 74 61 28 53 41 46 45 41 52 AllocData(SAFEAR
1f60: 52 41 59 2a 29 3b 0d 0a 09 53 41 46 45 41 52 52 RAY*);...SAFEARR
1f70: 41 59 2a 20 53 61 66 65 41 72 72 61 79 43 72 65 AY* SafeArrayCre
1f80: 61 74 65 28 56 41 52 54 59 50 45 2c 20 75 69 6e ate(VARTYPE, uin
1f90: 74 2c 20 53 41 46 45 41 52 52 41 59 42 4f 55 4e t, SAFEARRAYBOUN
1fa0: 44 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 53 D*);...HRESULT S
1fb0: 61 66 65 41 72 72 61 79 44 65 73 74 72 6f 79 44 afeArrayDestroyD
1fc0: 65 73 63 72 69 70 74 6f 72 28 53 41 46 45 41 52 escriptor(SAFEAR
1fd0: 52 41 59 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 RAY*);...HRESULT
1fe0: 20 53 61 66 65 41 72 72 61 79 44 65 73 74 72 6f SafeArrayDestro
1ff0: 79 44 61 74 61 28 53 41 46 45 41 52 52 41 59 2a yData(SAFEARRAY*
2000: 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 53 61 66 );...HRESULT Saf
2010: 65 41 72 72 61 79 44 65 73 74 72 6f 79 28 53 41 eArrayDestroy(SA
2020: 46 45 41 52 52 41 59 2a 29 3b 0d 0a 09 48 52 45 FEARRAY*);...HRE
2030: 53 55 4c 54 20 53 61 66 65 41 72 72 61 79 52 65 SULT SafeArrayRe
2040: 64 69 6d 28 53 41 46 45 41 52 52 41 59 2a 2c 20 dim(SAFEARRAY*,
2050: 53 41 46 45 41 52 52 41 59 42 4f 55 4e 44 2a 29 SAFEARRAYBOUND*)
2060: 3b 0d 0a 09 75 69 6e 74 20 53 61 66 65 41 72 72 ;...uint SafeArr
2070: 61 79 47 65 74 44 69 6d 28 53 41 46 45 41 52 52 ayGetDim(SAFEARR
2080: 41 59 2a 29 3b 0d 0a 09 75 69 6e 74 20 53 61 66 AY*);...uint Saf
2090: 65 41 72 72 61 79 47 65 74 45 6c 65 6d 73 69 7a eArrayGetElemsiz
20a0: 65 28 53 41 46 45 41 52 52 41 59 2a 29 3b 0d 0a e(SAFEARRAY*);..
20b0: 09 48 52 45 53 55 4c 54 20 53 61 66 65 41 72 72 .HRESULT SafeArr
20c0: 61 79 47 65 74 55 42 6f 75 6e 64 28 53 41 46 45 ayGetUBound(SAFE
20d0: 41 52 52 41 59 2a 2c 20 75 69 6e 74 2c 20 69 6e ARRAY*, uint, in
20e0: 74 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 53 t*);...HRESULT S
20f0: 61 66 65 41 72 72 61 79 47 65 74 4c 42 6f 75 6e afeArrayGetLBoun
2100: 64 28 53 41 46 45 41 52 52 41 59 2a 2c 20 75 69 d(SAFEARRAY*, ui
2110: 6e 74 2c 20 69 6e 74 2a 29 3b 0d 0a 09 48 52 45 nt, int*);...HRE
2120: 53 55 4c 54 20 53 61 66 65 41 72 72 61 79 4c 6f SULT SafeArrayLo
2130: 63 6b 28 53 41 46 45 41 52 52 41 59 2a 29 3b 0d ck(SAFEARRAY*);.
2140: 0a 09 48 52 45 53 55 4c 54 20 53 61 66 65 41 72 ..HRESULT SafeAr
2150: 72 61 79 55 6e 6c 6f 63 6b 28 53 41 46 45 41 52 rayUnlock(SAFEAR
2160: 52 41 59 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 RAY*);...HRESULT
2170: 20 53 61 66 65 41 72 72 61 79 41 63 63 65 73 73 SafeArrayAccess
2180: 44 61 74 61 28 53 41 46 45 41 52 52 41 59 2a 2c Data(SAFEARRAY*,
2190: 20 76 6f 69 64 2a 2a 29 3b 0d 0a 09 48 52 45 53 void**);...HRES
21a0: 55 4c 54 20 53 61 66 65 41 72 72 61 79 55 6e 61 ULT SafeArrayUna
21b0: 63 63 65 73 73 44 61 74 61 28 53 41 46 45 41 52 ccessData(SAFEAR
21c0: 52 41 59 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 RAY*);...HRESULT
21d0: 20 53 61 66 65 41 72 72 61 79 47 65 74 45 6c 65 SafeArrayGetEle
21e0: 6d 65 6e 74 28 53 41 46 45 41 52 52 41 59 2a 2c ment(SAFEARRAY*,
21f0: 20 69 6e 74 2a 2c 20 76 6f 69 64 2a 29 3b 0d 0a int*, void*);..
2200: 09 48 52 45 53 55 4c 54 20 53 61 66 65 41 72 72 .HRESULT SafeArr
2210: 61 79 50 75 74 45 6c 65 6d 65 6e 74 28 53 41 46 ayPutElement(SAF
2220: 45 41 52 52 41 59 2a 2c 20 69 6e 74 2a 2c 20 76 EARRAY*, int*, v
2230: 6f 69 64 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 oid*);...HRESULT
2240: 20 53 61 66 65 41 72 72 61 79 43 6f 70 79 28 53 SafeArrayCopy(S
2250: 41 46 45 41 52 52 41 59 2a 2c 20 53 41 46 45 41 AFEARRAY*, SAFEA
2260: 52 52 41 59 2a 2a 29 3b 0d 0a 09 48 52 45 53 55 RRAY**);...HRESU
2270: 4c 54 20 53 61 66 65 41 72 72 61 79 50 74 72 4f LT SafeArrayPtrO
2280: 66 49 6e 64 65 78 28 53 41 46 45 41 52 52 41 59 fIndex(SAFEARRAY
2290: 2a 2c 20 69 6e 74 2a 2c 20 76 6f 69 64 2a 2a 29 *, int*, void**)
22a0: 3b 0d 0a 09 53 41 46 45 41 52 52 41 59 2a 20 53 ;...SAFEARRAY* S
22b0: 61 66 65 41 72 72 61 79 43 72 65 61 74 65 56 65 afeArrayCreateVe
22c0: 63 74 6f 72 28 56 41 52 54 59 50 45 2c 20 4c 4f ctor(VARTYPE, LO
22d0: 4e 47 2c 20 55 4c 4f 4e 47 29 3b 0d 0a 09 53 41 NG, ULONG);...SA
22e0: 46 45 41 52 52 41 59 2a 20 53 61 66 65 41 72 72 FEARRAY* SafeArr
22f0: 61 79 43 72 65 61 74 65 56 65 63 74 6f 72 45 78 ayCreateVectorEx
2300: 28 56 41 52 54 59 50 45 2c 20 4c 4f 4e 47 2c 20 (VARTYPE, LONG,
2310: 55 4c 4f 4e 47 2c 20 4c 50 56 4f 49 44 29 3b 0d ULONG, LPVOID);.
2320: 0a 09 48 52 45 53 55 4c 54 20 53 61 66 65 41 72 ..HRESULT SafeAr
2330: 72 61 79 41 6c 6c 6f 63 44 65 73 63 72 69 70 74 rayAllocDescript
2340: 6f 72 45 78 28 56 41 52 54 59 50 45 2c 20 55 49 orEx(VARTYPE, UI
2350: 4e 54 2c 20 53 41 46 45 41 52 52 41 59 2a 2a 29 NT, SAFEARRAY**)
2360: 3b 0d 0a 09 48 52 45 53 55 4c 54 20 53 61 66 65 ;...HRESULT Safe
2370: 41 72 72 61 79 47 65 74 56 61 72 74 79 70 65 28 ArrayGetVartype(
2380: 53 41 46 45 41 52 52 41 59 2a 2c 20 56 41 52 54 SAFEARRAY*, VART
2390: 59 50 45 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 YPE*);...HRESULT
23a0: 20 53 61 66 65 41 72 72 61 79 53 65 74 52 65 63 SafeArraySetRec
23b0: 6f 72 64 49 6e 66 6f 28 53 41 46 45 41 52 52 41 ordInfo(SAFEARRA
23c0: 59 2a 2c 20 49 52 65 63 6f 72 64 49 6e 66 6f 29 Y*, IRecordInfo)
23d0: 3b 0d 0a 09 48 52 45 53 55 4c 54 20 53 61 66 65 ;...HRESULT Safe
23e0: 41 72 72 61 79 47 65 74 52 65 63 6f 72 64 49 6e ArrayGetRecordIn
23f0: 66 6f 28 53 41 46 45 41 52 52 41 59 2a 2c 20 49 fo(SAFEARRAY*, I
2400: 52 65 63 6f 72 64 49 6e 66 6f 2a 29 3b 0d 0a 09 RecordInfo*);...
2410: 48 52 45 53 55 4c 54 20 53 61 66 65 41 72 72 61 HRESULT SafeArra
2420: 79 53 65 74 49 49 44 28 53 41 46 45 41 52 52 41 ySetIID(SAFEARRA
2430: 59 2a 2c 20 52 45 46 47 55 49 44 29 3b 0d 0a 09 Y*, REFGUID);...
2440: 48 52 45 53 55 4c 54 20 53 61 66 65 41 72 72 61 HRESULT SafeArra
2450: 79 47 65 74 49 49 44 28 53 41 46 45 41 52 52 41 yGetIID(SAFEARRA
2460: 59 2a 2c 20 47 55 49 44 2a 29 3b 0d 0a 09 76 6f Y*, GUID*);...vo
2470: 69 64 20 56 61 72 69 61 6e 74 49 6e 69 74 28 56 id VariantInit(V
2480: 41 52 49 41 4e 54 41 52 47 2a 29 3b 0d 0a 09 48 ARIANTARG*);...H
2490: 52 45 53 55 4c 54 20 56 61 72 69 61 6e 74 43 6c RESULT VariantCl
24a0: 65 61 72 28 56 41 52 49 41 4e 54 41 52 47 2a 29 ear(VARIANTARG*)
24b0: 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 69 ;...HRESULT Vari
24c0: 61 6e 74 43 6f 70 79 28 56 41 52 49 41 4e 54 41 antCopy(VARIANTA
24d0: 52 47 2a 2c 20 56 41 52 49 41 4e 54 41 52 47 2a RG*, VARIANTARG*
24e0: 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 );...HRESULT Var
24f0: 69 61 6e 74 43 6f 70 79 49 6e 64 28 56 41 52 49 iantCopyInd(VARI
2500: 41 4e 54 2a 2c 20 56 41 52 49 41 4e 54 41 52 47 ANT*, VARIANTARG
2510: 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 *);...HRESULT Va
2520: 72 69 61 6e 74 43 68 61 6e 67 65 54 79 70 65 28 riantChangeType(
2530: 56 41 52 49 41 4e 54 41 52 47 2a 2c 20 56 41 52 VARIANTARG*, VAR
2540: 49 41 4e 54 41 52 47 2a 2c 20 75 73 68 6f 72 74 IANTARG*, ushort
2550: 2c 20 56 41 52 54 59 50 45 29 3b 0d 0a 09 48 52 , VARTYPE);...HR
2560: 45 53 55 4c 54 20 56 61 72 69 61 6e 74 43 68 61 ESULT VariantCha
2570: 6e 67 65 54 79 70 65 45 78 28 56 41 52 49 41 4e ngeTypeEx(VARIAN
2580: 54 41 52 47 2a 2c 20 56 41 52 49 41 4e 54 41 52 TARG*, VARIANTAR
2590: 47 2a 2c 20 4c 43 49 44 2c 20 75 73 68 6f 72 74 G*, LCID, ushort
25a0: 2c 20 56 41 52 54 59 50 45 29 3b 0d 0a 09 48 52 , VARTYPE);...HR
25b0: 45 53 55 4c 54 20 56 61 72 55 49 31 46 72 6f 6d ESULT VarUI1From
25c0: 49 32 28 73 68 6f 72 74 2c 20 75 62 79 74 65 2a I2(short, ubyte*
25d0: 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 );...HRESULT Var
25e0: 55 49 31 46 72 6f 6d 49 34 28 69 6e 74 2c 20 75 UI1FromI4(int, u
25f0: 62 79 74 65 2a 29 3b 0d 0a 09 48 52 45 53 55 4c byte*);...HRESUL
2600: 54 20 56 61 72 55 49 31 46 72 6f 6d 52 34 28 66 T VarUI1FromR4(f
2610: 6c 6f 61 74 2c 20 75 62 79 74 65 2a 29 3b 0d 0a loat, ubyte*);..
2620: 09 48 52 45 53 55 4c 54 20 56 61 72 55 49 31 46 .HRESULT VarUI1F
2630: 72 6f 6d 52 38 28 64 6f 75 62 6c 65 2c 20 75 62 romR8(double, ub
2640: 79 74 65 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 yte*);...HRESULT
2650: 20 56 61 72 55 49 31 46 72 6f 6d 43 79 28 43 59 VarUI1FromCy(CY
2660: 2c 20 75 62 79 74 65 2a 29 3b 0d 0a 09 48 52 45 , ubyte*);...HRE
2670: 53 55 4c 54 20 56 61 72 55 49 31 46 72 6f 6d 44 SULT VarUI1FromD
2680: 61 74 65 28 44 41 54 45 2c 20 75 62 79 74 65 2a ate(DATE, ubyte*
2690: 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 );...HRESULT Var
26a0: 55 49 31 46 72 6f 6d 53 74 72 28 4f 4c 45 43 48 UI1FromStr(OLECH
26b0: 41 52 2a 2c 20 4c 43 49 44 2c 20 75 69 6e 74 2c AR*, LCID, uint,
26c0: 20 75 62 79 74 65 2a 29 3b 0d 0a 09 48 52 45 53 ubyte*);...HRES
26d0: 55 4c 54 20 56 61 72 55 49 31 46 72 6f 6d 44 69 ULT VarUI1FromDi
26e0: 73 70 28 4c 50 44 49 53 50 41 54 43 48 2c 20 4c sp(LPDISPATCH, L
26f0: 43 49 44 2c 20 75 62 79 74 65 2a 29 3b 0d 0a 09 CID, ubyte*);...
2700: 48 52 45 53 55 4c 54 20 56 61 72 55 49 31 46 72 HRESULT VarUI1Fr
2710: 6f 6d 42 6f 6f 6c 28 56 41 52 49 41 4e 54 5f 42 omBool(VARIANT_B
2720: 4f 4f 4c 2c 20 75 62 79 74 65 2a 29 3b 0d 0a 09 OOL, ubyte*);...
2730: 48 52 45 53 55 4c 54 20 56 61 72 49 32 46 72 6f HRESULT VarI2Fro
2740: 6d 55 49 31 28 75 62 79 74 65 2c 20 73 68 6f 72 mUI1(ubyte, shor
2750: 74 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 t*);...HRESULT V
2760: 61 72 49 32 46 72 6f 6d 49 34 28 69 6e 74 2c 20 arI2FromI4(int,
2770: 73 68 6f 72 74 2a 29 3b 0d 0a 09 48 52 45 53 55 short*);...HRESU
2780: 4c 54 20 56 61 72 49 32 46 72 6f 6d 52 34 28 66 LT VarI2FromR4(f
2790: 6c 6f 61 74 2c 20 73 68 6f 72 74 2a 29 3b 0d 0a loat, short*);..
27a0: 09 48 52 45 53 55 4c 54 20 56 61 72 49 32 46 72 .HRESULT VarI2Fr
27b0: 6f 6d 52 38 28 64 6f 75 62 6c 65 2c 20 73 68 6f omR8(double, sho
27c0: 72 74 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 rt*);...HRESULT
27d0: 56 61 72 49 32 46 72 6f 6d 43 79 28 43 59 20 63 VarI2FromCy(CY c
27e0: 79 49 6e 2c 20 73 68 6f 72 74 2a 29 3b 0d 0a 09 yIn, short*);...
27f0: 48 52 45 53 55 4c 54 20 56 61 72 49 32 46 72 6f HRESULT VarI2Fro
2800: 6d 44 61 74 65 28 44 41 54 45 2c 20 73 68 6f 72 mDate(DATE, shor
2810: 74 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 t*);...HRESULT V
2820: 61 72 49 32 46 72 6f 6d 53 74 72 28 4f 4c 45 43 arI2FromStr(OLEC
2830: 48 41 52 2a 2c 20 4c 43 49 44 2c 20 75 69 6e 74 HAR*, LCID, uint
2840: 2c 20 73 68 6f 72 74 2a 29 3b 0d 0a 09 48 52 45 , short*);...HRE
2850: 53 55 4c 54 20 56 61 72 49 32 46 72 6f 6d 44 69 SULT VarI2FromDi
2860: 73 70 28 4c 50 44 49 53 50 41 54 43 48 2c 20 4c sp(LPDISPATCH, L
2870: 43 49 44 2c 20 73 68 6f 72 74 2a 29 3b 0d 0a 09 CID, short*);...
2880: 48 52 45 53 55 4c 54 20 56 61 72 49 32 46 72 6f HRESULT VarI2Fro
2890: 6d 42 6f 6f 6c 28 56 41 52 49 41 4e 54 5f 42 4f mBool(VARIANT_BO
28a0: 4f 4c 2c 20 73 68 6f 72 74 2a 29 3b 0d 0a 09 48 OL, short*);...H
28b0: 52 45 53 55 4c 54 20 56 61 72 49 34 46 72 6f 6d RESULT VarI4From
28c0: 55 49 31 28 75 62 79 74 65 2c 20 69 6e 74 2a 29 UI1(ubyte, int*)
28d0: 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 49 ;...HRESULT VarI
28e0: 34 46 72 6f 6d 49 32 28 73 68 6f 72 74 2c 20 69 4FromI2(short, i
28f0: 6e 74 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 nt*);...HRESULT
2900: 56 61 72 49 34 46 72 6f 6d 52 34 28 66 6c 6f 61 VarI4FromR4(floa
2910: 74 2c 20 69 6e 74 2a 29 3b 0d 0a 09 48 52 45 53 t, int*);...HRES
2920: 55 4c 54 20 56 61 72 49 34 46 72 6f 6d 52 38 28 ULT VarI4FromR8(
2930: 64 6f 75 62 6c 65 2c 20 69 6e 74 2a 29 3b 0d 0a double, int*);..
2940: 09 48 52 45 53 55 4c 54 20 56 61 72 49 34 46 72 .HRESULT VarI4Fr
2950: 6f 6d 43 79 28 43 59 2c 20 69 6e 74 2a 29 3b 0d omCy(CY, int*);.
2960: 0a 09 48 52 45 53 55 4c 54 20 56 61 72 49 34 46 ..HRESULT VarI4F
2970: 72 6f 6d 44 61 74 65 28 44 41 54 45 2c 20 69 6e romDate(DATE, in
2980: 74 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 t*);...HRESULT V
2990: 61 72 49 34 46 72 6f 6d 53 74 72 28 4f 4c 45 43 arI4FromStr(OLEC
29a0: 48 41 52 2a 2c 20 4c 43 49 44 2c 20 75 69 6e 74 HAR*, LCID, uint
29b0: 2c 20 69 6e 74 2a 29 3b 0d 0a 09 48 52 45 53 55 , int*);...HRESU
29c0: 4c 54 20 56 61 72 49 34 46 72 6f 6d 44 69 73 70 LT VarI4FromDisp
29d0: 28 4c 50 44 49 53 50 41 54 43 48 2c 20 4c 43 49 (LPDISPATCH, LCI
29e0: 44 2c 20 69 6e 74 2a 29 3b 0d 0a 09 48 52 45 53 D, int*);...HRES
29f0: 55 4c 54 20 56 61 72 49 34 46 72 6f 6d 42 6f 6f ULT VarI4FromBoo
2a00: 6c 28 56 41 52 49 41 4e 54 5f 42 4f 4f 4c 2c 20 l(VARIANT_BOOL,
2a10: 69 6e 74 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 int*);...HRESULT
2a20: 20 56 61 72 52 34 46 72 6f 6d 55 49 31 28 75 62 VarR4FromUI1(ub
2a30: 79 74 65 2c 20 66 6c 6f 61 74 2a 29 3b 0d 0a 09 yte, float*);...
2a40: 48 52 45 53 55 4c 54 20 56 61 72 52 34 46 72 6f HRESULT VarR4Fro
2a50: 6d 49 32 28 73 68 6f 72 74 2c 20 66 6c 6f 61 74 mI2(short, float
2a60: 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 *);...HRESULT Va
2a70: 72 52 34 46 72 6f 6d 49 34 28 69 6e 74 2c 20 66 rR4FromI4(int, f
2a80: 6c 6f 61 74 2a 29 3b 0d 0a 09 48 52 45 53 55 4c loat*);...HRESUL
2a90: 54 20 56 61 72 52 34 46 72 6f 6d 52 38 28 64 6f T VarR4FromR8(do
2aa0: 75 62 6c 65 2c 20 66 6c 6f 61 74 2a 29 3b 0d 0a uble, float*);..
2ab0: 09 48 52 45 53 55 4c 54 20 56 61 72 52 34 46 72 .HRESULT VarR4Fr
2ac0: 6f 6d 43 79 28 43 59 2c 20 66 6c 6f 61 74 2a 29 omCy(CY, float*)
2ad0: 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 52 ;...HRESULT VarR
2ae0: 34 46 72 6f 6d 44 61 74 65 28 44 41 54 45 2c 20 4FromDate(DATE,
2af0: 66 6c 6f 61 74 2a 29 3b 0d 0a 09 48 52 45 53 55 float*);...HRESU
2b00: 4c 54 20 56 61 72 52 34 46 72 6f 6d 53 74 72 28 LT VarR4FromStr(
2b10: 4f 4c 45 43 48 41 52 2a 2c 20 4c 43 49 44 2c 20 OLECHAR*, LCID,
2b20: 75 69 6e 74 2c 20 66 6c 6f 61 74 2a 29 3b 0d 0a uint, float*);..
2b30: 09 48 52 45 53 55 4c 54 20 56 61 72 52 34 46 72 .HRESULT VarR4Fr
2b40: 6f 6d 44 69 73 70 28 4c 50 44 49 53 50 41 54 43 omDisp(LPDISPATC
2b50: 48 2c 20 4c 43 49 44 2c 20 66 6c 6f 61 74 2a 29 H, LCID, float*)
2b60: 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 52 ;...HRESULT VarR
2b70: 34 46 72 6f 6d 42 6f 6f 6c 28 56 41 52 49 41 4e 4FromBool(VARIAN
2b80: 54 5f 42 4f 4f 4c 2c 20 66 6c 6f 61 74 2a 29 3b T_BOOL, float*);
2b90: 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 52 38 ...HRESULT VarR8
2ba0: 46 72 6f 6d 55 49 31 28 75 62 79 74 65 2c 20 64 FromUI1(ubyte, d
2bb0: 6f 75 62 6c 65 2a 29 3b 0d 0a 09 48 52 45 53 55 ouble*);...HRESU
2bc0: 4c 54 20 56 61 72 52 38 46 72 6f 6d 49 32 28 73 LT VarR8FromI2(s
2bd0: 68 6f 72 74 2c 20 64 6f 75 62 6c 65 2a 29 3b 0d hort, double*);.
2be0: 0a 09 48 52 45 53 55 4c 54 20 56 61 72 52 38 46 ..HRESULT VarR8F
2bf0: 72 6f 6d 49 34 28 69 6e 74 2c 20 64 6f 75 62 6c romI4(int, doubl
2c00: 65 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 e*);...HRESULT V
2c10: 61 72 52 38 46 72 6f 6d 52 34 28 66 6c 6f 61 74 arR8FromR4(float
2c20: 2c 20 64 6f 75 62 6c 65 2a 29 3b 0d 0a 09 48 52 , double*);...HR
2c30: 45 53 55 4c 54 20 56 61 72 52 38 46 72 6f 6d 43 ESULT VarR8FromC
2c40: 79 28 43 59 2c 20 64 6f 75 62 6c 65 2a 29 3b 0d y(CY, double*);.
2c50: 0a 09 48 52 45 53 55 4c 54 20 56 61 72 52 38 46 ..HRESULT VarR8F
2c60: 72 6f 6d 44 61 74 65 28 44 41 54 45 2c 20 64 6f romDate(DATE, do
2c70: 75 62 6c 65 2a 29 3b 0d 0a 09 48 52 45 53 55 4c uble*);...HRESUL
2c80: 54 20 56 61 72 52 38 46 72 6f 6d 53 74 72 28 4f T VarR8FromStr(O
2c90: 4c 45 43 48 41 52 2a 2c 20 4c 43 49 44 2c 20 75 LECHAR*, LCID, u
2ca0: 69 6e 74 2c 20 64 6f 75 62 6c 65 2a 29 3b 0d 0a int, double*);..
2cb0: 09 48 52 45 53 55 4c 54 20 56 61 72 52 38 46 72 .HRESULT VarR8Fr
2cc0: 6f 6d 44 69 73 70 28 4c 50 44 49 53 50 41 54 43 omDisp(LPDISPATC
2cd0: 48 2c 20 4c 43 49 44 2c 20 64 6f 75 62 6c 65 2a H, LCID, double*
2ce0: 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 );...HRESULT Var
2cf0: 52 38 46 72 6f 6d 42 6f 6f 6c 28 56 41 52 49 41 R8FromBool(VARIA
2d00: 4e 54 5f 42 4f 4f 4c 2c 20 64 6f 75 62 6c 65 2a NT_BOOL, double*
2d10: 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 );...HRESULT Var
2d20: 52 38 46 72 6f 6d 44 65 63 28 44 45 43 49 4d 41 R8FromDec(DECIMA
2d30: 4c 2a 2c 20 64 6f 75 62 6c 65 2a 29 3b 0d 0a 09 L*, double*);...
2d40: 48 52 45 53 55 4c 54 20 56 61 72 44 61 74 65 46 HRESULT VarDateF
2d50: 72 6f 6d 55 49 31 28 75 62 79 74 65 2c 20 44 41 romUI1(ubyte, DA
2d60: 54 45 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 TE*);...HRESULT
2d70: 56 61 72 44 61 74 65 46 72 6f 6d 49 32 28 73 68 VarDateFromI2(sh
2d80: 6f 72 74 2c 20 44 41 54 45 2a 29 3b 0d 0a 09 48 ort, DATE*);...H
2d90: 52 45 53 55 4c 54 20 56 61 72 44 61 74 65 46 72 RESULT VarDateFr
2da0: 6f 6d 49 34 28 69 6e 74 2c 20 44 41 54 45 2a 29 omI4(int, DATE*)
2db0: 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 44 ;...HRESULT VarD
2dc0: 61 74 65 46 72 6f 6d 52 34 28 66 6c 6f 61 74 2c ateFromR4(float,
2dd0: 20 44 41 54 45 2a 29 3b 0d 0a 09 48 52 45 53 55 DATE*);...HRESU
2de0: 4c 54 20 56 61 72 44 61 74 65 46 72 6f 6d 52 38 LT VarDateFromR8
2df0: 28 64 6f 75 62 6c 65 2c 20 44 41 54 45 2a 29 3b (double, DATE*);
2e00: 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 44 61 ...HRESULT VarDa
2e10: 74 65 46 72 6f 6d 43 79 28 43 59 2c 20 44 41 54 teFromCy(CY, DAT
2e20: 45 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 E*);...HRESULT V
2e30: 61 72 44 61 74 65 46 72 6f 6d 53 74 72 28 4f 4c arDateFromStr(OL
2e40: 45 43 48 41 52 2a 2c 20 4c 43 49 44 2c 20 75 69 ECHAR*, LCID, ui
2e50: 6e 74 2c 20 44 41 54 45 2a 29 3b 0d 0a 09 48 52 nt, DATE*);...HR
2e60: 45 53 55 4c 54 20 56 61 72 44 61 74 65 46 72 6f ESULT VarDateFro
2e70: 6d 44 69 73 70 28 4c 50 44 49 53 50 41 54 43 48 mDisp(LPDISPATCH
2e80: 2c 20 4c 43 49 44 2c 20 44 41 54 45 2a 29 3b 0d , LCID, DATE*);.
2e90: 0a 09 48 52 45 53 55 4c 54 20 56 61 72 44 61 74 ..HRESULT VarDat
2ea0: 65 46 72 6f 6d 42 6f 6f 6c 28 56 41 52 49 41 4e eFromBool(VARIAN
2eb0: 54 5f 42 4f 4f 4c 2c 20 44 41 54 45 2a 29 3b 0d T_BOOL, DATE*);.
2ec0: 0a 09 48 52 45 53 55 4c 54 20 56 61 72 43 79 46 ..HRESULT VarCyF
2ed0: 72 6f 6d 55 49 31 28 75 62 79 74 65 2c 20 43 59 romUI1(ubyte, CY
2ee0: 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 *);...HRESULT Va
2ef0: 72 43 79 46 72 6f 6d 49 32 28 73 68 6f 72 74 2c rCyFromI2(short,
2f00: 20 43 59 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 CY*);...HRESULT
2f10: 20 56 61 72 43 79 46 72 6f 6d 49 34 28 69 6e 74 VarCyFromI4(int
2f20: 2c 20 43 59 2a 29 3b 0d 0a 09 48 52 45 53 55 4c , CY*);...HRESUL
2f30: 54 20 56 61 72 43 79 46 72 6f 6d 52 34 28 66 6c T VarCyFromR4(fl
2f40: 6f 61 74 2c 20 43 59 2a 29 3b 0d 0a 09 48 52 45 oat, CY*);...HRE
2f50: 53 55 4c 54 20 56 61 72 43 79 46 72 6f 6d 52 38 SULT VarCyFromR8
2f60: 28 64 6f 75 62 6c 65 2c 20 43 59 2a 29 3b 0d 0a (double, CY*);..
2f70: 09 48 52 45 53 55 4c 54 20 56 61 72 43 79 46 72 .HRESULT VarCyFr
2f80: 6f 6d 44 61 74 65 28 44 41 54 45 2c 20 43 59 2a omDate(DATE, CY*
2f90: 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 );...HRESULT Var
2fa0: 43 79 46 72 6f 6d 53 74 72 28 4f 4c 45 43 48 41 CyFromStr(OLECHA
2fb0: 52 2a 2c 20 4c 43 49 44 2c 20 75 69 6e 74 2c 20 R*, LCID, uint,
2fc0: 43 59 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 CY*);...HRESULT
2fd0: 56 61 72 43 79 46 72 6f 6d 44 69 73 70 28 4c 50 VarCyFromDisp(LP
2fe0: 44 49 53 50 41 54 43 48 2c 20 4c 43 49 44 2c 20 DISPATCH, LCID,
2ff0: 43 59 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 CY*);...HRESULT
3000: 56 61 72 43 79 46 72 6f 6d 42 6f 6f 6c 28 56 41 VarCyFromBool(VA
3010: 52 49 41 4e 54 5f 42 4f 4f 4c 2c 20 43 59 2a 29 RIANT_BOOL, CY*)
3020: 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 42 ;...HRESULT VarB
3030: 73 74 72 46 72 6f 6d 55 49 31 28 75 62 79 74 65 strFromUI1(ubyte
3040: 2c 20 4c 43 49 44 2c 20 75 69 6e 74 2c 20 42 53 , LCID, uint, BS
3050: 54 52 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 TR*);...HRESULT
3060: 56 61 72 42 73 74 72 46 72 6f 6d 49 32 28 73 68 VarBstrFromI2(sh
3070: 6f 72 74 2c 20 4c 43 49 44 2c 20 75 69 6e 74 2c ort, LCID, uint,
3080: 20 42 53 54 52 2a 29 3b 0d 0a 09 48 52 45 53 55 BSTR*);...HRESU
3090: 4c 54 20 56 61 72 42 73 74 72 46 72 6f 6d 49 34 LT VarBstrFromI4
30a0: 28 69 6e 74 2c 20 4c 43 49 44 2c 20 75 69 6e 74 (int, LCID, uint
30b0: 2c 20 42 53 54 52 2a 29 3b 0d 0a 09 48 52 45 53 , BSTR*);...HRES
30c0: 55 4c 54 20 56 61 72 42 73 74 72 46 72 6f 6d 52 ULT VarBstrFromR
30d0: 34 28 66 6c 6f 61 74 2c 20 4c 43 49 44 2c 20 75 4(float, LCID, u
30e0: 69 6e 74 2c 20 42 53 54 52 2a 29 3b 0d 0a 09 48 int, BSTR*);...H
30f0: 52 45 53 55 4c 54 20 56 61 72 42 73 74 72 46 72 RESULT VarBstrFr
3100: 6f 6d 52 38 28 64 6f 75 62 6c 65 2c 20 4c 43 49 omR8(double, LCI
3110: 44 2c 20 75 69 6e 74 2c 20 42 53 54 52 2a 29 3b D, uint, BSTR*);
3120: 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 42 73 ...HRESULT VarBs
3130: 74 72 46 72 6f 6d 43 79 28 43 59 2c 20 4c 43 49 trFromCy(CY, LCI
3140: 44 2c 20 75 69 6e 74 2c 20 42 53 54 52 2a 29 3b D, uint, BSTR*);
3150: 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 42 73 ...HRESULT VarBs
3160: 74 72 46 72 6f 6d 44 61 74 65 28 44 41 54 45 2c trFromDate(DATE,
3170: 20 4c 43 49 44 2c 20 75 69 6e 74 2c 20 42 53 54 LCID, uint, BST
3180: 52 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 R*);...HRESULT V
3190: 61 72 42 73 74 72 46 72 6f 6d 44 69 73 70 28 4c arBstrFromDisp(L
31a0: 50 44 49 53 50 41 54 43 48 2c 20 4c 43 49 44 2c PDISPATCH, LCID,
31b0: 20 75 69 6e 74 2c 20 42 53 54 52 2a 29 3b 0d 0a uint, BSTR*);..
31c0: 09 48 52 45 53 55 4c 54 20 56 61 72 42 73 74 72 .HRESULT VarBstr
31d0: 46 72 6f 6d 42 6f 6f 6c 28 56 41 52 49 41 4e 54 FromBool(VARIANT
31e0: 5f 42 4f 4f 4c 2c 20 4c 43 49 44 2c 20 75 69 6e _BOOL, LCID, uin
31f0: 74 2c 20 42 53 54 52 2a 29 3b 0d 0a 09 48 52 45 t, BSTR*);...HRE
3200: 53 55 4c 54 20 56 61 72 42 6f 6f 6c 46 72 6f 6d SULT VarBoolFrom
3210: 55 49 31 28 75 62 79 74 65 2c 20 56 41 52 49 41 UI1(ubyte, VARIA
3220: 4e 54 5f 42 4f 4f 4c 2a 29 3b 0d 0a 09 48 52 45 NT_BOOL*);...HRE
3230: 53 55 4c 54 20 56 61 72 42 6f 6f 6c 46 72 6f 6d SULT VarBoolFrom
3240: 49 32 28 73 68 6f 72 74 2c 20 56 41 52 49 41 4e I2(short, VARIAN
3250: 54 5f 42 4f 4f 4c 2a 29 3b 0d 0a 09 48 52 45 53 T_BOOL*);...HRES
3260: 55 4c 54 20 56 61 72 42 6f 6f 6c 46 72 6f 6d 49 ULT VarBoolFromI
3270: 34 28 69 6e 74 2c 20 56 41 52 49 41 4e 54 5f 42 4(int, VARIANT_B
3280: 4f 4f 4c 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 OOL*);...HRESULT
3290: 20 56 61 72 42 6f 6f 6c 46 72 6f 6d 52 34 28 66 VarBoolFromR4(f
32a0: 6c 6f 61 74 2c 20 56 41 52 49 41 4e 54 5f 42 4f loat, VARIANT_BO
32b0: 4f 4c 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 OL*);...HRESULT
32c0: 56 61 72 42 6f 6f 6c 46 72 6f 6d 52 38 28 64 6f VarBoolFromR8(do
32d0: 75 62 6c 65 2c 20 56 41 52 49 41 4e 54 5f 42 4f uble, VARIANT_BO
32e0: 4f 4c 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 OL*);...HRESULT
32f0: 56 61 72 42 6f 6f 6c 46 72 6f 6d 44 61 74 65 28 VarBoolFromDate(
3300: 44 41 54 45 2c 20 56 41 52 49 41 4e 54 5f 42 4f DATE, VARIANT_BO
3310: 4f 4c 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 OL*);...HRESULT
3320: 56 61 72 42 6f 6f 6c 46 72 6f 6d 43 79 28 43 59 VarBoolFromCy(CY
3330: 2c 20 56 41 52 49 41 4e 54 5f 42 4f 4f 4c 2a 29 , VARIANT_BOOL*)
3340: 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 42 ;...HRESULT VarB
3350: 6f 6f 6c 46 72 6f 6d 53 74 72 28 4f 4c 45 43 48 oolFromStr(OLECH
3360: 41 52 2a 2c 20 4c 43 49 44 2c 20 75 69 6e 74 2c AR*, LCID, uint,
3370: 20 56 41 52 49 41 4e 54 5f 42 4f 4f 4c 2a 29 3b VARIANT_BOOL*);
3380: 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 42 6f ...HRESULT VarBo
3390: 6f 6c 46 72 6f 6d 44 69 73 70 28 4c 50 44 49 53 olFromDisp(LPDIS
33a0: 50 41 54 43 48 2c 20 4c 43 49 44 2c 20 56 41 52 PATCH, LCID, VAR
33b0: 49 41 4e 54 5f 42 4f 4f 4c 2a 29 3b 0d 0a 09 48 IANT_BOOL*);...H
33c0: 52 45 53 55 4c 54 20 56 61 72 44 65 63 46 72 6f RESULT VarDecFro
33d0: 6d 52 38 28 64 6f 75 62 6c 65 2c 20 44 45 43 49 mR8(double, DECI
33e0: 4d 41 4c 2a 29 3b 0d 0a 09 55 4c 4f 4e 47 20 4c MAL*);...ULONG L
33f0: 48 61 73 68 56 61 6c 4f 66 4e 61 6d 65 53 79 73 HashValOfNameSys
3400: 41 28 53 59 53 4b 49 4e 44 2c 20 4c 43 49 44 2c A(SYSKIND, LCID,
3410: 20 63 6f 6e 73 74 28 63 68 61 72 29 2a 29 3b 0d const(char)*);.
3420: 0a 09 55 4c 4f 4e 47 20 4c 48 61 73 68 56 61 6c ..ULONG LHashVal
3430: 4f 66 4e 61 6d 65 53 79 73 28 53 59 53 4b 49 4e OfNameSys(SYSKIN
3440: 44 2c 20 4c 43 49 44 2c 20 63 6f 6e 73 74 28 4f D, LCID, const(O
3450: 4c 45 43 48 41 52 29 2a 29 3b 0d 0a 09 48 52 45 LECHAR)*);...HRE
3460: 53 55 4c 54 20 4c 6f 61 64 54 79 70 65 4c 69 62 SULT LoadTypeLib
3470: 28 63 6f 6e 73 74 28 4f 4c 45 43 48 41 52 29 2a (const(OLECHAR)*
3480: 2c 20 4c 50 54 59 50 45 4c 49 42 2a 29 3b 0d 0a , LPTYPELIB*);..
3490: 09 48 52 45 53 55 4c 54 20 4c 6f 61 64 54 79 70 .HRESULT LoadTyp
34a0: 65 4c 69 62 45 78 28 4c 50 43 4f 4c 45 53 54 52 eLibEx(LPCOLESTR
34b0: 2c 20 52 45 47 4b 49 4e 44 2c 20 4c 50 54 59 50 , REGKIND, LPTYP
34c0: 45 4c 49 42 2a 29 3b 0d 0a 09 48 52 45 53 55 4c ELIB*);...HRESUL
34d0: 54 20 4c 6f 61 64 52 65 67 54 79 70 65 4c 69 62 T LoadRegTypeLib
34e0: 28 52 45 46 47 55 49 44 2c 20 57 4f 52 44 2c 20 (REFGUID, WORD,
34f0: 57 4f 52 44 2c 20 4c 43 49 44 2c 20 4c 50 54 59 WORD, LCID, LPTY
3500: 50 45 4c 49 42 2a 29 3b 0d 0a 09 48 52 45 53 55 PELIB*);...HRESU
3510: 4c 54 20 51 75 65 72 79 50 61 74 68 4f 66 52 65 LT QueryPathOfRe
3520: 67 54 79 70 65 4c 69 62 28 52 45 46 47 55 49 44 gTypeLib(REFGUID
3530: 2c 20 75 73 68 6f 72 74 2c 20 75 73 68 6f 72 74 , ushort, ushort
3540: 2c 20 4c 43 49 44 2c 20 4c 50 42 53 54 52 29 3b , LCID, LPBSTR);
3550: 0d 0a 09 48 52 45 53 55 4c 54 20 52 65 67 69 73 ...HRESULT Regis
3560: 74 65 72 54 79 70 65 4c 69 62 28 4c 50 54 59 50 terTypeLib(LPTYP
3570: 45 4c 49 42 2c 20 4f 4c 45 43 48 41 52 2a 2c 20 ELIB, OLECHAR*,
3580: 4f 4c 45 43 48 41 52 2a 29 3b 0d 0a 09 48 52 45 OLECHAR*);...HRE
3590: 53 55 4c 54 20 55 6e 52 65 67 69 73 74 65 72 54 SULT UnRegisterT
35a0: 79 70 65 4c 69 62 28 52 45 46 47 55 49 44 2c 20 ypeLib(REFGUID,
35b0: 57 4f 52 44 2c 20 57 4f 52 44 2c 20 4c 43 49 44 WORD, WORD, LCID
35c0: 2c 20 53 59 53 4b 49 4e 44 29 3b 0d 0a 09 2f 2f , SYSKIND);...//
35d0: 20 6e 6f 74 20 61 63 74 75 61 6c 6c 79 20 64 65 not actually de
35e0: 70 72 65 63 61 74 65 64 2c 20 62 75 74 20 64 65 precated, but de
35f0: 70 65 6e 64 73 20 6f 6e 20 75 6e 63 6f 6e 76 65 pends on unconve
3600: 72 74 65 64 20 49 43 72 65 61 74 65 54 79 70 65 rted ICreateType
3610: 4c 69 62 0d 0a 09 64 65 70 72 65 63 61 74 65 64 Lib...deprecated
3620: 20 48 52 45 53 55 4c 54 20 43 72 65 61 74 65 54 HRESULT CreateT
3630: 79 70 65 4c 69 62 28 53 59 53 4b 49 4e 44 2c 20 ypeLib(SYSKIND,
3640: 63 6f 6e 73 74 28 4f 4c 45 43 48 41 52 29 2a 2c const(OLECHAR)*,
3650: 20 4c 50 43 52 45 41 54 45 54 59 50 45 4c 49 42 LPCREATETYPELIB
3660: 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 44 69 *);...HRESULT Di
3670: 73 70 47 65 74 50 61 72 61 6d 28 44 49 53 50 50 spGetParam(DISPP
3680: 41 52 41 4d 53 2a 2c 20 55 49 4e 54 2c 20 56 41 ARAMS*, UINT, VA
3690: 52 54 59 50 45 2c 20 56 41 52 49 41 4e 54 2a 2c RTYPE, VARIANT*,
36a0: 20 55 49 4e 54 2a 29 3b 0d 0a 09 48 52 45 53 55 UINT*);...HRESU
36b0: 4c 54 20 44 69 73 70 47 65 74 49 44 73 4f 66 4e LT DispGetIDsOfN
36c0: 61 6d 65 73 28 4c 50 54 59 50 45 49 4e 46 4f 2c ames(LPTYPEINFO,
36d0: 20 4f 4c 45 43 48 41 52 2a 2a 2c 20 55 49 4e 54 OLECHAR**, UINT
36e0: 2c 20 44 49 53 50 49 44 2a 29 3b 0d 0a 09 48 52 , DISPID*);...HR
36f0: 45 53 55 4c 54 20 44 69 73 70 49 6e 76 6f 6b 65 ESULT DispInvoke
3700: 28 76 6f 69 64 2a 2c 20 4c 50 54 59 50 45 49 4e (void*, LPTYPEIN
3710: 46 4f 2c 20 44 49 53 50 49 44 2c 20 57 4f 52 44 FO, DISPID, WORD
3720: 2c 20 44 49 53 50 50 41 52 41 4d 53 2a 2c 20 56 , DISPPARAMS*, V
3730: 41 52 49 41 4e 54 2a 2c 20 45 58 43 45 50 49 4e ARIANT*, EXCEPIN
3740: 46 4f 2a 2c 20 55 49 4e 54 2a 29 3b 0d 0a 09 48 FO*, UINT*);...H
3750: 52 45 53 55 4c 54 20 43 72 65 61 74 65 44 69 73 RESULT CreateDis
3760: 70 54 79 70 65 49 6e 66 6f 28 49 4e 54 45 52 46 pTypeInfo(INTERF
3770: 41 43 45 44 41 54 41 2a 2c 20 4c 43 49 44 2c 20 ACEDATA*, LCID,
3780: 4c 50 54 59 50 45 49 4e 46 4f 2a 29 3b 0d 0a 09 LPTYPEINFO*);...
3790: 48 52 45 53 55 4c 54 20 43 72 65 61 74 65 53 74 HRESULT CreateSt
37a0: 64 44 69 73 70 61 74 63 68 28 49 55 6e 6b 6e 6f dDispatch(IUnkno
37b0: 77 6e 2c 20 76 6f 69 64 2a 2c 20 4c 50 54 59 50 wn, void*, LPTYP
37c0: 45 49 4e 46 4f 2c 20 49 55 6e 6b 6e 6f 77 6e 2a EINFO, IUnknown*
37d0: 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 52 65 67 );...HRESULT Reg
37e0: 69 73 74 65 72 41 63 74 69 76 65 4f 62 6a 65 63 isterActiveObjec
37f0: 74 28 49 55 6e 6b 6e 6f 77 6e 2c 20 52 45 46 43 t(IUnknown, REFC
3800: 4c 53 49 44 2c 20 44 57 4f 52 44 2c 20 44 57 4f LSID, DWORD, DWO
3810: 52 44 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 RD*);...HRESULT
3820: 52 65 76 6f 6b 65 41 63 74 69 76 65 4f 62 6a 65 RevokeActiveObje
3830: 63 74 28 44 57 4f 52 44 2c 20 76 6f 69 64 2a 29 ct(DWORD, void*)
3840: 3b 0d 0a 09 48 52 45 53 55 4c 54 20 47 65 74 41 ;...HRESULT GetA
3850: 63 74 69 76 65 4f 62 6a 65 63 74 28 52 45 46 43 ctiveObject(REFC
3860: 4c 53 49 44 2c 20 76 6f 69 64 2a 2c 20 49 55 6e LSID, void*, IUn
3870: 6b 6e 6f 77 6e 2a 29 3b 0d 0a 09 48 52 45 53 55 known*);...HRESU
3880: 4c 54 20 53 65 74 45 72 72 6f 72 49 6e 66 6f 28 LT SetErrorInfo(
3890: 75 69 6e 74 2c 20 4c 50 45 52 52 4f 52 49 4e 46 uint, LPERRORINF
38a0: 4f 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 47 65 O);...HRESULT Ge
38b0: 74 45 72 72 6f 72 49 6e 66 6f 28 75 69 6e 74 2c tErrorInfo(uint,
38c0: 20 4c 50 45 52 52 4f 52 49 4e 46 4f 2a 29 3b 0d LPERRORINFO*);.
38d0: 0a 09 48 52 45 53 55 4c 54 20 43 72 65 61 74 65 ..HRESULT Create
38e0: 45 72 72 6f 72 49 6e 66 6f 28 4c 50 43 52 45 41 ErrorInfo(LPCREA
38f0: 54 45 45 52 52 4f 52 49 4e 46 4f 2a 29 3b 0d 0a TEERRORINFO*);..
3900: 09 75 69 6e 74 20 4f 61 42 75 69 6c 64 56 65 72 .uint OaBuildVer
3910: 73 69 6f 6e 28 29 3b 0d 0a 09 48 52 45 53 55 4c sion();...HRESUL
3920: 54 20 56 65 63 74 6f 72 46 72 6f 6d 42 73 74 72 T VectorFromBstr
3930: 20 28 42 53 54 52 2c 20 53 41 46 45 41 52 52 41 (BSTR, SAFEARRA
3940: 59 2a 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 Y**);...HRESULT
3950: 42 73 74 72 46 72 6f 6d 56 65 63 74 6f 72 20 28 BstrFromVector (
3960: 53 41 46 45 41 52 52 41 59 2a 2c 20 42 53 54 52 SAFEARRAY*, BSTR
3970: 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 *);...HRESULT Va
3980: 72 50 61 72 73 65 4e 75 6d 46 72 6f 6d 53 74 72 rParseNumFromStr
3990: 28 4f 4c 45 43 48 41 52 2a 2c 20 4c 43 49 44 2c (OLECHAR*, LCID,
39a0: 20 55 4c 4f 4e 47 2c 20 4e 55 4d 50 41 52 53 45 ULONG, NUMPARSE
39b0: 2a 2c 20 42 59 54 45 2a 29 3b 0d 0a 09 48 52 45 *, BYTE*);...HRE
39c0: 53 55 4c 54 20 56 61 72 4e 75 6d 46 72 6f 6d 50 SULT VarNumFromP
39d0: 61 72 73 65 4e 75 6d 28 4e 55 4d 50 41 52 53 45 arseNum(NUMPARSE
39e0: 2a 2c 20 42 59 54 45 2a 2c 20 55 4c 4f 4e 47 2c *, BYTE*, ULONG,
39f0: 20 56 41 52 49 41 4e 54 2a 29 3b 0d 0a 0d 0a 09 VARIANT*);.....
3a00: 48 52 45 53 55 4c 54 20 56 61 72 41 64 64 28 4c HRESULT VarAdd(L
3a10: 50 56 41 52 49 41 4e 54 2c 20 4c 50 56 41 52 49 PVARIANT, LPVARI
3a20: 41 4e 54 2c 20 4c 50 56 41 52 49 41 4e 54 29 3b ANT, LPVARIANT);
3a30: 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 53 75 ...HRESULT VarSu
3a40: 62 28 4c 50 56 41 52 49 41 4e 54 2c 20 4c 50 56 b(LPVARIANT, LPV
3a50: 41 52 49 41 4e 54 2c 20 4c 50 56 41 52 49 41 4e ARIANT, LPVARIAN
3a60: 54 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 T);...HRESULT Va
3a70: 72 4d 75 6c 28 4c 50 56 41 52 49 41 4e 54 2c 20 rMul(LPVARIANT,
3a80: 4c 50 56 41 52 49 41 4e 54 2c 20 4c 50 56 41 52 LPVARIANT, LPVAR
3a90: 49 41 4e 54 29 3b 0d 0a 09 48 52 45 53 55 4c 54 IANT);...HRESULT
3aa0: 20 56 61 72 44 69 76 28 4c 50 56 41 52 49 41 4e VarDiv(LPVARIAN
3ab0: 54 2c 20 4c 50 56 41 52 49 41 4e 54 2c 20 4c 50 T, LPVARIANT, LP
3ac0: 56 41 52 49 41 4e 54 29 3b 0d 0a 0d 0a 09 48 52 VARIANT);.....HR
3ad0: 45 53 55 4c 54 20 56 61 72 55 49 31 46 72 6f 6d ESULT VarUI1From
3ae0: 49 32 28 53 48 4f 52 54 2c 20 42 59 54 45 2a 29 I2(SHORT, BYTE*)
3af0: 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 55 ;...HRESULT VarU
3b00: 49 31 46 72 6f 6d 49 34 28 4c 4f 4e 47 2c 20 42 I1FromI4(LONG, B
3b10: 59 54 45 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 YTE*);...HRESULT
3b20: 20 56 61 72 55 49 31 46 72 6f 6d 49 38 28 4c 4f VarUI1FromI8(LO
3b30: 4e 47 36 34 2c 20 42 59 54 45 2a 29 3b 0d 0a 09 NG64, BYTE*);...
3b40: 48 52 45 53 55 4c 54 20 56 61 72 55 49 31 46 72 HRESULT VarUI1Fr
3b50: 6f 6d 52 34 28 46 4c 4f 41 54 2c 20 42 59 54 45 omR4(FLOAT, BYTE
3b60: 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 *);...HRESULT Va
3b70: 72 55 49 31 46 72 6f 6d 52 38 28 44 4f 55 42 4c rUI1FromR8(DOUBL
3b80: 45 2c 20 42 59 54 45 2a 29 3b 0d 0a 09 48 52 45 E, BYTE*);...HRE
3b90: 53 55 4c 54 20 56 61 72 55 49 31 46 72 6f 6d 44 SULT VarUI1FromD
3ba0: 61 74 65 28 44 41 54 45 2c 20 42 59 54 45 2a 29 ate(DATE, BYTE*)
3bb0: 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 55 ;...HRESULT VarU
3bc0: 49 31 46 72 6f 6d 42 6f 6f 6c 28 56 41 52 49 41 I1FromBool(VARIA
3bd0: 4e 54 5f 42 4f 4f 4c 2c 20 42 59 54 45 2a 29 3b NT_BOOL, BYTE*);
3be0: 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 55 49 ...HRESULT VarUI
3bf0: 31 46 72 6f 6d 49 31 28 62 79 74 65 2c 20 42 59 1FromI1(byte, BY
3c00: 54 45 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 TE*);...HRESULT
3c10: 56 61 72 55 49 31 46 72 6f 6d 55 49 32 28 55 53 VarUI1FromUI2(US
3c20: 48 4f 52 54 2c 20 42 59 54 45 2a 29 3b 0d 0a 09 HORT, BYTE*);...
3c30: 48 52 45 53 55 4c 54 20 56 61 72 55 49 31 46 72 HRESULT VarUI1Fr
3c40: 6f 6d 55 49 34 28 55 4c 4f 4e 47 2c 20 42 59 54 omUI4(ULONG, BYT
3c50: 45 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 E*);...HRESULT V
3c60: 61 72 55 49 31 46 72 6f 6d 55 49 38 28 55 4c 4f arUI1FromUI8(ULO
3c70: 4e 47 36 34 2c 20 42 59 54 45 2a 29 3b 0d 0a 09 NG64, BYTE*);...
3c80: 48 52 45 53 55 4c 54 20 56 61 72 55 49 31 46 72 HRESULT VarUI1Fr
3c90: 6f 6d 53 74 72 28 4f 4c 45 43 48 41 52 2a 2c 20 omStr(OLECHAR*,
3ca0: 4c 43 49 44 2c 20 55 4c 4f 4e 47 2c 20 42 59 54 LCID, ULONG, BYT
3cb0: 45 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 E*);...HRESULT V
3cc0: 61 72 55 49 31 46 72 6f 6d 43 79 28 43 59 2c 20 arUI1FromCy(CY,
3cd0: 42 59 54 45 2a 29 3b 0d 0a 09 48 52 45 53 55 4c BYTE*);...HRESUL
3ce0: 54 20 56 61 72 55 49 31 46 72 6f 6d 44 65 63 28 T VarUI1FromDec(
3cf0: 44 45 43 49 4d 41 4c 2a 2c 20 42 59 54 45 2a 29 DECIMAL*, BYTE*)
3d00: 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 55 ;...HRESULT VarU
3d10: 49 31 46 72 6f 6d 44 69 73 70 28 49 44 69 73 70 I1FromDisp(IDisp
3d20: 61 74 63 68 2c 20 4c 43 49 44 2c 20 42 59 54 45 atch, LCID, BYTE
3d30: 2a 29 3b 0d 0a 0d 0a 09 48 52 45 53 55 4c 54 20 *);.....HRESULT
3d40: 56 61 72 49 32 46 72 6f 6d 55 49 31 28 42 59 54 VarI2FromUI1(BYT
3d50: 45 2c 20 53 48 4f 52 54 2a 29 3b 0d 0a 09 48 52 E, SHORT*);...HR
3d60: 45 53 55 4c 54 20 56 61 72 49 32 46 72 6f 6d 49 ESULT VarI2FromI
3d70: 34 28 4c 4f 4e 47 2c 20 53 48 4f 52 54 2a 29 3b 4(LONG, SHORT*);
3d80: 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 49 32 ...HRESULT VarI2
3d90: 46 72 6f 6d 49 38 28 4c 4f 4e 47 36 34 2c 20 53 FromI8(LONG64, S
3da0: 48 4f 52 54 2a 29 3b 0d 0a 09 48 52 45 53 55 4c HORT*);...HRESUL
3db0: 54 20 56 61 72 49 32 46 72 6f 6d 52 34 28 46 4c T VarI2FromR4(FL
3dc0: 4f 41 54 2c 20 53 48 4f 52 54 2a 29 3b 0d 0a 09 OAT, SHORT*);...
3dd0: 48 52 45 53 55 4c 54 20 56 61 72 49 32 46 72 6f HRESULT VarI2Fro
3de0: 6d 52 38 28 44 4f 55 42 4c 45 2c 20 53 48 4f 52 mR8(DOUBLE, SHOR
3df0: 54 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 T*);...HRESULT V
3e00: 61 72 49 32 46 72 6f 6d 44 61 74 65 28 44 41 54 arI2FromDate(DAT
3e10: 45 2c 20 53 48 4f 52 54 2a 29 3b 0d 0a 09 48 52 E, SHORT*);...HR
3e20: 45 53 55 4c 54 20 56 61 72 49 32 46 72 6f 6d 42 ESULT VarI2FromB
3e30: 6f 6f 6c 28 56 41 52 49 41 4e 54 5f 42 4f 4f 4c ool(VARIANT_BOOL
3e40: 2c 20 53 48 4f 52 54 2a 29 3b 0d 0a 09 48 52 45 , SHORT*);...HRE
3e50: 53 55 4c 54 20 56 61 72 49 32 46 72 6f 6d 49 31 SULT VarI2FromI1
3e60: 28 62 79 74 65 2c 20 53 48 4f 52 54 2a 29 3b 0d (byte, SHORT*);.
3e70: 0a 09 48 52 45 53 55 4c 54 20 56 61 72 49 32 46 ..HRESULT VarI2F
3e80: 72 6f 6d 55 49 32 28 55 53 48 4f 52 54 2c 20 53 romUI2(USHORT, S
3e90: 48 4f 52 54 2a 29 3b 0d 0a 09 48 52 45 53 55 4c HORT*);...HRESUL
3ea0: 54 20 56 61 72 49 32 46 72 6f 6d 55 49 34 28 55 T VarI2FromUI4(U
3eb0: 4c 4f 4e 47 2c 20 53 48 4f 52 54 2a 29 3b 0d 0a LONG, SHORT*);..
3ec0: 09 48 52 45 53 55 4c 54 20 56 61 72 49 32 46 72 .HRESULT VarI2Fr
3ed0: 6f 6d 55 49 38 28 55 4c 4f 4e 47 36 34 2c 20 53 omUI8(ULONG64, S
3ee0: 48 4f 52 54 2a 29 3b 0d 0a 09 48 52 45 53 55 4c HORT*);...HRESUL
3ef0: 54 20 56 61 72 49 32 46 72 6f 6d 53 74 72 28 4f T VarI2FromStr(O
3f00: 4c 45 43 48 41 52 2a 2c 20 4c 43 49 44 2c 20 55 LECHAR*, LCID, U
3f10: 4c 4f 4e 47 2c 20 53 48 4f 52 54 2a 29 3b 0d 0a LONG, SHORT*);..
3f20: 09 48 52 45 53 55 4c 54 20 56 61 72 49 32 46 72 .HRESULT VarI2Fr
3f30: 6f 6d 43 79 28 43 59 2c 20 53 48 4f 52 54 2a 29 omCy(CY, SHORT*)
3f40: 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 49 ;...HRESULT VarI
3f50: 32 46 72 6f 6d 44 65 63 28 44 45 43 49 4d 41 4c 2FromDec(DECIMAL
3f60: 2a 2c 20 53 48 4f 52 54 2a 29 3b 0d 0a 09 48 52 *, SHORT*);...HR
3f70: 45 53 55 4c 54 20 56 61 72 49 32 46 72 6f 6d 44 ESULT VarI2FromD
3f80: 69 73 70 28 49 44 69 73 70 61 74 63 68 2c 20 4c isp(IDispatch, L
3f90: 43 49 44 2c 20 53 48 4f 52 54 2a 29 3b 0d 0a 0d CID, SHORT*);...
3fa0: 0a 09 48 52 45 53 55 4c 54 20 56 61 72 49 34 46 ..HRESULT VarI4F
3fb0: 72 6f 6d 55 49 31 28 42 59 54 45 2c 20 4c 4f 4e romUI1(BYTE, LON
3fc0: 47 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 G*);...HRESULT V
3fd0: 61 72 49 34 46 72 6f 6d 49 32 28 53 48 4f 52 54 arI4FromI2(SHORT
3fe0: 2c 20 4c 4f 4e 47 2a 29 3b 0d 0a 09 48 52 45 53 , LONG*);...HRES
3ff0: 55 4c 54 20 56 61 72 49 34 46 72 6f 6d 49 38 28 ULT VarI4FromI8(
4000: 4c 4f 4e 47 36 34 2c 20 4c 4f 4e 47 2a 29 3b 0d LONG64, LONG*);.
4010: 0a 09 48 52 45 53 55 4c 54 20 56 61 72 49 34 46 ..HRESULT VarI4F
4020: 72 6f 6d 52 34 28 46 4c 4f 41 54 2c 20 4c 4f 4e romR4(FLOAT, LON
4030: 47 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 G*);...HRESULT V
4040: 61 72 49 34 46 72 6f 6d 52 38 28 44 4f 55 42 4c arI4FromR8(DOUBL
4050: 45 2c 20 4c 4f 4e 47 2a 29 3b 0d 0a 09 48 52 45 E, LONG*);...HRE
4060: 53 55 4c 54 20 56 61 72 49 34 46 72 6f 6d 44 61 SULT VarI4FromDa
4070: 74 65 28 44 41 54 45 2c 20 4c 4f 4e 47 2a 29 3b te(DATE, LONG*);
4080: 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 49 34 ...HRESULT VarI4
4090: 46 72 6f 6d 42 6f 6f 6c 28 56 41 52 49 41 4e 54 FromBool(VARIANT
40a0: 5f 42 4f 4f 4c 2c 20 4c 4f 4e 47 2a 29 3b 0d 0a _BOOL, LONG*);..
40b0: 09 48 52 45 53 55 4c 54 20 56 61 72 49 34 46 72 .HRESULT VarI4Fr
40c0: 6f 6d 49 31 28 62 79 74 65 2c 20 4c 4f 4e 47 2a omI1(byte, LONG*
40d0: 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 );...HRESULT Var
40e0: 49 34 46 72 6f 6d 55 49 32 28 55 53 48 4f 52 54 I4FromUI2(USHORT
40f0: 2c 20 4c 4f 4e 47 2a 29 3b 0d 0a 09 48 52 45 53 , LONG*);...HRES
4100: 55 4c 54 20 56 61 72 49 34 46 72 6f 6d 55 49 34 ULT VarI4FromUI4
4110: 28 55 4c 4f 4e 47 2c 20 4c 4f 4e 47 2a 29 3b 0d (ULONG, LONG*);.
4120: 0a 09 48 52 45 53 55 4c 54 20 56 61 72 49 34 46 ..HRESULT VarI4F
4130: 72 6f 6d 55 49 38 28 55 4c 4f 4e 47 36 34 2c 20 romUI8(ULONG64,
4140: 4c 4f 4e 47 2a 29 3b 0d 0a 09 48 52 45 53 55 4c LONG*);...HRESUL
4150: 54 20 56 61 72 49 34 46 72 6f 6d 53 74 72 28 4f T VarI4FromStr(O
4160: 4c 45 43 48 41 52 2a 2c 20 4c 43 49 44 2c 20 55 LECHAR*, LCID, U
4170: 4c 4f 4e 47 2c 20 4c 4f 4e 47 2a 29 3b 0d 0a 09 LONG, LONG*);...
4180: 48 52 45 53 55 4c 54 20 56 61 72 49 34 46 72 6f HRESULT VarI4Fro
4190: 6d 43 79 28 43 59 2c 20 4c 4f 4e 47 2a 29 3b 0d mCy(CY, LONG*);.
41a0: 0a 09 48 52 45 53 55 4c 54 20 56 61 72 49 34 46 ..HRESULT VarI4F
41b0: 72 6f 6d 44 65 63 28 44 45 43 49 4d 41 4c 2a 2c romDec(DECIMAL*,
41c0: 20 4c 4f 4e 47 2a 29 3b 0d 0a 09 48 52 45 53 55 LONG*);...HRESU
41d0: 4c 54 20 56 61 72 49 34 46 72 6f 6d 44 69 73 70 LT VarI4FromDisp
41e0: 28 49 44 69 73 70 61 74 63 68 2c 20 4c 43 49 44 (IDispatch, LCID
41f0: 2c 20 4c 4f 4e 47 2a 29 3b 0d 0a 0d 0a 09 48 52 , LONG*);.....HR
4200: 45 53 55 4c 54 20 56 61 72 49 38 46 72 6f 6d 55 ESULT VarI8FromU
4210: 49 31 28 42 59 54 45 2c 20 4c 4f 4e 47 36 34 2a I1(BYTE, LONG64*
4220: 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 );...HRESULT Var
4230: 49 38 46 72 6f 6d 49 32 28 53 48 4f 52 54 2c 20 I8FromI2(SHORT,
4240: 4c 4f 4e 47 36 34 2a 29 3b 0d 0a 09 48 52 45 53 LONG64*);...HRES
4250: 55 4c 54 20 56 61 72 49 38 46 72 6f 6d 49 34 28 ULT VarI8FromI4(
4260: 4c 4f 4e 47 2c 20 4c 4f 4e 47 36 34 2a 29 3b 0d LONG, LONG64*);.
4270: 0a 09 48 52 45 53 55 4c 54 20 56 61 72 49 38 46 ..HRESULT VarI8F
4280: 72 6f 6d 52 34 28 46 4c 4f 41 54 2c 20 4c 4f 4e romR4(FLOAT, LON
4290: 47 36 34 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 G64*);...HRESULT
42a0: 20 56 61 72 49 38 46 72 6f 6d 52 38 28 44 4f 55 VarI8FromR8(DOU
42b0: 42 4c 45 2c 20 4c 4f 4e 47 36 34 2a 29 3b 0d 0a BLE, LONG64*);..
42c0: 09 48 52 45 53 55 4c 54 20 56 61 72 49 38 46 72 .HRESULT VarI8Fr
42d0: 6f 6d 44 61 74 65 28 44 41 54 45 2c 20 4c 4f 4e omDate(DATE, LON
42e0: 47 36 34 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 G64*);...HRESULT
42f0: 20 56 61 72 49 38 46 72 6f 6d 53 74 72 28 4f 4c VarI8FromStr(OL
4300: 45 43 48 41 52 2a 2c 20 4c 43 49 44 2c 20 55 4c ECHAR*, LCID, UL
4310: 4f 4e 47 2c 20 4c 4f 4e 47 36 34 2a 29 3b 0d 0a ONG, LONG64*);..
4320: 09 48 52 45 53 55 4c 54 20 56 61 72 49 38 46 72 .HRESULT VarI8Fr
4330: 6f 6d 42 6f 6f 6c 28 56 41 52 49 41 4e 54 5f 42 omBool(VARIANT_B
4340: 4f 4f 4c 2c 20 4c 4f 4e 47 36 34 2a 29 3b 0d 0a OOL, LONG64*);..
4350: 09 48 52 45 53 55 4c 54 20 56 61 72 49 38 46 72 .HRESULT VarI8Fr
4360: 6f 6d 49 31 28 62 79 74 65 2c 20 4c 4f 4e 47 36 omI1(byte, LONG6
4370: 34 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 4*);...HRESULT V
4380: 61 72 49 38 46 72 6f 6d 55 49 32 28 55 53 48 4f arI8FromUI2(USHO
4390: 52 54 2c 20 4c 4f 4e 47 36 34 2a 29 3b 0d 0a 09 RT, LONG64*);...
43a0: 48 52 45 53 55 4c 54 20 56 61 72 49 38 46 72 6f HRESULT VarI8Fro
43b0: 6d 55 49 34 28 55 4c 4f 4e 47 2c 20 4c 4f 4e 47 mUI4(ULONG, LONG
43c0: 36 34 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 64*);...HRESULT
43d0: 56 61 72 49 38 46 72 6f 6d 55 49 38 28 55 4c 4f VarI8FromUI8(ULO
43e0: 4e 47 36 34 2c 20 4c 4f 4e 47 36 34 2a 29 3b 0d NG64, LONG64*);.
43f0: 0a 09 48 52 45 53 55 4c 54 20 56 61 72 49 38 46 ..HRESULT VarI8F
4400: 72 6f 6d 44 65 63 28 44 45 43 49 4d 41 4c 2a 20 romDec(DECIMAL*
4410: 70 64 65 63 49 6e 2c 20 4c 4f 4e 47 36 34 2a 29 pdecIn, LONG64*)
4420: 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 49 ;...HRESULT VarI
4430: 38 46 72 6f 6d 49 6e 74 28 49 4e 54 20 69 6e 74 8FromInt(INT int
4440: 49 6e 2c 20 4c 4f 4e 47 36 34 2a 29 3b 0d 0a 09 In, LONG64*);...
4450: 48 52 45 53 55 4c 54 20 56 61 72 49 38 46 72 6f HRESULT VarI8Fro
4460: 6d 43 79 28 43 59 2c 20 4c 4f 4e 47 36 34 2a 29 mCy(CY, LONG64*)
4470: 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 49 ;...HRESULT VarI
4480: 38 46 72 6f 6d 44 69 73 70 28 49 44 69 73 70 61 8FromDisp(IDispa
4490: 74 63 68 2c 20 4c 43 49 44 2c 20 4c 4f 4e 47 36 tch, LCID, LONG6
44a0: 34 2a 29 3b 0d 0a 0d 0a 09 48 52 45 53 55 4c 54 4*);.....HRESULT
44b0: 20 56 61 72 52 34 46 72 6f 6d 55 49 31 28 42 59 VarR4FromUI1(BY
44c0: 54 45 2c 20 46 4c 4f 41 54 2a 29 3b 0d 0a 09 48 TE, FLOAT*);...H
44d0: 52 45 53 55 4c 54 20 56 61 72 52 34 46 72 6f 6d RESULT VarR4From
44e0: 49 32 28 53 48 4f 52 54 2c 20 46 4c 4f 41 54 2a I2(SHORT, FLOAT*
44f0: 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 );...HRESULT Var
4500: 52 34 46 72 6f 6d 49 34 28 4c 4f 4e 47 2c 20 46 R4FromI4(LONG, F
4510: 4c 4f 41 54 2a 29 3b 0d 0a 09 48 52 45 53 55 4c LOAT*);...HRESUL
4520: 54 20 56 61 72 52 34 46 72 6f 6d 49 38 28 4c 4f T VarR4FromI8(LO
4530: 4e 47 36 34 2c 20 46 4c 4f 41 54 2a 29 3b 0d 0a NG64, FLOAT*);..
4540: 09 48 52 45 53 55 4c 54 20 56 61 72 52 34 46 72 .HRESULT VarR4Fr
4550: 6f 6d 52 38 28 44 4f 55 42 4c 45 2c 20 46 4c 4f omR8(DOUBLE, FLO
4560: 41 54 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 AT*);...HRESULT
4570: 56 61 72 52 34 46 72 6f 6d 44 61 74 65 28 44 41 VarR4FromDate(DA
4580: 54 45 2c 20 46 4c 4f 41 54 2a 29 3b 0d 0a 09 48 TE, FLOAT*);...H
4590: 52 45 53 55 4c 54 20 56 61 72 52 34 46 72 6f 6d RESULT VarR4From
45a0: 42 6f 6f 6c 28 56 41 52 49 41 4e 54 5f 42 4f 4f Bool(VARIANT_BOO
45b0: 4c 2c 20 46 4c 4f 41 54 2a 29 3b 0d 0a 09 48 52 L, FLOAT*);...HR
45c0: 45 53 55 4c 54 20 56 61 72 52 34 46 72 6f 6d 49 ESULT VarR4FromI
45d0: 31 28 62 79 74 65 2c 20 46 4c 4f 41 54 2a 29 3b 1(byte, FLOAT*);
45e0: 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 52 34 ...HRESULT VarR4
45f0: 46 72 6f 6d 55 49 32 28 55 53 48 4f 52 54 2c 20 FromUI2(USHORT,
4600: 46 4c 4f 41 54 2a 29 3b 0d 0a 09 48 52 45 53 55 FLOAT*);...HRESU
4610: 4c 54 20 56 61 72 52 34 46 72 6f 6d 55 49 34 28 LT VarR4FromUI4(
4620: 55 4c 4f 4e 47 2c 20 46 4c 4f 41 54 2a 29 3b 0d ULONG, FLOAT*);.
4630: 0a 09 48 52 45 53 55 4c 54 20 56 61 72 52 34 46 ..HRESULT VarR4F
4640: 72 6f 6d 55 49 38 28 55 4c 4f 4e 47 36 34 2c 20 romUI8(ULONG64,
4650: 46 4c 4f 41 54 2a 29 3b 0d 0a 09 48 52 45 53 55 FLOAT*);...HRESU
4660: 4c 54 20 56 61 72 52 34 46 72 6f 6d 53 74 72 28 LT VarR4FromStr(
4670: 4f 4c 45 43 48 41 52 2a 2c 20 4c 43 49 44 2c 20 OLECHAR*, LCID,
4680: 55 4c 4f 4e 47 2c 20 46 4c 4f 41 54 2a 29 3b 0d ULONG, FLOAT*);.
4690: 0a 09 48 52 45 53 55 4c 54 20 56 61 72 52 34 46 ..HRESULT VarR4F
46a0: 72 6f 6d 43 79 28 43 59 2c 20 46 4c 4f 41 54 2a romCy(CY, FLOAT*
46b0: 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 );...HRESULT Var
46c0: 52 34 46 72 6f 6d 44 65 63 28 44 45 43 49 4d 41 R4FromDec(DECIMA
46d0: 4c 2a 2c 20 46 4c 4f 41 54 2a 29 3b 0d 0a 09 48 L*, FLOAT*);...H
46e0: 52 45 53 55 4c 54 20 56 61 72 52 34 46 72 6f 6d RESULT VarR4From
46f0: 44 69 73 70 28 49 44 69 73 70 61 74 63 68 2c 20 Disp(IDispatch,
4700: 4c 43 49 44 2c 20 46 4c 4f 41 54 2a 29 3b 0d 0a LCID, FLOAT*);..
4710: 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 52 38 ...HRESULT VarR8
4720: 46 72 6f 6d 55 49 31 28 42 59 54 45 2c 20 64 6f FromUI1(BYTE, do
4730: 75 62 6c 65 2a 29 3b 0d 0a 09 48 52 45 53 55 4c uble*);...HRESUL
4740: 54 20 56 61 72 52 38 46 72 6f 6d 49 32 28 53 48 T VarR8FromI2(SH
4750: 4f 52 54 2c 20 64 6f 75 62 6c 65 2a 29 3b 0d 0a ORT, double*);..
4760: 09 48 52 45 53 55 4c 54 20 56 61 72 52 38 46 72 .HRESULT VarR8Fr
4770: 6f 6d 49 34 28 4c 4f 4e 47 2c 20 64 6f 75 62 6c omI4(LONG, doubl
4780: 65 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 e*);...HRESULT V
4790: 61 72 52 38 46 72 6f 6d 49 38 28 4c 4f 4e 47 36 arR8FromI8(LONG6
47a0: 34 2c 20 64 6f 75 62 6c 65 2a 29 3b 0d 0a 09 48 4, double*);...H
47b0: 52 45 53 55 4c 54 20 56 61 72 52 38 46 72 6f 6d RESULT VarR8From
47c0: 52 34 28 46 4c 4f 41 54 2c 20 64 6f 75 62 6c 65 R4(FLOAT, double
47d0: 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 *);...HRESULT Va
47e0: 72 52 38 46 72 6f 6d 44 61 74 65 28 44 41 54 45 rR8FromDate(DATE
47f0: 2c 20 64 6f 75 62 6c 65 2a 29 3b 0d 0a 09 48 52 , double*);...HR
4800: 45 53 55 4c 54 20 56 61 72 52 38 46 72 6f 6d 42 ESULT VarR8FromB
4810: 6f 6f 6c 28 56 41 52 49 41 4e 54 5f 42 4f 4f 4c ool(VARIANT_BOOL
4820: 2c 20 64 6f 75 62 6c 65 2a 29 3b 0d 0a 09 48 52 , double*);...HR
4830: 45 53 55 4c 54 20 56 61 72 52 38 46 72 6f 6d 49 ESULT VarR8FromI
4840: 31 28 62 79 74 65 2c 20 64 6f 75 62 6c 65 2a 29 1(byte, double*)
4850: 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 52 ;...HRESULT VarR
4860: 38 46 72 6f 6d 55 49 32 28 55 53 48 4f 52 54 2c 8FromUI2(USHORT,
4870: 20 64 6f 75 62 6c 65 2a 29 3b 0d 0a 09 48 52 45 double*);...HRE
4880: 53 55 4c 54 20 56 61 72 52 38 46 72 6f 6d 55 49 SULT VarR8FromUI
4890: 34 28 55 4c 4f 4e 47 2c 20 64 6f 75 62 6c 65 2a 4(ULONG, double*
48a0: 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 );...HRESULT Var
48b0: 52 38 46 72 6f 6d 55 49 38 28 55 4c 4f 4e 47 36 R8FromUI8(ULONG6
48c0: 34 2c 20 64 6f 75 62 6c 65 2a 29 3b 0d 0a 09 48 4, double*);...H
48d0: 52 45 53 55 4c 54 20 56 61 72 52 38 46 72 6f 6d RESULT VarR8From
48e0: 53 74 72 28 4f 4c 45 43 48 41 52 2a 2c 20 4c 43 Str(OLECHAR*, LC
48f0: 49 44 2c 20 55 4c 4f 4e 47 2c 20 64 6f 75 62 6c ID, ULONG, doubl
4900: 65 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 e*);...HRESULT V
4910: 61 72 52 38 46 72 6f 6d 43 79 28 43 59 2c 20 64 arR8FromCy(CY, d
4920: 6f 75 62 6c 65 2a 29 3b 0d 0a 09 48 52 45 53 55 ouble*);...HRESU
4930: 4c 54 20 56 61 72 52 38 46 72 6f 6d 44 65 63 28 LT VarR8FromDec(
4940: 44 45 43 49 4d 41 4c 2a 2c 20 64 6f 75 62 6c 65 DECIMAL*, double
4950: 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 *);...HRESULT Va
4960: 72 52 38 46 72 6f 6d 44 69 73 70 28 49 44 69 73 rR8FromDisp(IDis
4970: 70 61 74 63 68 2c 20 4c 43 49 44 2c 20 64 6f 75 patch, LCID, dou
4980: 62 6c 65 2a 29 3b 0d 0a 0d 0a 09 48 52 45 53 55 ble*);.....HRESU
4990: 4c 54 20 56 61 72 44 61 74 65 46 72 6f 6d 55 49 LT VarDateFromUI
49a0: 31 28 42 59 54 45 2c 20 44 41 54 45 2a 29 3b 0d 1(BYTE, DATE*);.
49b0: 0a 09 48 52 45 53 55 4c 54 20 56 61 72 44 61 74 ..HRESULT VarDat
49c0: 65 46 72 6f 6d 49 32 28 53 48 4f 52 54 2c 20 44 eFromI2(SHORT, D
49d0: 41 54 45 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 ATE*);...HRESULT
49e0: 20 56 61 72 44 61 74 65 46 72 6f 6d 49 34 28 4c VarDateFromI4(L
49f0: 4f 4e 47 2c 20 44 41 54 45 2a 29 3b 0d 0a 09 48 ONG, DATE*);...H
4a00: 52 45 53 55 4c 54 20 56 61 72 44 61 74 65 46 72 RESULT VarDateFr
4a10: 6f 6d 49 38 28 4c 4f 4e 47 36 34 2c 20 44 41 54 omI8(LONG64, DAT
4a20: 45 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 E*);...HRESULT V
4a30: 61 72 44 61 74 65 46 72 6f 6d 52 34 28 46 4c 4f arDateFromR4(FLO
4a40: 41 54 2c 20 44 41 54 45 2a 29 3b 0d 0a 09 48 52 AT, DATE*);...HR
4a50: 45 53 55 4c 54 20 56 61 72 44 61 74 65 46 72 6f ESULT VarDateFro
4a60: 6d 52 38 28 44 4f 55 42 4c 45 2c 20 44 41 54 45 mR8(DOUBLE, DATE
4a70: 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 *);...HRESULT Va
4a80: 72 44 61 74 65 46 72 6f 6d 53 74 72 28 4f 4c 45 rDateFromStr(OLE
4a90: 43 48 41 52 2a 2c 20 4c 43 49 44 2c 20 55 4c 4f CHAR*, LCID, ULO
4aa0: 4e 47 2c 20 44 41 54 45 2a 29 3b 0d 0a 09 48 52 NG, DATE*);...HR
4ab0: 45 53 55 4c 54 20 56 61 72 44 61 74 65 46 72 6f ESULT VarDateFro
4ac0: 6d 49 31 28 62 79 74 65 2c 20 44 41 54 45 2a 29 mI1(byte, DATE*)
4ad0: 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 44 ;...HRESULT VarD
4ae0: 61 74 65 46 72 6f 6d 55 49 32 28 55 53 48 4f 52 ateFromUI2(USHOR
4af0: 54 2c 20 44 41 54 45 2a 29 3b 0d 0a 09 48 52 45 T, DATE*);...HRE
4b00: 53 55 4c 54 20 56 61 72 44 61 74 65 46 72 6f 6d SULT VarDateFrom
4b10: 55 49 34 28 55 4c 4f 4e 47 2c 20 44 41 54 45 2a UI4(ULONG, DATE*
4b20: 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 );...HRESULT Var
4b30: 44 61 74 65 46 72 6f 6d 55 49 38 28 55 4c 4f 4e DateFromUI8(ULON
4b40: 47 36 34 2c 20 44 41 54 45 2a 29 3b 0d 0a 09 48 G64, DATE*);...H
4b50: 52 45 53 55 4c 54 20 56 61 72 44 61 74 65 46 72 RESULT VarDateFr
4b60: 6f 6d 42 6f 6f 6c 28 56 41 52 49 41 4e 54 5f 42 omBool(VARIANT_B
4b70: 4f 4f 4c 2c 20 44 41 54 45 2a 29 3b 0d 0a 09 48 OOL, DATE*);...H
4b80: 52 45 53 55 4c 54 20 56 61 72 44 61 74 65 46 72 RESULT VarDateFr
4b90: 6f 6d 43 79 28 43 59 2c 20 44 41 54 45 2a 29 3b omCy(CY, DATE*);
4ba0: 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 44 61 ...HRESULT VarDa
4bb0: 74 65 46 72 6f 6d 44 65 63 28 44 45 43 49 4d 41 teFromDec(DECIMA
4bc0: 4c 2a 2c 20 44 41 54 45 2a 29 3b 0d 0a 09 48 52 L*, DATE*);...HR
4bd0: 45 53 55 4c 54 20 56 61 72 44 61 74 65 46 72 6f ESULT VarDateFro
4be0: 6d 44 69 73 70 28 49 44 69 73 70 61 74 63 68 2c mDisp(IDispatch,
4bf0: 20 4c 43 49 44 2c 20 44 41 54 45 2a 29 3b 0d 0a LCID, DATE*);..
4c00: 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 43 79 ...HRESULT VarCy
4c10: 46 72 6f 6d 55 49 31 28 42 59 54 45 2c 20 43 59 FromUI1(BYTE, CY
4c20: 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 *);...HRESULT Va
4c30: 72 43 79 46 72 6f 6d 49 32 28 53 48 4f 52 54 20 rCyFromI2(SHORT
4c40: 73 49 6e 2c 20 43 59 2a 29 3b 0d 0a 09 48 52 45 sIn, CY*);...HRE
4c50: 53 55 4c 54 20 56 61 72 43 79 46 72 6f 6d 49 34 SULT VarCyFromI4
4c60: 28 4c 4f 4e 47 2c 20 43 59 2a 29 3b 0d 0a 09 48 (LONG, CY*);...H
4c70: 52 45 53 55 4c 54 20 56 61 72 43 79 46 72 6f 6d RESULT VarCyFrom
4c80: 49 38 28 4c 4f 4e 47 36 34 2c 20 43 59 2a 29 3b I8(LONG64, CY*);
4c90: 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 43 79 ...HRESULT VarCy
4ca0: 46 72 6f 6d 52 34 28 46 4c 4f 41 54 2c 20 43 59 FromR4(FLOAT, CY
4cb0: 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 *);...HRESULT Va
4cc0: 72 43 79 46 72 6f 6d 52 38 28 44 4f 55 42 4c 45 rCyFromR8(DOUBLE
4cd0: 2c 20 43 59 2a 29 3b 0d 0a 09 48 52 45 53 55 4c , CY*);...HRESUL
4ce0: 54 20 56 61 72 43 79 46 72 6f 6d 44 61 74 65 28 T VarCyFromDate(
4cf0: 44 41 54 45 2c 20 43 59 2a 29 3b 0d 0a 09 48 52 DATE, CY*);...HR
4d00: 45 53 55 4c 54 20 56 61 72 43 79 46 72 6f 6d 53 ESULT VarCyFromS
4d10: 74 72 28 4f 4c 45 43 48 41 52 2a 2c 20 4c 43 49 tr(OLECHAR*, LCI
4d20: 44 2c 20 55 4c 4f 4e 47 2c 20 43 59 2a 29 3b 0d D, ULONG, CY*);.
4d30: 0a 09 48 52 45 53 55 4c 54 20 56 61 72 43 79 46 ..HRESULT VarCyF
4d40: 72 6f 6d 42 6f 6f 6c 28 56 41 52 49 41 4e 54 5f romBool(VARIANT_
4d50: 42 4f 4f 4c 2c 20 43 59 2a 29 3b 0d 0a 09 48 52 BOOL, CY*);...HR
4d60: 45 53 55 4c 54 20 56 61 72 43 79 46 72 6f 6d 49 ESULT VarCyFromI
4d70: 31 28 62 79 74 65 2c 20 43 59 2a 29 3b 0d 0a 09 1(byte, CY*);...
4d80: 48 52 45 53 55 4c 54 20 56 61 72 43 79 46 72 6f HRESULT VarCyFro
4d90: 6d 55 49 32 28 55 53 48 4f 52 54 2c 20 43 59 2a mUI2(USHORT, CY*
4da0: 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 );...HRESULT Var
4db0: 43 79 46 72 6f 6d 55 49 34 28 55 4c 4f 4e 47 2c CyFromUI4(ULONG,
4dc0: 20 43 59 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 CY*);...HRESULT
4dd0: 20 56 61 72 43 79 46 72 6f 6d 55 49 38 28 55 4c VarCyFromUI8(UL
4de0: 4f 4e 47 36 34 2c 20 43 59 2a 29 3b 0d 0a 09 48 ONG64, CY*);...H
4df0: 52 45 53 55 4c 54 20 56 61 72 43 79 46 72 6f 6d RESULT VarCyFrom
4e00: 44 65 63 28 44 45 43 49 4d 41 4c 2a 2c 20 43 59 Dec(DECIMAL*, CY
4e10: 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 *);...HRESULT Va
4e20: 72 43 79 46 72 6f 6d 53 74 72 28 4f 4c 45 43 48 rCyFromStr(OLECH
4e30: 41 52 2a 2c 20 4c 43 49 44 2c 20 55 4c 4f 4e 47 AR*, LCID, ULONG
4e40: 2c 20 43 59 2a 29 3b 0d 0a 09 48 52 45 53 55 4c , CY*);...HRESUL
4e50: 54 20 56 61 72 43 79 46 72 6f 6d 44 69 73 70 28 T VarCyFromDisp(
4e60: 49 44 69 73 70 61 74 63 68 2c 20 4c 43 49 44 2c IDispatch, LCID,
4e70: 20 43 59 2a 29 3b 0d 0a 0d 0a 09 48 52 45 53 55 CY*);.....HRESU
4e80: 4c 54 20 56 61 72 42 73 74 72 46 72 6f 6d 55 49 LT VarBstrFromUI
4e90: 31 28 42 59 54 45 2c 20 4c 43 49 44 2c 20 55 4c 1(BYTE, LCID, UL
4ea0: 4f 4e 47 2c 20 42 53 54 52 2a 29 3b 0d 0a 09 48 ONG, BSTR*);...H
4eb0: 52 45 53 55 4c 54 20 56 61 72 42 73 74 72 46 72 RESULT VarBstrFr
4ec0: 6f 6d 49 32 28 53 48 4f 52 54 2c 20 4c 43 49 44 omI2(SHORT, LCID
4ed0: 2c 20 55 4c 4f 4e 47 2c 20 42 53 54 52 2a 29 3b , ULONG, BSTR*);
4ee0: 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 42 73 ...HRESULT VarBs
4ef0: 74 72 46 72 6f 6d 49 34 28 4c 4f 4e 47 2c 20 4c trFromI4(LONG, L
4f00: 43 49 44 2c 20 55 4c 4f 4e 47 2c 20 42 53 54 52 CID, ULONG, BSTR
4f10: 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 *);...HRESULT Va
4f20: 72 42 73 74 72 46 72 6f 6d 49 38 28 4c 4f 4e 47 rBstrFromI8(LONG
4f30: 36 34 2c 20 4c 43 49 44 2c 20 55 4c 4f 4e 47 2c 64, LCID, ULONG,
4f40: 20 42 53 54 52 2a 29 3b 0d 0a 09 48 52 45 53 55 BSTR*);...HRESU
4f50: 4c 54 20 56 61 72 42 73 74 72 46 72 6f 6d 52 34 LT VarBstrFromR4
4f60: 28 46 4c 4f 41 54 2c 20 4c 43 49 44 2c 20 55 4c (FLOAT, LCID, UL
4f70: 4f 4e 47 2c 20 42 53 54 52 2a 29 3b 0d 0a 09 48 ONG, BSTR*);...H
4f80: 52 45 53 55 4c 54 20 56 61 72 42 73 74 72 46 72 RESULT VarBstrFr
4f90: 6f 6d 52 38 28 44 4f 55 42 4c 45 2c 20 4c 43 49 omR8(DOUBLE, LCI
4fa0: 44 2c 20 55 4c 4f 4e 47 2c 20 42 53 54 52 2a 29 D, ULONG, BSTR*)
4fb0: 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 42 ;...HRESULT VarB
4fc0: 73 74 72 46 72 6f 6d 44 61 74 65 28 44 41 54 45 strFromDate(DATE
4fd0: 2c 20 4c 43 49 44 2c 20 55 4c 4f 4e 47 2c 20 42 , LCID, ULONG, B
4fe0: 53 54 52 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 STR*);...HRESULT
4ff0: 20 56 61 72 42 73 74 72 46 72 6f 6d 42 6f 6f 6c VarBstrFromBool
5000: 28 56 41 52 49 41 4e 54 5f 42 4f 4f 4c 2c 20 4c (VARIANT_BOOL, L
5010: 43 49 44 2c 20 55 4c 4f 4e 47 2c 20 42 53 54 52 CID, ULONG, BSTR
5020: 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 *);...HRESULT Va
5030: 72 42 73 74 72 46 72 6f 6d 49 31 28 62 79 74 65 rBstrFromI1(byte
5040: 2c 20 4c 43 49 44 2c 20 55 4c 4f 4e 47 2c 20 42 , LCID, ULONG, B
5050: 53 54 52 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 STR*);...HRESULT
5060: 20 56 61 72 42 73 74 72 46 72 6f 6d 55 49 32 28 VarBstrFromUI2(
5070: 55 53 48 4f 52 54 2c 20 4c 43 49 44 2c 20 55 4c USHORT, LCID, UL
5080: 4f 4e 47 2c 20 42 53 54 52 2a 29 3b 0d 0a 09 48 ONG, BSTR*);...H
5090: 52 45 53 55 4c 54 20 56 61 72 42 73 74 72 46 72 RESULT VarBstrFr
50a0: 6f 6d 55 49 38 28 55 4c 4f 4e 47 36 34 2c 20 4c omUI8(ULONG64, L
50b0: 43 49 44 2c 20 55 4c 4f 4e 47 2c 20 42 53 54 52 CID, ULONG, BSTR
50c0: 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 *);...HRESULT Va
50d0: 72 42 73 74 72 46 72 6f 6d 55 49 34 28 55 4c 4f rBstrFromUI4(ULO
50e0: 4e 47 2c 20 4c 43 49 44 2c 20 55 4c 4f 4e 47 2c NG, LCID, ULONG,
50f0: 20 42 53 54 52 2a 29 3b 0d 0a 09 48 52 45 53 55 BSTR*);...HRESU
5100: 4c 54 20 56 61 72 42 73 74 72 46 72 6f 6d 43 79 LT VarBstrFromCy
5110: 28 43 59 2c 20 4c 43 49 44 2c 20 55 4c 4f 4e 47 (CY, LCID, ULONG
5120: 2c 20 42 53 54 52 2a 29 3b 0d 0a 09 48 52 45 53 , BSTR*);...HRES
5130: 55 4c 54 20 56 61 72 42 73 74 72 46 72 6f 6d 44 ULT VarBstrFromD
5140: 65 63 28 44 45 43 49 4d 41 4c 2a 2c 20 4c 43 49 ec(DECIMAL*, LCI
5150: 44 2c 20 55 4c 4f 4e 47 2c 20 42 53 54 52 2a 29 D, ULONG, BSTR*)
5160: 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 42 ;...HRESULT VarB
5170: 73 74 72 46 72 6f 6d 44 69 73 70 28 49 44 69 73 strFromDisp(IDis
5180: 70 61 74 63 68 2c 20 4c 43 49 44 2c 20 55 4c 4f patch, LCID, ULO
5190: 4e 47 2c 20 42 53 54 52 2a 29 3b 0d 0a 0d 0a 09 NG, BSTR*);.....
51a0: 48 52 45 53 55 4c 54 20 56 61 72 42 6f 6f 6c 46 HRESULT VarBoolF
51b0: 72 6f 6d 55 49 31 28 42 59 54 45 2c 20 56 41 52 romUI1(BYTE, VAR
51c0: 49 41 4e 54 5f 42 4f 4f 4c 2a 29 3b 0d 0a 09 48 IANT_BOOL*);...H
51d0: 52 45 53 55 4c 54 20 56 61 72 42 6f 6f 6c 46 72 RESULT VarBoolFr
51e0: 6f 6d 49 32 28 53 48 4f 52 54 2c 20 56 41 52 49 omI2(SHORT, VARI
51f0: 41 4e 54 5f 42 4f 4f 4c 2a 29 3b 0d 0a 09 48 52 ANT_BOOL*);...HR
5200: 45 53 55 4c 54 20 56 61 72 42 6f 6f 6c 46 72 6f ESULT VarBoolFro
5210: 6d 49 34 28 4c 4f 4e 47 2c 20 56 41 52 49 41 4e mI4(LONG, VARIAN
5220: 54 5f 42 4f 4f 4c 2a 29 3b 0d 0a 09 48 52 45 53 T_BOOL*);...HRES
5230: 55 4c 54 20 56 61 72 42 6f 6f 6c 46 72 6f 6d 49 ULT VarBoolFromI
5240: 38 28 4c 4f 4e 47 36 34 2c 20 56 41 52 49 41 4e 8(LONG64, VARIAN
5250: 54 5f 42 4f 4f 4c 2a 29 3b 0d 0a 09 48 52 45 53 T_BOOL*);...HRES
5260: 55 4c 54 20 56 61 72 42 6f 6f 6c 46 72 6f 6d 52 ULT VarBoolFromR
5270: 34 28 46 4c 4f 41 54 2c 20 56 41 52 49 41 4e 54 4(FLOAT, VARIANT
5280: 5f 42 4f 4f 4c 2a 29 3b 0d 0a 09 48 52 45 53 55 _BOOL*);...HRESU
5290: 4c 54 20 56 61 72 42 6f 6f 6c 46 72 6f 6d 52 38 LT VarBoolFromR8
52a0: 28 44 4f 55 42 4c 45 2c 20 56 41 52 49 41 4e 54 (DOUBLE, VARIANT
52b0: 5f 42 4f 4f 4c 2a 29 3b 0d 0a 09 48 52 45 53 55 _BOOL*);...HRESU
52c0: 4c 54 20 56 61 72 42 6f 6f 6c 46 72 6f 6d 44 61 LT VarBoolFromDa
52d0: 74 65 28 44 41 54 45 2c 20 56 41 52 49 41 4e 54 te(DATE, VARIANT
52e0: 5f 42 4f 4f 4c 2a 29 3b 0d 0a 09 48 52 45 53 55 _BOOL*);...HRESU
52f0: 4c 54 20 56 61 72 42 6f 6f 6c 46 72 6f 6d 53 74 LT VarBoolFromSt
5300: 72 28 4f 4c 45 43 48 41 52 2a 2c 20 4c 43 49 44 r(OLECHAR*, LCID
5310: 2c 20 55 4c 4f 4e 47 2c 20 56 41 52 49 41 4e 54 , ULONG, VARIANT
5320: 5f 42 4f 4f 4c 2a 29 3b 0d 0a 09 48 52 45 53 55 _BOOL*);...HRESU
5330: 4c 54 20 56 61 72 42 6f 6f 6c 46 72 6f 6d 49 31 LT VarBoolFromI1
5340: 28 62 79 74 65 2c 20 56 41 52 49 41 4e 54 5f 42 (byte, VARIANT_B
5350: 4f 4f 4c 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 OOL*);...HRESULT
5360: 20 56 61 72 42 6f 6f 6c 46 72 6f 6d 55 49 32 28 VarBoolFromUI2(
5370: 55 53 48 4f 52 54 2c 20 56 41 52 49 41 4e 54 5f USHORT, VARIANT_
5380: 42 4f 4f 4c 2a 29 3b 0d 0a 09 48 52 45 53 55 4c BOOL*);...HRESUL
5390: 54 20 56 61 72 42 6f 6f 6c 46 72 6f 6d 55 49 34 T VarBoolFromUI4
53a0: 28 55 4c 4f 4e 47 2c 20 56 41 52 49 41 4e 54 5f (ULONG, VARIANT_
53b0: 42 4f 4f 4c 2a 29 3b 0d 0a 09 48 52 45 53 55 4c BOOL*);...HRESUL
53c0: 54 20 56 61 72 42 6f 6f 6c 46 72 6f 6d 55 49 38 T VarBoolFromUI8
53d0: 28 55 4c 4f 4e 47 36 34 2c 20 56 41 52 49 41 4e (ULONG64, VARIAN
53e0: 54 5f 42 4f 4f 4c 2a 29 3b 0d 0a 09 48 52 45 53 T_BOOL*);...HRES
53f0: 55 4c 54 20 56 61 72 42 6f 6f 6c 46 72 6f 6d 43 ULT VarBoolFromC
5400: 79 28 43 59 2c 20 56 41 52 49 41 4e 54 5f 42 4f y(CY, VARIANT_BO
5410: 4f 4c 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 OL*);...HRESULT
5420: 56 61 72 42 6f 6f 6c 46 72 6f 6d 44 65 63 28 44 VarBoolFromDec(D
5430: 45 43 49 4d 41 4c 2a 2c 20 56 41 52 49 41 4e 54 ECIMAL*, VARIANT
5440: 5f 42 4f 4f 4c 2a 29 3b 0d 0a 09 48 52 45 53 55 _BOOL*);...HRESU
5450: 4c 54 20 56 61 72 42 6f 6f 6c 46 72 6f 6d 44 69 LT VarBoolFromDi
5460: 73 70 28 49 44 69 73 70 61 74 63 68 2c 20 4c 43 sp(IDispatch, LC
5470: 49 44 2c 20 56 41 52 49 41 4e 54 5f 42 4f 4f 4c ID, VARIANT_BOOL
5480: 2a 29 3b 0d 0a 0d 0a 09 48 52 45 53 55 4c 54 20 *);.....HRESULT
5490: 56 61 72 49 31 46 72 6f 6d 55 49 31 28 42 59 54 VarI1FromUI1(BYT
54a0: 45 2c 20 62 79 74 65 2a 29 3b 0d 0a 09 48 52 45 E, byte*);...HRE
54b0: 53 55 4c 54 20 56 61 72 49 31 46 72 6f 6d 49 32 SULT VarI1FromI2
54c0: 28 53 48 4f 52 54 2c 20 62 79 74 65 2a 29 3b 0d (SHORT, byte*);.
54d0: 0a 09 48 52 45 53 55 4c 54 20 56 61 72 49 31 46 ..HRESULT VarI1F
54e0: 72 6f 6d 49 34 28 4c 4f 4e 47 2c 20 62 79 74 65 romI4(LONG, byte
54f0: 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 *);...HRESULT Va
5500: 72 49 31 46 72 6f 6d 49 38 28 4c 4f 4e 47 36 34 rI1FromI8(LONG64
5510: 2c 20 62 79 74 65 2a 29 3b 0d 0a 09 48 52 45 53 , byte*);...HRES
5520: 55 4c 54 20 56 61 72 49 31 46 72 6f 6d 52 34 28 ULT VarI1FromR4(
5530: 46 4c 4f 41 54 2c 20 62 79 74 65 2a 29 3b 0d 0a FLOAT, byte*);..
5540: 09 48 52 45 53 55 4c 54 20 56 61 72 49 31 46 72 .HRESULT VarI1Fr
5550: 6f 6d 52 38 28 44 4f 55 42 4c 45 2c 20 62 79 74 omR8(DOUBLE, byt
5560: 65 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 e*);...HRESULT V
5570: 61 72 49 31 46 72 6f 6d 44 61 74 65 28 44 41 54 arI1FromDate(DAT
5580: 45 2c 20 62 79 74 65 2a 29 3b 0d 0a 09 48 52 45 E, byte*);...HRE
5590: 53 55 4c 54 20 56 61 72 49 31 46 72 6f 6d 53 74 SULT VarI1FromSt
55a0: 72 28 4f 4c 45 43 48 41 52 2a 2c 20 4c 43 49 44 r(OLECHAR*, LCID
55b0: 2c 20 55 4c 4f 4e 47 2c 20 62 79 74 65 2a 29 3b , ULONG, byte*);
55c0: 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 49 31 ...HRESULT VarI1
55d0: 46 72 6f 6d 42 6f 6f 6c 28 56 41 52 49 41 4e 54 FromBool(VARIANT
55e0: 5f 42 4f 4f 4c 2c 20 62 79 74 65 2a 29 3b 0d 0a _BOOL, byte*);..
55f0: 09 48 52 45 53 55 4c 54 20 56 61 72 49 31 46 72 .HRESULT VarI1Fr
5600: 6f 6d 55 49 32 28 55 53 48 4f 52 54 2c 20 62 79 omUI2(USHORT, by
5610: 74 65 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 te*);...HRESULT
5620: 56 61 72 49 31 46 72 6f 6d 55 49 34 28 55 4c 4f VarI1FromUI4(ULO
5630: 4e 47 2c 20 62 79 74 65 2a 29 3b 0d 0a 09 48 52 NG, byte*);...HR
5640: 45 53 55 4c 54 20 56 61 72 49 31 46 72 6f 6d 55 ESULT VarI1FromU
5650: 49 38 28 55 4c 4f 4e 47 36 34 2c 20 62 79 74 65 I8(ULONG64, byte
5660: 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 *);...HRESULT Va
5670: 72 49 31 46 72 6f 6d 43 79 28 43 59 2c 20 62 79 rI1FromCy(CY, by
5680: 74 65 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 te*);...HRESULT
5690: 56 61 72 49 31 46 72 6f 6d 44 65 63 28 44 45 43 VarI1FromDec(DEC
56a0: 49 4d 41 4c 2a 2c 20 62 79 74 65 2a 29 3b 0d 0a IMAL*, byte*);..
56b0: 09 48 52 45 53 55 4c 54 20 56 61 72 49 31 46 72 .HRESULT VarI1Fr
56c0: 6f 6d 44 69 73 70 28 49 44 69 73 70 61 74 63 68 omDisp(IDispatch
56d0: 2c 20 4c 43 49 44 2c 20 62 79 74 65 2a 29 3b 0d , LCID, byte*);.
56e0: 0a 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 55 ....HRESULT VarU
56f0: 49 32 46 72 6f 6d 55 49 31 28 42 59 54 45 2c 20 I2FromUI1(BYTE,
5700: 55 53 48 4f 52 54 2a 29 3b 0d 0a 09 48 52 45 53 USHORT*);...HRES
5710: 55 4c 54 20 56 61 72 55 49 32 46 72 6f 6d 49 32 ULT VarUI2FromI2
5720: 28 53 48 4f 52 54 2c 20 55 53 48 4f 52 54 2a 29 (SHORT, USHORT*)
5730: 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 55 ;...HRESULT VarU
5740: 49 32 46 72 6f 6d 49 34 28 4c 4f 4e 47 2c 20 55 I2FromI4(LONG, U
5750: 53 48 4f 52 54 2a 29 3b 0d 0a 09 48 52 45 53 55 SHORT*);...HRESU
5760: 4c 54 20 56 61 72 55 49 32 46 72 6f 6d 49 38 28 LT VarUI2FromI8(
5770: 4c 4f 4e 47 36 34 2c 20 55 53 48 4f 52 54 2a 29 LONG64, USHORT*)
5780: 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 55 ;...HRESULT VarU
5790: 49 32 46 72 6f 6d 52 34 28 46 4c 4f 41 54 2c 20 I2FromR4(FLOAT,
57a0: 55 53 48 4f 52 54 2a 29 3b 0d 0a 09 48 52 45 53 USHORT*);...HRES
57b0: 55 4c 54 20 56 61 72 55 49 32 46 72 6f 6d 52 38 ULT VarUI2FromR8
57c0: 28 44 4f 55 42 4c 45 2c 20 55 53 48 4f 52 54 2a (DOUBLE, USHORT*
57d0: 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 );...HRESULT Var
57e0: 55 49 32 46 72 6f 6d 44 61 74 65 28 44 41 54 45 UI2FromDate(DATE
57f0: 2c 20 55 53 48 4f 52 54 2a 29 3b 0d 0a 09 48 52 , USHORT*);...HR
5800: 45 53 55 4c 54 20 56 61 72 55 49 32 46 72 6f 6d ESULT VarUI2From
5810: 53 74 72 28 4f 4c 45 43 48 41 52 2a 2c 20 4c 43 Str(OLECHAR*, LC
5820: 49 44 2c 20 55 4c 4f 4e 47 2c 20 55 53 48 4f 52 ID, ULONG, USHOR
5830: 54 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 T*);...HRESULT V
5840: 61 72 55 49 32 46 72 6f 6d 42 6f 6f 6c 28 56 41 arUI2FromBool(VA
5850: 52 49 41 4e 54 5f 42 4f 4f 4c 2c 20 55 53 48 4f RIANT_BOOL, USHO
5860: 52 54 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 RT*);...HRESULT
5870: 56 61 72 55 49 32 46 72 6f 6d 49 31 28 62 79 74 VarUI2FromI1(byt
5880: 65 2c 20 55 53 48 4f 52 54 2a 29 3b 0d 0a 09 48 e, USHORT*);...H
5890: 52 45 53 55 4c 54 20 56 61 72 55 49 32 46 72 6f RESULT VarUI2Fro
58a0: 6d 55 49 34 28 55 4c 4f 4e 47 2c 20 55 53 48 4f mUI4(ULONG, USHO
58b0: 52 54 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 RT*);...HRESULT
58c0: 56 61 72 55 49 32 46 72 6f 6d 55 49 38 28 55 4c VarUI2FromUI8(UL
58d0: 4f 4e 47 36 34 2c 20 55 53 48 4f 52 54 2a 29 3b ONG64, USHORT*);
58e0: 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 55 49 ...HRESULT VarUI
58f0: 32 46 72 6f 6d 43 79 28 43 59 2c 20 55 53 48 4f 2FromCy(CY, USHO
5900: 52 54 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 RT*);...HRESULT
5910: 56 61 72 55 49 32 46 72 6f 6d 44 65 63 28 44 45 VarUI2FromDec(DE
5920: 43 49 4d 41 4c 2a 2c 20 55 53 48 4f 52 54 2a 29 CIMAL*, USHORT*)
5930: 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 55 ;...HRESULT VarU
5940: 49 32 46 72 6f 6d 44 69 73 70 28 49 44 69 73 70 I2FromDisp(IDisp
5950: 61 74 63 68 2c 20 4c 43 49 44 2c 20 55 53 48 4f atch, LCID, USHO
5960: 52 54 2a 29 3b 0d 0a 0d 0a 09 48 52 45 53 55 4c RT*);.....HRESUL
5970: 54 20 56 61 72 55 49 34 46 72 6f 6d 53 74 72 28 T VarUI4FromStr(
5980: 4f 4c 45 43 48 41 52 2a 2c 20 4c 43 49 44 2c 20 OLECHAR*, LCID,
5990: 55 4c 4f 4e 47 2c 20 55 4c 4f 4e 47 2a 29 3b 0d ULONG, ULONG*);.
59a0: 0a 09 48 52 45 53 55 4c 54 20 56 61 72 55 49 34 ..HRESULT VarUI4
59b0: 46 72 6f 6d 55 49 31 28 42 59 54 45 2c 20 55 4c FromUI1(BYTE, UL
59c0: 4f 4e 47 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 ONG*);...HRESULT
59d0: 20 56 61 72 55 49 34 46 72 6f 6d 49 32 28 53 48 VarUI4FromI2(SH
59e0: 4f 52 54 2c 20 55 4c 4f 4e 47 2a 29 3b 0d 0a 09 ORT, ULONG*);...
59f0: 48 52 45 53 55 4c 54 20 56 61 72 55 49 34 46 72 HRESULT VarUI4Fr
5a00: 6f 6d 49 34 28 4c 4f 4e 47 2c 20 55 4c 4f 4e 47 omI4(LONG, ULONG
5a10: 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 *);...HRESULT Va
5a20: 72 55 49 34 46 72 6f 6d 49 38 28 4c 4f 4e 47 36 rUI4FromI8(LONG6
5a30: 34 2c 20 55 4c 4f 4e 47 2a 29 3b 0d 0a 09 48 52 4, ULONG*);...HR
5a40: 45 53 55 4c 54 20 56 61 72 55 49 34 46 72 6f 6d ESULT VarUI4From
5a50: 52 34 28 46 4c 4f 41 54 2c 20 55 4c 4f 4e 47 2a R4(FLOAT, ULONG*
5a60: 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 );...HRESULT Var
5a70: 55 49 34 46 72 6f 6d 52 38 28 44 4f 55 42 4c 45 UI4FromR8(DOUBLE
5a80: 2c 20 55 4c 4f 4e 47 2a 29 3b 0d 0a 09 48 52 45 , ULONG*);...HRE
5a90: 53 55 4c 54 20 56 61 72 55 49 34 46 72 6f 6d 44 SULT VarUI4FromD
5aa0: 61 74 65 28 44 41 54 45 2c 20 55 4c 4f 4e 47 2a ate(DATE, ULONG*
5ab0: 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 );...HRESULT Var
5ac0: 55 49 34 46 72 6f 6d 42 6f 6f 6c 28 56 41 52 49 UI4FromBool(VARI
5ad0: 41 4e 54 5f 42 4f 4f 4c 2c 20 55 4c 4f 4e 47 2a ANT_BOOL, ULONG*
5ae0: 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 );...HRESULT Var
5af0: 55 49 34 46 72 6f 6d 49 31 28 62 79 74 65 2c 20 UI4FromI1(byte,
5b00: 55 4c 4f 4e 47 2a 29 3b 0d 0a 09 48 52 45 53 55 ULONG*);...HRESU
5b10: 4c 54 20 56 61 72 55 49 34 46 72 6f 6d 55 49 32 LT VarUI4FromUI2
5b20: 28 55 53 48 4f 52 54 2c 20 55 4c 4f 4e 47 2a 29 (USHORT, ULONG*)
5b30: 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 55 ;...HRESULT VarU
5b40: 49 34 46 72 6f 6d 55 49 38 28 55 4c 4f 4e 47 36 I4FromUI8(ULONG6
5b50: 34 2c 20 55 4c 4f 4e 47 2a 29 3b 0d 0a 09 48 52 4, ULONG*);...HR
5b60: 45 53 55 4c 54 20 56 61 72 55 49 34 46 72 6f 6d ESULT VarUI4From
5b70: 43 79 28 43 59 2c 20 55 4c 4f 4e 47 2a 29 3b 0d Cy(CY, ULONG*);.
5b80: 0a 09 48 52 45 53 55 4c 54 20 56 61 72 55 49 34 ..HRESULT VarUI4
5b90: 46 72 6f 6d 44 65 63 28 44 45 43 49 4d 41 4c 2a FromDec(DECIMAL*
5ba0: 2c 20 55 4c 4f 4e 47 2a 29 3b 0d 0a 09 48 52 45 , ULONG*);...HRE
5bb0: 53 55 4c 54 20 56 61 72 55 49 34 46 72 6f 6d 44 SULT VarUI4FromD
5bc0: 69 73 70 28 49 44 69 73 70 61 74 63 68 2c 20 4c isp(IDispatch, L
5bd0: 43 49 44 2c 20 55 4c 4f 4e 47 2a 29 3b 0d 0a 0d CID, ULONG*);...
5be0: 0a 09 48 52 45 53 55 4c 54 20 56 61 72 55 49 38 ..HRESULT VarUI8
5bf0: 46 72 6f 6d 55 49 31 28 42 59 54 45 2c 20 55 4c FromUI1(BYTE, UL
5c00: 4f 4e 47 36 34 2a 29 3b 0d 0a 09 48 52 45 53 55 ONG64*);...HRESU
5c10: 4c 54 20 56 61 72 55 49 38 46 72 6f 6d 49 32 28 LT VarUI8FromI2(
5c20: 53 48 4f 52 54 2c 20 55 4c 4f 4e 47 36 34 2a 29 SHORT, ULONG64*)
5c30: 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 55 ;...HRESULT VarU
5c40: 49 38 46 72 6f 6d 49 34 28 4c 4f 4e 47 2c 20 55 I8FromI4(LONG, U
5c50: 4c 4f 4e 47 36 34 2a 29 3b 0d 0a 09 48 52 45 53 LONG64*);...HRES
5c60: 55 4c 54 20 56 61 72 55 49 38 46 72 6f 6d 49 38 ULT VarUI8FromI8
5c70: 28 4c 4f 4e 47 36 34 2c 20 55 4c 4f 4e 47 36 34 (LONG64, ULONG64
5c80: 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 *);...HRESULT Va
5c90: 72 55 49 38 46 72 6f 6d 52 34 28 46 4c 4f 41 54 rUI8FromR4(FLOAT
5ca0: 2c 20 55 4c 4f 4e 47 36 34 2a 29 3b 0d 0a 09 48 , ULONG64*);...H
5cb0: 52 45 53 55 4c 54 20 56 61 72 55 49 38 46 72 6f RESULT VarUI8Fro
5cc0: 6d 52 38 28 44 4f 55 42 4c 45 2c 20 55 4c 4f 4e mR8(DOUBLE, ULON
5cd0: 47 36 34 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 G64*);...HRESULT
5ce0: 20 56 61 72 55 49 38 46 72 6f 6d 44 61 74 65 28 VarUI8FromDate(
5cf0: 44 41 54 45 2c 20 55 4c 4f 4e 47 36 34 2a 29 3b DATE, ULONG64*);
5d00: 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 55 49 ...HRESULT VarUI
5d10: 38 46 72 6f 6d 53 74 72 28 4f 4c 45 43 48 41 52 8FromStr(OLECHAR
5d20: 2a 2c 20 4c 43 49 44 2c 20 55 4c 4f 4e 47 2c 20 *, LCID, ULONG,
5d30: 55 4c 4f 4e 47 36 34 2a 29 3b 0d 0a 09 48 52 45 ULONG64*);...HRE
5d40: 53 55 4c 54 20 56 61 72 55 49 38 46 72 6f 6d 42 SULT VarUI8FromB
5d50: 6f 6f 6c 28 56 41 52 49 41 4e 54 5f 42 4f 4f 4c ool(VARIANT_BOOL
5d60: 2c 20 55 4c 4f 4e 47 36 34 2a 29 3b 0d 0a 09 48 , ULONG64*);...H
5d70: 52 45 53 55 4c 54 20 56 61 72 55 49 38 46 72 6f RESULT VarUI8Fro
5d80: 6d 49 31 28 62 79 74 65 2c 20 55 4c 4f 4e 47 36 mI1(byte, ULONG6
5d90: 34 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 4*);...HRESULT V
5da0: 61 72 55 49 38 46 72 6f 6d 55 49 32 28 55 53 48 arUI8FromUI2(USH
5db0: 4f 52 54 2c 20 55 4c 4f 4e 47 36 34 2a 29 3b 0d ORT, ULONG64*);.
5dc0: 0a 09 48 52 45 53 55 4c 54 20 56 61 72 55 49 38 ..HRESULT VarUI8
5dd0: 46 72 6f 6d 55 49 34 28 55 4c 4f 4e 47 2c 20 55 FromUI4(ULONG, U
5de0: 4c 4f 4e 47 36 34 2a 29 3b 0d 0a 09 48 52 45 53 LONG64*);...HRES
5df0: 55 4c 54 20 56 61 72 55 49 38 46 72 6f 6d 44 65 ULT VarUI8FromDe
5e00: 63 28 44 45 43 49 4d 41 4c 2a 2c 20 55 4c 4f 4e c(DECIMAL*, ULON
5e10: 47 36 34 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 G64*);...HRESULT
5e20: 20 56 61 72 55 49 38 46 72 6f 6d 49 6e 74 28 49 VarUI8FromInt(I
5e30: 4e 54 2c 20 55 4c 4f 4e 47 36 34 2a 29 3b 0d 0a NT, ULONG64*);..
5e40: 09 48 52 45 53 55 4c 54 20 56 61 72 55 49 38 46 .HRESULT VarUI8F
5e50: 72 6f 6d 43 79 28 43 59 2c 20 55 4c 4f 4e 47 36 romCy(CY, ULONG6
5e60: 34 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 4*);...HRESULT V
5e70: 61 72 55 49 38 46 72 6f 6d 44 69 73 70 28 49 44 arUI8FromDisp(ID
5e80: 69 73 70 61 74 63 68 2c 20 4c 43 49 44 2c 20 55 ispatch, LCID, U
5e90: 4c 4f 4e 47 36 34 2a 29 3b 0d 0a 0d 0a 09 48 52 LONG64*);.....HR
5ea0: 45 53 55 4c 54 20 56 61 72 44 65 63 46 72 6f 6d ESULT VarDecFrom
5eb0: 55 49 31 28 42 59 54 45 2c 20 44 45 43 49 4d 41 UI1(BYTE, DECIMA
5ec0: 4c 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 L*);...HRESULT V
5ed0: 61 72 44 65 63 46 72 6f 6d 49 32 28 53 48 4f 52 arDecFromI2(SHOR
5ee0: 54 2c 20 44 45 43 49 4d 41 4c 2a 29 3b 0d 0a 09 T, DECIMAL*);...
5ef0: 48 52 45 53 55 4c 54 20 56 61 72 44 65 63 46 72 HRESULT VarDecFr
5f00: 6f 6d 49 34 28 4c 4f 4e 47 2c 20 44 45 43 49 4d omI4(LONG, DECIM
5f10: 41 4c 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 AL*);...HRESULT
5f20: 56 61 72 44 65 63 46 72 6f 6d 49 38 28 4c 4f 4e VarDecFromI8(LON
5f30: 47 36 34 2c 20 44 45 43 49 4d 41 4c 2a 29 3b 0d G64, DECIMAL*);.
5f40: 0a 09 48 52 45 53 55 4c 54 20 56 61 72 44 65 63 ..HRESULT VarDec
5f50: 46 72 6f 6d 52 34 28 46 4c 4f 41 54 2c 20 44 45 FromR4(FLOAT, DE
5f60: 43 49 4d 41 4c 2a 29 3b 0d 0a 09 48 52 45 53 55 CIMAL*);...HRESU
5f70: 4c 54 20 56 61 72 44 65 63 46 72 6f 6d 52 38 28 LT VarDecFromR8(
5f80: 44 4f 55 42 4c 45 2c 20 44 45 43 49 4d 41 4c 2a DOUBLE, DECIMAL*
5f90: 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 );...HRESULT Var
5fa0: 44 65 63 46 72 6f 6d 44 61 74 65 28 44 41 54 45 DecFromDate(DATE
5fb0: 2c 20 44 45 43 49 4d 41 4c 2a 29 3b 0d 0a 09 48 , DECIMAL*);...H
5fc0: 52 45 53 55 4c 54 20 56 61 72 44 65 63 46 72 6f RESULT VarDecFro
5fd0: 6d 53 74 72 28 4f 4c 45 43 48 41 52 2a 2c 20 4c mStr(OLECHAR*, L
5fe0: 43 49 44 2c 20 55 4c 4f 4e 47 2c 20 44 45 43 49 CID, ULONG, DECI
5ff0: 4d 41 4c 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 MAL*);...HRESULT
6000: 20 56 61 72 44 65 63 46 72 6f 6d 42 6f 6f 6c 28 VarDecFromBool(
6010: 56 41 52 49 41 4e 54 5f 42 4f 4f 4c 2c 20 44 45 VARIANT_BOOL, DE
6020: 43 49 4d 41 4c 2a 29 3b 0d 0a 09 48 52 45 53 55 CIMAL*);...HRESU
6030: 4c 54 20 56 61 72 44 65 63 46 72 6f 6d 49 31 28 LT VarDecFromI1(
6040: 62 79 74 65 2c 20 44 45 43 49 4d 41 4c 2a 29 3b byte, DECIMAL*);
6050: 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 44 65 ...HRESULT VarDe
6060: 63 46 72 6f 6d 55 49 32 28 55 53 48 4f 52 54 2c cFromUI2(USHORT,
6070: 20 44 45 43 49 4d 41 4c 2a 29 3b 0d 0a 09 48 52 DECIMAL*);...HR
6080: 45 53 55 4c 54 20 56 61 72 44 65 63 46 72 6f 6d ESULT VarDecFrom
6090: 55 49 34 28 55 4c 4f 4e 47 2c 20 44 45 43 49 4d UI4(ULONG, DECIM
60a0: 41 4c 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 AL*);...HRESULT
60b0: 56 61 72 44 65 63 46 72 6f 6d 55 49 38 28 55 4c VarDecFromUI8(UL
60c0: 4f 4e 47 36 34 2c 20 44 45 43 49 4d 41 4c 2a 29 ONG64, DECIMAL*)
60d0: 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 44 ;...HRESULT VarD
60e0: 65 63 46 72 6f 6d 43 79 28 43 59 2c 20 44 45 43 ecFromCy(CY, DEC
60f0: 49 4d 41 4c 2a 29 3b 0d 0a 09 48 52 45 53 55 4c IMAL*);...HRESUL
6100: 54 20 56 61 72 44 65 63 46 72 6f 6d 44 69 73 70 T VarDecFromDisp
6110: 28 49 44 69 73 70 61 74 63 68 2c 20 4c 43 49 44 (IDispatch, LCID
6120: 2c 20 44 45 43 49 4d 41 4c 2a 29 3b 0d 0a 0d 0a , DECIMAL*);....
6130: 09 48 52 45 53 55 4c 54 20 56 61 72 44 65 63 4e .HRESULT VarDecN
6140: 65 67 28 63 6f 6e 73 74 28 44 45 43 49 4d 41 4c eg(const(DECIMAL
6150: 29 2a 2c 20 44 45 43 49 4d 41 4c 2a 29 3b 0d 0a )*, DECIMAL*);..
6160: 09 48 52 45 53 55 4c 54 20 56 61 72 52 34 43 6d .HRESULT VarR4Cm
6170: 70 52 38 28 66 6c 6f 61 74 2c 20 64 6f 75 62 6c pR8(float, doubl
6180: 65 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 e);...HRESULT Va
6190: 72 52 38 50 6f 77 28 64 6f 75 62 6c 65 2c 20 64 rR8Pow(double, d
61a0: 6f 75 62 6c 65 2c 20 64 6f 75 62 6c 65 2a 29 3b ouble, double*);
61b0: 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 52 38 ...HRESULT VarR8
61c0: 52 6f 75 6e 64 28 64 6f 75 62 6c 65 2c 20 69 6e Round(double, in
61d0: 74 2c 20 64 6f 75 62 6c 65 2a 29 3b 0d 0a 09 48 t, double*);...H
61e0: 52 45 53 55 4c 54 20 56 61 72 44 65 63 41 62 73 RESULT VarDecAbs
61f0: 28 63 6f 6e 73 74 28 44 45 43 49 4d 41 4c 29 2a (const(DECIMAL)*
6200: 2c 20 44 45 43 49 4d 41 4c 2a 29 3b 0d 0a 09 48 , DECIMAL*);...H
6210: 52 45 53 55 4c 54 20 56 61 72 44 65 63 41 64 64 RESULT VarDecAdd
6220: 28 63 6f 6e 73 74 28 44 45 43 49 4d 41 4c 29 2a (const(DECIMAL)*
6230: 2c 20 63 6f 6e 73 74 28 44 45 43 49 4d 41 4c 29 , const(DECIMAL)
6240: 2a 2c 20 44 45 43 49 4d 41 4c 2a 29 3b 0d 0a 09 *, DECIMAL*);...
6250: 48 52 45 53 55 4c 54 20 56 61 72 44 65 63 43 6d HRESULT VarDecCm
6260: 70 28 63 6f 6e 73 74 28 44 45 43 49 4d 41 4c 29 p(const(DECIMAL)
6270: 2a 2c 20 63 6f 6e 73 74 28 44 45 43 49 4d 41 4c *, const(DECIMAL
6280: 29 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 )*);...HRESULT V
6290: 61 72 44 65 63 43 6d 70 52 38 28 63 6f 6e 73 74 arDecCmpR8(const
62a0: 28 44 45 43 49 4d 41 4c 29 2a 2c 20 44 4f 55 42 (DECIMAL)*, DOUB
62b0: 4c 45 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 LE);...HRESULT V
62c0: 61 72 44 65 63 44 69 76 28 63 6f 6e 73 74 28 44 arDecDiv(const(D
62d0: 45 43 49 4d 41 4c 29 2a 2c 20 63 6f 6e 73 74 28 ECIMAL)*, const(
62e0: 44 45 43 49 4d 41 4c 29 2a 2c 20 44 45 43 49 4d DECIMAL)*, DECIM
62f0: 41 4c 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 AL*);...HRESULT
6300: 56 61 72 44 65 63 46 69 78 28 63 6f 6e 73 74 28 VarDecFix(const(
6310: 44 45 43 49 4d 41 4c 29 2a 2c 20 44 45 43 49 4d DECIMAL)*, DECIM
6320: 41 4c 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 AL*);...HRESULT
6330: 56 61 72 44 65 63 49 6e 74 28 63 6f 6e 73 74 28 VarDecInt(const(
6340: 44 45 43 49 4d 41 4c 29 2a 2c 20 44 45 43 49 4d DECIMAL)*, DECIM
6350: 41 4c 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 AL*);...HRESULT
6360: 56 61 72 44 65 63 4d 75 6c 28 63 6f 6e 73 74 28 VarDecMul(const(
6370: 44 45 43 49 4d 41 4c 29 2a 2c 20 63 6f 6e 73 74 DECIMAL)*, const
6380: 28 44 45 43 49 4d 41 4c 29 2a 2c 20 44 45 43 49 (DECIMAL)*, DECI
6390: 4d 41 4c 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 MAL*);...HRESULT
63a0: 20 56 61 72 44 65 63 52 6f 75 6e 64 28 63 6f 6e VarDecRound(con
63b0: 73 74 28 44 45 43 49 4d 41 4c 29 2a 2c 20 69 6e st(DECIMAL)*, in
63c0: 74 2c 20 44 45 43 49 4d 41 4c 2a 29 3b 0d 0a 09 t, DECIMAL*);...
63d0: 48 52 45 53 55 4c 54 20 56 61 72 44 65 63 53 75 HRESULT VarDecSu
63e0: 62 28 63 6f 6e 73 74 28 44 45 43 49 4d 41 4c 29 b(const(DECIMAL)
63f0: 2a 2c 20 63 6f 6e 73 74 28 44 45 43 49 4d 41 4c *, const(DECIMAL
6400: 29 2a 2c 20 44 45 43 49 4d 41 4c 2a 29 3b 0d 0a )*, DECIMAL*);..
6410: 09 48 52 45 53 55 4c 54 20 56 61 72 43 79 41 62 .HRESULT VarCyAb
6420: 73 28 43 59 2c 20 43 59 2a 29 3b 0d 0a 09 48 52 s(CY, CY*);...HR
6430: 45 53 55 4c 54 20 56 61 72 43 79 41 64 64 28 43 ESULT VarCyAdd(C
6440: 59 2c 20 43 59 2c 20 43 59 2a 29 3b 0d 0a 09 48 Y, CY, CY*);...H
6450: 52 45 53 55 4c 54 20 56 61 72 43 79 43 6d 70 28 RESULT VarCyCmp(
6460: 43 59 2c 20 43 59 29 3b 0d 0a 09 48 52 45 53 55 CY, CY);...HRESU
6470: 4c 54 20 56 61 72 43 79 43 6d 70 52 38 28 43 59 LT VarCyCmpR8(CY
6480: 2c 20 44 4f 55 42 4c 45 29 3b 0d 0a 09 48 52 45 , DOUBLE);...HRE
6490: 53 55 4c 54 20 56 61 72 43 79 46 69 78 28 43 59 SULT VarCyFix(CY
64a0: 2c 20 43 59 2a 29 3b 0d 0a 09 48 52 45 53 55 4c , CY*);...HRESUL
64b0: 54 20 56 61 72 43 79 49 6e 74 28 43 59 2c 20 43 T VarCyInt(CY, C
64c0: 59 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 Y*);...HRESULT V
64d0: 61 72 43 79 4d 75 6c 28 43 59 2c 20 43 59 2c 20 arCyMul(CY, CY,
64e0: 43 59 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 CY*);...HRESULT
64f0: 56 61 72 43 79 4d 75 6c 49 34 28 43 59 2c 20 4c VarCyMulI4(CY, L
6500: 4f 4e 47 2c 20 43 59 2a 29 3b 0d 0a 09 48 52 45 ONG, CY*);...HRE
6510: 53 55 4c 54 20 56 61 72 43 79 4d 75 6c 49 38 28 SULT VarCyMulI8(
6520: 43 59 2c 20 4c 4f 4e 47 36 34 2c 20 43 59 2a 29 CY, LONG64, CY*)
6530: 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 43 ;...HRESULT VarC
6540: 79 4e 65 67 28 43 59 2c 20 43 59 2a 29 3b 0d 0a yNeg(CY, CY*);..
6550: 09 48 52 45 53 55 4c 54 20 56 61 72 43 79 52 6f .HRESULT VarCyRo
6560: 75 6e 64 28 43 59 2c 20 49 4e 54 2c 20 43 59 2a und(CY, INT, CY*
6570: 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 );...HRESULT Var
6580: 43 79 53 75 62 28 43 59 2c 20 43 59 2c 20 43 59 CySub(CY, CY, CY
6590: 2a 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 *);...HRESULT Va
65a0: 72 41 64 64 28 4c 50 56 41 52 49 41 4e 54 2c 20 rAdd(LPVARIANT,
65b0: 4c 50 56 41 52 49 41 4e 54 2c 20 4c 50 56 41 52 LPVARIANT, LPVAR
65c0: 49 41 4e 54 29 3b 0d 0a 09 48 52 45 53 55 4c 54 IANT);...HRESULT
65d0: 20 56 61 72 41 6e 64 28 4c 50 56 41 52 49 41 4e VarAnd(LPVARIAN
65e0: 54 2c 20 4c 50 56 41 52 49 41 4e 54 2c 20 4c 50 T, LPVARIANT, LP
65f0: 56 41 52 49 41 4e 54 29 3b 0d 0a 09 48 52 45 53 VARIANT);...HRES
6600: 55 4c 54 20 56 61 72 43 61 74 28 4c 50 56 41 52 ULT VarCat(LPVAR
6610: 49 41 4e 54 2c 20 4c 50 56 41 52 49 41 4e 54 2c IANT, LPVARIANT,
6620: 20 4c 50 56 41 52 49 41 4e 54 29 3b 0d 0a 09 48 LPVARIANT);...H
6630: 52 45 53 55 4c 54 20 56 61 72 44 69 76 28 4c 50 RESULT VarDiv(LP
6640: 56 41 52 49 41 4e 54 2c 20 4c 50 56 41 52 49 41 VARIANT, LPVARIA
6650: 4e 54 2c 20 4c 50 56 41 52 49 41 4e 54 29 3b 0d NT, LPVARIANT);.
6660: 0a 09 48 52 45 53 55 4c 54 20 56 61 72 45 71 76 ..HRESULT VarEqv
6670: 28 4c 50 56 41 52 49 41 4e 54 2c 20 4c 50 56 41 (LPVARIANT, LPVA
6680: 52 49 41 4e 54 2c 20 4c 50 56 41 52 49 41 4e 54 RIANT, LPVARIANT
6690: 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 );...HRESULT Var
66a0: 49 64 69 76 28 4c 50 56 41 52 49 41 4e 54 2c 20 Idiv(LPVARIANT,
66b0: 4c 50 56 41 52 49 41 4e 54 2c 20 4c 50 56 41 52 LPVARIANT, LPVAR
66c0: 49 41 4e 54 29 3b 0d 0a 09 48 52 45 53 55 4c 54 IANT);...HRESULT
66d0: 20 56 61 72 49 6d 70 28 4c 50 56 41 52 49 41 4e VarImp(LPVARIAN
66e0: 54 2c 20 4c 50 56 41 52 49 41 4e 54 2c 20 4c 50 T, LPVARIANT, LP
66f0: 56 41 52 49 41 4e 54 29 3b 0d 0a 09 48 52 45 53 VARIANT);...HRES
6700: 55 4c 54 20 56 61 72 4d 6f 64 28 4c 50 56 41 52 ULT VarMod(LPVAR
6710: 49 41 4e 54 2c 20 4c 50 56 41 52 49 41 4e 54 2c IANT, LPVARIANT,
6720: 20 4c 50 56 41 52 49 41 4e 54 29 3b 0d 0a 09 48 LPVARIANT);...H
6730: 52 45 53 55 4c 54 20 56 61 72 4d 75 6c 28 4c 50 RESULT VarMul(LP
6740: 56 41 52 49 41 4e 54 2c 20 4c 50 56 41 52 49 41 VARIANT, LPVARIA
6750: 4e 54 2c 20 4c 50 56 41 52 49 41 4e 54 29 3b 0d NT, LPVARIANT);.
6760: 0a 09 48 52 45 53 55 4c 54 20 56 61 72 4f 72 28 ..HRESULT VarOr(
6770: 4c 50 56 41 52 49 41 4e 54 2c 20 4c 50 56 41 52 LPVARIANT, LPVAR
6780: 49 41 4e 54 2c 20 4c 50 56 41 52 49 41 4e 54 29 IANT, LPVARIANT)
6790: 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 50 ;...HRESULT VarP
67a0: 6f 77 28 4c 50 56 41 52 49 41 4e 54 2c 20 4c 50 ow(LPVARIANT, LP
67b0: 56 41 52 49 41 4e 54 2c 20 4c 50 56 41 52 49 41 VARIANT, LPVARIA
67c0: 4e 54 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 NT);...HRESULT V
67d0: 61 72 53 75 62 28 4c 50 56 41 52 49 41 4e 54 2c arSub(LPVARIANT,
67e0: 20 4c 50 56 41 52 49 41 4e 54 2c 20 4c 50 56 41 LPVARIANT, LPVA
67f0: 52 49 41 4e 54 29 3b 0d 0a 09 48 52 45 53 55 4c RIANT);...HRESUL
6800: 54 20 56 61 72 58 6f 72 28 4c 50 56 41 52 49 41 T VarXor(LPVARIA
6810: 4e 54 2c 20 4c 50 56 41 52 49 41 4e 54 2c 20 4c NT, LPVARIANT, L
6820: 50 56 41 52 49 41 4e 54 29 3b 0d 0a 09 48 52 45 PVARIANT);...HRE
6830: 53 55 4c 54 20 56 61 72 41 62 73 28 4c 50 56 41 SULT VarAbs(LPVA
6840: 52 49 41 4e 54 2c 20 4c 50 56 41 52 49 41 4e 54 RIANT, LPVARIANT
6850: 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 );...HRESULT Var
6860: 46 69 78 28 4c 50 56 41 52 49 41 4e 54 2c 20 4c Fix(LPVARIANT, L
6870: 50 56 41 52 49 41 4e 54 29 3b 0d 0a 09 48 52 45 PVARIANT);...HRE
6880: 53 55 4c 54 20 56 61 72 49 6e 74 28 4c 50 56 41 SULT VarInt(LPVA
6890: 52 49 41 4e 54 2c 20 4c 50 56 41 52 49 41 4e 54 RIANT, LPVARIANT
68a0: 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 );...HRESULT Var
68b0: 4e 65 67 28 4c 50 56 41 52 49 41 4e 54 2c 20 4c Neg(LPVARIANT, L
68c0: 50 56 41 52 49 41 4e 54 29 3b 0d 0a 09 48 52 45 PVARIANT);...HRE
68d0: 53 55 4c 54 20 56 61 72 4e 6f 74 28 4c 50 56 41 SULT VarNot(LPVA
68e0: 52 49 41 4e 54 2c 20 4c 50 56 41 52 49 41 4e 54 RIANT, LPVARIANT
68f0: 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 );...HRESULT Var
6900: 52 6f 75 6e 64 28 4c 50 56 41 52 49 41 4e 54 2c Round(LPVARIANT,
6910: 20 69 6e 74 2c 20 4c 50 56 41 52 49 41 4e 54 29 int, LPVARIANT)
6920: 3b 0d 0a 09 48 52 45 53 55 4c 54 20 56 61 72 43 ;...HRESULT VarC
6930: 6d 70 28 4c 50 56 41 52 49 41 4e 54 2c 20 4c 50 mp(LPVARIANT, LP
6940: 56 41 52 49 41 4e 54 2c 20 4c 43 49 44 2c 20 55 VARIANT, LCID, U
6950: 4c 4f 4e 47 29 3b 0d 0a 09 48 52 45 53 55 4c 54 LONG);...HRESULT
6960: 20 56 61 72 42 73 74 72 43 6d 70 28 42 53 54 52 VarBstrCmp(BSTR
6970: 2c 20 42 53 54 52 2c 20 4c 43 49 44 2c 20 55 4c , BSTR, LCID, UL
6980: 4f 4e 47 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 ONG);...HRESULT
6990: 56 61 72 42 73 74 72 43 61 74 28 42 53 54 52 2c VarBstrCat(BSTR,
69a0: 20 42 53 54 52 2c 20 42 53 54 52 2a 29 3b 0d 0a BSTR, BSTR*);..
69b0: 7d 0d 0a }..