<html dir="LTR">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=Windows-1252" />
    <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5" />
    <title>NativeError Members</title>
    <xml>
    </xml>
    <link rel="stylesheet" type="text/css" href="MSDN.css" />
  </head>
  <body id="bodyID" class="dtBODY">
    <div id="nsbanner">
      <div id="bannerrow1">
        <table class="bannerparthead" cellspacing="0">
          <tr id="hdr">
            <td class="runninghead">Apache log4net� SDK Documentation - Microsoft .NET Framework 4.0</td>
            <td class="product">
            </td>
          </tr>
        </table>
      </div>
      <div id="TitleRow">
        <h1 class="dtH1">NativeError Members
					</h1>
      </div>
    </div>
    <div id="nstext">
      <p>
        <a href="log4net.Util.NativeError.html">NativeError overview</a>
      </p>
      <h4 class="dtH4">Public Static (Shared) Methods</h4>
      <div class="tablediv">
        <table class="dtTABLE" cellspacing="0">
<tr VALIGN="top"><td width="50%"><img src="pubmethod.gif"></img><img src="static.gif" /><a href="log4net.Util.NativeError.GetError.html">GetError</a></td><td width="50%"> Create a new instance of the <a href="log4net.Util.NativeError.html">NativeError</a> class. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="pubmethod.gif"></img><img src="static.gif" /><a href="log4net.Util.NativeError.GetErrorMessage.html">GetErrorMessage</a></td><td width="50%"> Retrieves the message corresponding with a Win32 message identifier. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="pubmethod.gif"></img><img src="static.gif" /><a href="log4net.Util.NativeError.GetLastError.html">GetLastError</a></td><td width="50%"> Create a new instance of the <a href="log4net.Util.NativeError.html">NativeError</a> class for the last Windows error. </td></tr></table>
      </div>
      <h4 class="dtH4">Public Instance Properties</h4>
      <div class="tablediv">
        <table class="dtTABLE" cellspacing="0">
<tr VALIGN="top"><td width="50%"><img src="pubproperty.gif"></img><a href="log4net.Util.NativeError.Message.html">Message</a></td><td width="50%"> Gets the message of the native error. </td></tr>
<tr VALIGN="top"><td width="50%"><img src="pubproperty.gif"></img><a href="log4net.Util.NativeError.Number.html">Number</a></td><td width="50%"> Gets the number of the native error. </td></tr></table>
      </div>
      <h4 class="dtH4">Public Instance Methods</h4>
      <div class="tablediv">
        <table class="dtTABLE" cellspacing="0">
<tr VALIGN="top"><td width="50%"><img src="pubmethod.gif"></img><a href="ms-help://MS.NETFrameworkSDKv1.1/cpref/html/frlrfSystemObjectClassEqualsTopic.htm">Equals</a> (inherited from <b>Object</b>)</td><td width="50%">�</td></tr>
<tr VALIGN="top"><td width="50%"><img src="pubmethod.gif"></img><a href="ms-help://MS.NETFrameworkSDKv1.1/cpref/html/frlrfSystemObjectClassGetHashCodeTopic.htm">GetHashCode</a> (inherited from <b>Object</b>)</td><td width="50%">�</td></tr>
<tr VALIGN="top"><td width="50%"><img src="pubmethod.gif"></img><a href="ms-help://MS.NETFrameworkSDKv1.1/cpref/html/frlrfSystemObjectClassGetTypeTopic.htm">GetType</a> (inherited from <b>Object</b>)</td><td width="50%">�</td></tr>
<tr VALIGN="top"><td width="50%"><img src="pubmethod.gif"></img><a href="log4net.Util.NativeError.ToString.html">ToString</a></td><td width="50%"> Return error information string </td></tr></table>
      </div>
      <h4 class="dtH4">See Also</h4>
      <p>
        <a href="log4net.Util.NativeError.html">NativeError Class</a> | <a href="log4net.Util.html">log4net.Util Namespace</a></p>
      <object type="application/x-oleobject" classid="clsid:1e2a7bd0-dab9-11d0-b93a-00c04fc99f9e" viewastext="true" style="display: none;">
        <param name="Keyword" value="NativeError class">
        </param>
        <param name="Keyword" value="log4net.Util.NativeError class">
        </param>
        <param name="Keyword" value="NativeError class, all members">
        </param>
      </object>
      <hr />
      <div id="footer"><a href='http://logging.apache.org/log4net/'>Copyright 2004-2013 The Apache Software Foundation.</a><br></br>Apache log4net, Apache and log4net are trademarks of The Apache Software Foundation.</div>
    </div>
  </body>
</html>
