SetLastError

呼び出し側スレッドの持つ最新のエラーコードを設定します。

VOID GetLastError(
    DWORD  dwErrCode     // エラーコード
);

KERNEL32.DLL

引数

dwErrCode

設定するエラーコードを指定します。

戻り値

戻り値はありません。

解説

エラーコードは 32 ビット値です (ビット 31 が最上位ビット) 。ビット 29 はアプリケーション定義のエラーコード用に予約されています。アプリケーション独自のエラーコードを定義する場合は、このビットをセットして、システム定義のエラーコードと衝突しないようにしなければなりません。

大部分の Win32 関数は、関数が失敗したときに SetLastError 関数を呼び出します。また、 Win32 関数の中には、関数が成功したときに SetLastError 関数を呼び出すものがあります。

SetLastError 関数によって保存された値は、 GetLastError 関数を使って取得できます。このエラーコードはスレッドローカルストレージ (TLS) に保持されるため、複数のスレッドが互いのエラーコードを上書きすることはありません。

対応情報

Windows 95 以降 / Windows NT 3.1 以降