comAutomation.h
上传用户:nvosite88
上传日期:2007-01-17
资源大小:4983k
文件大小:3k
源码类别:

VxWorks

开发平台:

C/C++

  1. /* comAutomation.h generated by WIDL Version 2.2.1 on 06-Dec-01 at 11:42:36 AM */
  2. #include "comBase.h"
  3. #ifndef __INCcomAutomation_h
  4. #define __INCcomAutomation_h
  5. #include "comCoreTypes.h"
  6. #ifdef __cplusplus
  7. extern "C" {
  8. #endif
  9. int include_comAutomation (void);
  10. /*
  11.  * VARENUM usage key,
  12.  *
  13.  * * [V] - may appear in a VARIANT
  14.  * * [S] - may appear in a Safe Array
  15.  *
  16.  *  VT_EMPTY            [V]     nothing
  17.  *  VT_NULL             [V]     SQL style Null
  18.  *  VT_I2               [V][S]  2 byte signed int
  19.  *  VT_I4               [V][S]  4 byte signed int
  20.  *  VT_R4               [V][S]  4 byte real
  21.  *  VT_R8               [V][S]  8 byte real
  22.  *  VT_CY               [V][S]  currency
  23.  *  VT_DATE             [V][S]  date
  24.  *  VT_BSTR             [V][S]  OLE Automation string
  25.  *  VT_ERROR            [V][S]  SCODE
  26.  *  VT_BOOL             [V][S]  True=-1, False=0
  27.  *  VT_VARIANT             [S]  VARIANT *
  28.  *  VT_UNKNOWN          [V][S]  IUnknown *
  29.  *  VT_UI1              [V][S]  unsigned char
  30.  *  VT_ARRAY            [V][S]  SAFEARRAY*
  31.  */
  32. enum tagVARENUM
  33. {
  34. VT_EMPTY = 0,
  35. VT_NULL = 1,
  36. VT_I2 = 2,
  37. VT_I4 = 3,
  38. VT_R4 = 4,
  39. VT_R8 = 5,
  40. VT_CY = 6,
  41. VT_DATE = 7,
  42. VT_BSTR = 8,
  43. VT_DISPATCH = 9,
  44. VT_ERROR = 10,
  45. VT_BOOL = 11,
  46. VT_VARIANT = 12,
  47. VT_UNKNOWN = 13,
  48. VT_DECIMAL = 14,
  49. VT_I1 = 16,
  50. VT_UI1 = 17,
  51. VT_UI2 = 18,
  52. VT_UI4 = 19,
  53. VT_I8 = 20,
  54. VT_UI8 = 21,
  55. VT_INT = 22,
  56. VT_UINT = 23,
  57. VT_VOID = 24,
  58. VT_HRESULT = 25,
  59. VT_PTR = 26,
  60. VT_SAFEARRAY = 27,
  61. VT_CARRAY = 28,
  62. VT_USERDEFINED = 29,
  63. VT_LPSTR = 30,
  64. VT_LPWSTR = 31,
  65. VT_FILETIME = 64,
  66. VT_BLOB = 65,
  67. VT_STREAM = 66,
  68. VT_STORAGE = 67,
  69. VT_STREAMED_OBJECT = 68,
  70. VT_STORED_OBJECT = 69,
  71. VT_BLOB_OBJECT = 70,
  72. VT_CF = 71,
  73. VT_CLSID = 72,
  74. VT_VECTOR = 4096,
  75. VT_ARRAY = 8192,
  76. VT_BYREF = 16384,
  77. VT_RESERVED = 32768,
  78. VT_ILLEGAL = 65535,
  79. VT_ILLEGALMASKED = 4095,
  80. VT_TYPEMASK = 4095,
  81. };
  82. typedef enum tagVARENUM VARENUM;
  83. typedef unsigned short VARTYPE;
  84. struct tagVARIANT
  85. {
  86. VARTYPE vt;
  87. WORD wReserved1;
  88. WORD wReserved2;
  89. WORD wReserved3;
  90. union 
  91. {
  92. LONG lVal;
  93. BYTE bVal;
  94. SHORT iVal;
  95. FLOAT fltVal;
  96. DOUBLE dblVal;
  97. VARIANT_BOOL boolVal;
  98. SCODE scode;
  99. CY cyVal;
  100. DATE date;
  101. BSTR bstrVal;
  102. IUnknown* punkVal;
  103. struct tagSAFEARRAY* parray;
  104. BYTE* pbVal;
  105. SHORT* piVal;
  106. LONG* plVal;
  107. FLOAT* pfltVal;
  108. DOUBLE* pdblVal;
  109. VARIANT_BOOL* pboolVal;
  110. SCODE* pscode;
  111. CY* pcyVal;
  112. DATE* pdate;
  113. BSTR* pbstrVal;
  114. IUnknown** ppunkVal;
  115. struct tagVARIANT* pvarVal;
  116. void* byref;
  117. char cVal;
  118. USHORT uiVal;
  119. ULONG ulVal;
  120. INT intVal;
  121. UINT uintVal;
  122. char* pcVal;
  123. USHORT* puiVal;
  124. ULONG* pulVal;
  125. INT* pintVal;
  126. UINT* puintVal;
  127. } ;
  128. };
  129. typedef struct tagVARIANT VARIANT;
  130. typedef VARIANT* LPVARIANT;
  131. typedef VARIANT VARIANTARG;
  132. typedef VARIANT* LPVARIANTARG;
  133. #define SF_ERROR VT_ERROR
  134. #define SF_I1 VT_I1
  135. #define SF_I2 VT_I2
  136. #define SF_I4 VT_I4
  137. #define SF_BSTR VT_BSTR
  138. #define SF_UNKNOWN VT_UNKNOWN
  139. #define SF_VARIANT VT_VARIANT
  140. enum tagFADF_TYPE
  141. {
  142. FADF_AUTO = 1,
  143. FADF_STATIC = 2,
  144. FADF_EMBEDDED = 4,
  145. FADF_FIXEDSIZE = 16,
  146. FADF_RECORD = 32,
  147. FADF_HAVEIID = 64,
  148. FADF_HAVEVARTYPE = 128,
  149. FADF_BSTR = 256,
  150. FADF_UNKNOWN = 512,
  151. FADF_DISPATCH = 1024,
  152. FADF_VARIANT = 2048,
  153. FADF_RESERVED = 61448,
  154. };
  155. typedef enum tagFADF_TYPE FADF_TYPE;
  156. struct tagSAFEARRAYBOUND
  157. {
  158. ULONG cElements;
  159. LONG lLbound;
  160. };
  161. typedef struct tagSAFEARRAYBOUND SAFEARRAYBOUND;
  162. typedef SAFEARRAYBOUND* LPSAFEARRAYBOUND;
  163. struct tagSAFEARRAY
  164. {
  165. USHORT cDims;
  166. USHORT fFeatures;
  167. ULONG cbElements;
  168. ULONG cLocks;
  169. PVOID pvData;
  170. SAFEARRAYBOUND rgsabound[1];
  171. };
  172. typedef struct tagSAFEARRAY SAFEARRAY;
  173. #ifdef __cplusplus
  174. }
  175. #endif
  176. #endif /* __INCcomAutomation_h */