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 エラー コードをマップします。 相違点を一覧にしています。