constants.go 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153
  1. package ole
  2. const (
  3. CLSCTX_INPROC_SERVER = 1
  4. CLSCTX_INPROC_HANDLER = 2
  5. CLSCTX_LOCAL_SERVER = 4
  6. CLSCTX_INPROC_SERVER16 = 8
  7. CLSCTX_REMOTE_SERVER = 16
  8. CLSCTX_ALL = CLSCTX_INPROC_SERVER | CLSCTX_INPROC_HANDLER | CLSCTX_LOCAL_SERVER
  9. CLSCTX_INPROC = CLSCTX_INPROC_SERVER | CLSCTX_INPROC_HANDLER
  10. CLSCTX_SERVER = CLSCTX_INPROC_SERVER | CLSCTX_LOCAL_SERVER | CLSCTX_REMOTE_SERVER
  11. )
  12. const (
  13. COINIT_APARTMENTTHREADED = 0x2
  14. COINIT_MULTITHREADED = 0x0
  15. COINIT_DISABLE_OLE1DDE = 0x4
  16. COINIT_SPEED_OVER_MEMORY = 0x8
  17. )
  18. const (
  19. DISPATCH_METHOD = 1
  20. DISPATCH_PROPERTYGET = 2
  21. DISPATCH_PROPERTYPUT = 4
  22. DISPATCH_PROPERTYPUTREF = 8
  23. )
  24. const (
  25. S_OK = 0x00000000
  26. E_UNEXPECTED = 0x8000FFFF
  27. E_NOTIMPL = 0x80004001
  28. E_OUTOFMEMORY = 0x8007000E
  29. E_INVALIDARG = 0x80070057
  30. E_NOINTERFACE = 0x80004002
  31. E_POINTER = 0x80004003
  32. E_HANDLE = 0x80070006
  33. E_ABORT = 0x80004004
  34. E_FAIL = 0x80004005
  35. E_ACCESSDENIED = 0x80070005
  36. E_PENDING = 0x8000000A
  37. CO_E_CLASSSTRING = 0x800401F3
  38. )
  39. const (
  40. CC_FASTCALL = iota
  41. CC_CDECL
  42. CC_MSCPASCAL
  43. CC_PASCAL = CC_MSCPASCAL
  44. CC_MACPASCAL
  45. CC_STDCALL
  46. CC_FPFASTCALL
  47. CC_SYSCALL
  48. CC_MPWCDECL
  49. CC_MPWPASCAL
  50. CC_MAX = CC_MPWPASCAL
  51. )
  52. type VT uint16
  53. const (
  54. VT_EMPTY VT = 0x0
  55. VT_NULL VT = 0x1
  56. VT_I2 VT = 0x2
  57. VT_I4 VT = 0x3
  58. VT_R4 VT = 0x4
  59. VT_R8 VT = 0x5
  60. VT_CY VT = 0x6
  61. VT_DATE VT = 0x7
  62. VT_BSTR VT = 0x8
  63. VT_DISPATCH VT = 0x9
  64. VT_ERROR VT = 0xa
  65. VT_BOOL VT = 0xb
  66. VT_VARIANT VT = 0xc
  67. VT_UNKNOWN VT = 0xd
  68. VT_DECIMAL VT = 0xe
  69. VT_I1 VT = 0x10
  70. VT_UI1 VT = 0x11
  71. VT_UI2 VT = 0x12
  72. VT_UI4 VT = 0x13
  73. VT_I8 VT = 0x14
  74. VT_UI8 VT = 0x15
  75. VT_INT VT = 0x16
  76. VT_UINT VT = 0x17
  77. VT_VOID VT = 0x18
  78. VT_HRESULT VT = 0x19
  79. VT_PTR VT = 0x1a
  80. VT_SAFEARRAY VT = 0x1b
  81. VT_CARRAY VT = 0x1c
  82. VT_USERDEFINED VT = 0x1d
  83. VT_LPSTR VT = 0x1e
  84. VT_LPWSTR VT = 0x1f
  85. VT_RECORD VT = 0x24
  86. VT_INT_PTR VT = 0x25
  87. VT_UINT_PTR VT = 0x26
  88. VT_FILETIME VT = 0x40
  89. VT_BLOB VT = 0x41
  90. VT_STREAM VT = 0x42
  91. VT_STORAGE VT = 0x43
  92. VT_STREAMED_OBJECT VT = 0x44
  93. VT_STORED_OBJECT VT = 0x45
  94. VT_BLOB_OBJECT VT = 0x46
  95. VT_CF VT = 0x47
  96. VT_CLSID VT = 0x48
  97. VT_BSTR_BLOB VT = 0xfff
  98. VT_VECTOR VT = 0x1000
  99. VT_ARRAY VT = 0x2000
  100. VT_BYREF VT = 0x4000
  101. VT_RESERVED VT = 0x8000
  102. VT_ILLEGAL VT = 0xffff
  103. VT_ILLEGALMASKED VT = 0xfff
  104. VT_TYPEMASK VT = 0xfff
  105. )
  106. const (
  107. DISPID_UNKNOWN = -1
  108. DISPID_VALUE = 0
  109. DISPID_PROPERTYPUT = -3
  110. DISPID_NEWENUM = -4
  111. DISPID_EVALUATE = -5
  112. DISPID_CONSTRUCTOR = -6
  113. DISPID_DESTRUCTOR = -7
  114. DISPID_COLLECT = -8
  115. )
  116. const (
  117. TKIND_ENUM = 1
  118. TKIND_RECORD = 2
  119. TKIND_MODULE = 3
  120. TKIND_INTERFACE = 4
  121. TKIND_DISPATCH = 5
  122. TKIND_COCLASS = 6
  123. TKIND_ALIAS = 7
  124. TKIND_UNION = 8
  125. TKIND_MAX = 9
  126. )
  127. // Safe Array Feature Flags
  128. const (
  129. FADF_AUTO = 0x0001
  130. FADF_STATIC = 0x0002
  131. FADF_EMBEDDED = 0x0004
  132. FADF_FIXEDSIZE = 0x0010
  133. FADF_RECORD = 0x0020
  134. FADF_HAVEIID = 0x0040
  135. FADF_HAVEVARTYPE = 0x0080
  136. FADF_BSTR = 0x0100
  137. FADF_UNKNOWN = 0x0200
  138. FADF_DISPATCH = 0x0400
  139. FADF_VARIANT = 0x0800
  140. FADF_RESERVED = 0xF008
  141. )