Visual StudioデバッガのウォッチでGetLastError関数の戻り値を常時監視する

Visual Studioのデバッガの機能でウォッチというものがあります。
ウォッチはデバッグ中に指定した変数を常時監視するために用いられる機能です。
この機能を用いて、GetLastError関数の戻り値を常時監視することができます。

その方法は、ウォッチに「@err」を指定することです。


以下の例は、CloseHandle関数の引数にNULLを指定して、エラーを引き起こすコードです。これをステップ実行します。

#include "stdafx.h"

#include <windows.h>

int main()
{
    CloseHandle(NULL);
    return 0;
}


  • 1.まず、main関数の開始する。ここで「@err」をウォッチに登録する


  • 2.CloseHandle(NULL)を実行すると、@errの値が「6」になる。これがGetLastErrorの戻り値で、「6」はERROR_INVALID_HANDLEと定義されており、意味は「ハンドルが無効です。」である。