ADSI の Win32 エラー コード
標準の Win32 エラー コードは、ADSI エラー メッセージを返すためにも使用されます。 具体的には、ADSI LDAP プロバイダーは、すべての LDAP エラー コードを Win32 エラー コードにマップします。 これらのエラー コードの HRESULT 値は 0x8007XXXX 形式です。最後の 4 桁の 16 進数 XXXX は、適切な Win32 エラー コードの DWORD 値に対応します。 たとえば、ADSI エラー値0x80072020では、win32 エラー値が 16 進数で0x2020、10 進数で 8224 になります。
アプリケーションによって返される ADSI エラー コードの HRESULT 値を、上記のヘッダー ファイルで定義されている、対応する Win32 エラー DWORD 値に変換するには、次の手順を使用します。
ADSI の Win32 エラー コードのほとんどは、Winerror.h または Lmerr.h で定義されています。 エラー値は、これらのファイルに 10 進値として表示されます。
ADSI エラー コードの HRESULT 値を、対応する Win32 エラー DWORD 値に変換するには
- Visual Basic アプリケーションから取得できるように、10 進値で始まる場合は、HRESULT 値を 16 進数に変換します。
- 0x8007部分を取り除いて残りを生成します。
- 剰余を 10 進数に変換します。
- Winerror.h で 10 進剰余を検索します。
- Winerror.h で見つからない場合は、10 進剰余から 2100 を減算し、結果を Lmerr.h で検索します。
ADSI 2.0 は、WINDOWS 2000 および DS クライアント用の ADSI で使用されるエラー コードとは異なる一連の Win32 エラー コードに LDAP エラー コードをマップします。 相違点は次のとおりです。