<?xml version="1.0" encoding="UTF-8"?>
<!-- $Revision$ -->
<chapter xml:id="com.constants" xmlns="http://docbook.org/ns/docbook">
 &reftitle.constants;
 &extension.constants;
 <table>
  <title>COM constants</title>
  <tgroup cols="3">
   <thead>
    <row>
     <entry>Constant</entry>
     <entry>Value</entry>
     <entry>Description</entry>
     <entry>Notes</entry>
    </row>
   </thead>
   <tbody>
    <row xml:id="constant.clsctx-inproc-server">
     <entry>
      <constant>CLSCTX_INPROC_SERVER</constant>
      (<type>integer</type>)
     </entry>
     <entry>1</entry>
     <entry>
      The code that creates and manages objects of this class is 
      a DLL that runs in the same process as the caller of the 
      function specifying the class context.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.clsctx-inproc-handler">
     <entry>
      <constant>CLSCTX_INPROC_HANDLER</constant>
      (<type>integer</type>)
     </entry>
     <entry>2</entry>
     <entry>
      The code that manages objects of this class is an in-process 
      handler. This is a DLL that runs in the client process and 
      implements client-side structures of this class when instances 
      of the class are accessed remotely.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.clsctx-local-server">
     <entry>
      <constant>CLSCTX_LOCAL_SERVER</constant>
      (<type>integer</type>)
     </entry>
     <entry>4</entry>
     <entry>
      The EXE code that creates and manages objects of this class runs on 
      same machine but is loaded in a separate process space.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.clsctx-remote-server">
     <entry>
      <constant>CLSCTX_REMOTE_SERVER</constant>
      (<type>integer</type>)
     </entry>
     <entry>16</entry>
     <entry>
      A remote context. The code that creates and manages objects of this 
      class is run on a different computer.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.clsctx-server">
     <entry>
      <constant>CLSCTX_SERVER</constant>
      (<type>integer</type>)
     </entry>
     <entry>21</entry>
     <entry>
      Indicates server code, whether in-process, local, or remote. This 
      definition ORs <constant>CLSCTX_INPROC_SERVER</constant>, 
      <constant>CLSCTX_LOCAL_SERVER</constant>, and 
      <constant>CLSCTX_REMOTE_SERVER</constant>.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.clsctx-all">
     <entry>
      <constant>CLSCTX_ALL</constant>
      (<type>integer</type>)
     </entry>
     <entry>23</entry>
     <entry>
      Indicates all class contexts. This definition ORs 
      <constant>CLSCTX_INPROC_HANDLER</constant> and 
      <constant>CLSCTX_SERVER</constant>.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.vt-null">
     <entry>
      <constant>VT_NULL</constant>
      (<type>integer</type>)
     </entry>
     <entry>1</entry>
     <entry>
      NULL pointer reference.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.vt-empty">
     <entry>
      <constant>VT_EMPTY</constant>
      (<type>integer</type>)
     </entry>
     <entry>0</entry>
     <entry>
      A property with a type indicator of <constant>VT_EMPTY</constant> has 
      no data associated with it; that is, the size of the value is zero.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.vt-ui1">
     <entry>
      <constant>VT_UI1</constant>
      (<type>integer</type>)
     </entry>
     <entry>17</entry>
     <entry>
      1-byte unsigned integer.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.vt-i2">
     <entry>
      <constant>VT_I2</constant>
      (<type>integer</type>)
     </entry>
     <entry>2</entry>
     <entry>
      Two bytes representing a 2-byte signed integer value.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.vt-i4">
     <entry>
      <constant>VT_I4</constant>
      (<type>integer</type>)
     </entry>
     <entry>3</entry>
     <entry>
      4-byte signed integer value.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.vt-r4">
     <entry>
      <constant>VT_R4</constant>
      (<type>integer</type>)
     </entry>
     <entry>4</entry>
     <entry>
      32-bit IEEE floating point value.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.vt-r8">
     <entry>
      <constant>VT_R8</constant>
      (<type>integer</type>)
     </entry>
     <entry>5</entry>
     <entry>
      64-bit IEEE floating point value.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.vt-bool">
     <entry>
      <constant>VT_BOOL</constant>
      (<type>integer</type>)
     </entry>
     <entry>11</entry>
     <entry>
      Boolean value.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.vt-error">
     <entry>
      <constant>VT_ERROR</constant>
      (<type>integer</type>)
     </entry>
     <entry>10</entry>
     <entry>
      Error code; containing the status code associated with the 
      error.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.vt-cy">
     <entry>
      <constant>VT_CY</constant>
      (<type>integer</type>)
     </entry>
     <entry>6</entry>
     <entry>
      8-byte two's complement integer (scaled by 10,000).
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.vt-date">
     <entry>
      <constant>VT_DATE</constant>
      (<type>integer</type>)
     </entry>
     <entry>7</entry>
     <entry>
      A 64-bit floating point number representing the number of days 
     (not seconds) since December 31, 1899. For example, 
     <literal>January 1, 1900</literal>, is 2.0, <literal>January 2, 1900</literal>, 
     is 3.0, and so on). This is stored in the same representation as 
     <constant>VT_R8</constant>.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.vt-bstr">
     <entry>
      <constant>VT_BSTR</constant>
      (<type>integer</type>)
     </entry>
     <entry>8</entry>
     <entry>
      Pointer to a null-terminated Unicode string.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.vt-decimal">
     <entry>
      <constant>VT_DECIMAL</constant>
      (<type>integer</type>)
     </entry>
     <entry>14</entry>
     <entry>
      A decimal structure.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.vt-unknown">
     <entry>
      <constant>VT_UNKNOWN</constant>
      (<type>integer</type>)
     </entry>
     <entry>13</entry>
     <entry>
      A pointer to an object that implements the IUnknown interface.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.vt-dispatch">
     <entry>
      <constant>VT_DISPATCH</constant>
      (<type>integer</type>)
     </entry>
     <entry>9</entry>
     <entry>
      A pointer to a pointer to an object was specified.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.vt-variant">
     <entry>
      <constant>VT_VARIANT</constant>
      (<type>integer</type>)
     </entry>
     <entry>12</entry>
     <entry>
      A type indicator followed by the corresponding value. 
      <constant>VT_VARIANT</constant> can be used only with 
      <constant>VT_BYREF</constant>.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.vt-i1">
     <entry>
      <constant>VT_I1</constant>
      (<type>integer</type>)
     </entry>
     <entry>16</entry>
     <entry>
      1-byte signed integer.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.vt-ui2">
     <entry>
      <constant>VT_UI2</constant>
      (<type>integer</type>)
     </entry>
     <entry>18</entry>
     <entry>
      2-byte unsigned integer.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.vt-ui4">
     <entry>
      <constant>VT_UI4</constant>
      (<type>integer</type>)
     </entry>
     <entry>19</entry>
     <entry>
      4-byte unsigned integer.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.vt-int">
     <entry>
      <constant>VT_INT</constant>
      (<type>integer</type>)
     </entry>
     <entry>22</entry>
     <entry>
      4-byte signed integer value (equivalent to 
      <constant>VT_I4</constant>).
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.vt-uint">
     <entry>
      <constant>VT_UINT</constant>
      (<type>integer</type>)
     </entry>
     <entry>23</entry>
     <entry>
      4-byte unsigned integer (equivalent to 
      <constant>VT_UI4</constant>).
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.vt-array">
     <entry>
      <constant>VT_ARRAY</constant>
      (<type>integer</type>)
     </entry>
     <entry>8192</entry>
     <entry>
      If the type indicator is combined with 
      <constant>VT_ARRAY</constant> by an OR operator, the value is a pointer to a 
      <literal>SAFEARRAY</literal>. <constant>VT_ARRAY</constant> 
      can use the OR with the following data types: <constant>VT_I1</constant>, 
      <constant>VT_UI1</constant>, <constant>VT_I2</constant>, <constant>VT_UI2</constant>, 
      <constant>VT_I4</constant>, <constant>VT_UI4</constant>, <constant>VT_INT</constant>, 
      <constant>VT_UINT</constant>, <constant>VT_R4</constant>, <constant>VT_R8</constant>, 
      <constant>VT_BOOL</constant>, <constant>VT_DECIMAL</constant>, <constant>VT_ERROR</constant>, 
      <constant>VT_CY</constant>, <constant>VT_DATE</constant>, <constant>VT_BSTR</constant>, 
      <constant>VT_DISPATCH</constant>, <constant>VT_UNKNOWN</constant> and 
      <constant>VT_VARIANT</constant>.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.vt-byref">
     <entry>
      <constant>VT_BYREF</constant>
      (<type>integer</type>)
     </entry>
     <entry>16384</entry>
     <entry>
      If the type indicator is combined with <constant>VT_BYREF</constant> 
      by an OR operator, the value is a reference. Reference types are 
      interpreted as a reference to data, similar to the reference type in 
      C++.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.cp-acp">
     <entry>
      <constant>CP_ACP</constant>
      (<type>integer</type>)
     </entry>
     <entry>0</entry>
     <entry>
      Default to ANSI code page.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.cp-maccp">
     <entry>
      <constant>CP_MACCP</constant>
      (<type>integer</type>)
     </entry>
     <entry>2</entry>
     <entry>
      Macintosh code page.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.cp-oemcp">
     <entry>
      <constant>CP_OEMCP</constant>
      (<type>integer</type>)
     </entry>
     <entry>1</entry>
     <entry>
      Default to OEM code page.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.cp-utf7">
     <entry>
      <constant>CP_UTF7</constant>
      (<type>integer</type>)
     </entry>
     <entry>65000</entry>
     <entry>
      Unicode (UTF-7).
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.cp-utf8">
     <entry>
      <constant>CP_UTF8</constant>
      (<type>integer</type>)
     </entry>
     <entry>65001</entry>
     <entry>
      Unicode (UTF-8).
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.cp-symbol">
     <entry>
      <constant>CP_SYMBOL</constant>
      (<type>integer</type>)
     </entry>
     <entry>42</entry>
     <entry>
      <literal>SYMBOL</literal> translations.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.cp-thread-acp">
     <entry>
      <constant>CP_THREAD_ACP</constant>
      (<type>integer</type>)
     </entry>
     <entry>3</entry>
     <entry>
      Current thread's ANSI code page
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.varcmp-lt">
     <entry>
      <constant>VARCMP_LT</constant>
      (<type>integer</type>)
     </entry>
     <entry>0</entry>
     <entry>
      The left <literal>bstr</literal> is less than right 
      <literal>bstr</literal>.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.varcmp-eq">
     <entry>
      <constant>VARCMP_EQ</constant>
      (<type>integer</type>)
     </entry>
     <entry>1</entry>
     <entry>
      The two parameters are equal.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.varcmp-gt">
     <entry>
      <constant>VARCMP_GT</constant>
      (<type>integer</type>)
     </entry>
     <entry>2</entry>
     <entry>
      The left <literal>bstr</literal> is greater than right 
      <literal>bstr</literal>.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.varcmp-null">
     <entry>
      <constant>VARCMP_NULL</constant>
      (<type>integer</type>)
     </entry>
     <entry>3</entry>
     <entry>
      Either expression is NULL.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.norm-ignorecase">
     <entry>
      <constant>NORM_IGNORECASE</constant>
      (<type>integer</type>)
     </entry>
     <entry>1</entry>
     <entry>
      Ignore case sensitivity.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.norm-ignorenonspace">
     <entry>
      <constant>NORM_IGNORENONSPACE</constant>
      (<type>integer</type>)
     </entry>
     <entry>2</entry>
     <entry>
      Ignore nonspacing characters.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.norm-ignoresymbols">
     <entry>
      <constant>NORM_IGNORESYMBOLS</constant>
      (<type>integer</type>)
     </entry>
     <entry>4</entry>
     <entry>
      Ignore symbols.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.norm-ignorewidth">
     <entry>
      <constant>NORM_IGNOREWIDTH</constant>
      (<type>integer</type>)
     </entry>
     <entry>131072</entry>
     <entry>
      Ignore string width.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.norm-ignorekanatype">
     <entry>
      <constant>NORM_IGNOREKANATYPE</constant>
      (<type>integer</type>)
     </entry>
     <entry>65536</entry>
     <entry>
      Ignore Kana type.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.norm-ignorekashida">
     <entry>
      <constant>NORM_IGNOREKASHIDA</constant>
      (<type>integer</type>)
     </entry>
     <entry>262144</entry>
     <entry>
      Ignore Arabic kashida characters.
     </entry>
     <entry>
      Availability is dependent upon under lying library.
     </entry>
    </row>
    <row xml:id="constant.disp-e-divbyzero">
     <entry>
      <constant>DISP_E_DIVBYZERO</constant>
      (<type>integer</type>)
     </entry>
     <entry>-2147352558</entry>
     <entry>
      A return error that indicates a divide by zero error.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.disp-e-overflow">
     <entry>
      <constant>DISP_E_OVERFLOW</constant>
      (<type>integer</type>)
     </entry>
     <entry>-2147352566</entry>
     <entry>
      An error that indicates that a value could not be coerced to 
      its expected representation.
     </entry>
     <entry></entry>
    </row>
    <row xml:id="constant.mk-e-unavailable">
     <entry>
      <constant>MK_E_UNAVAILABLE</constant>
      (<type>integer</type>)
     </entry>
     <entry>-2147221021</entry>
     <entry>
      iMoniker COM status code, return on errors where the function call 
      failed due to unavailability.
     </entry>
     <entry></entry>
    </row>
   </tbody>
  </tgroup>
 </table>
</chapter>

<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->