既定では、ターゲット モジュールが読み込まれると、シンボル情報は実際には読み込まれません。 代わりに、シンボルは必要に応じてデバッガーによって読み込まれます。 これは、遅延シンボル読み込みまたはラジーシンボル読み込みと呼ばれます。 このオプションを有効にすると、認識できないシンボルが検出されるたびにデバッガーによってシンボルが読み込まれます。
. sympath (シンボル パスの設定) コマンドを使用するなどしてシンボル パスを変更すると、エクスポート シンボルを含むすべての読み込まれたモジュールが遅延読み込みされます。 完全な PDB シンボルを持つモジュールのシンボルは、新しいパスに PDB シンボルの読み込みに使用された元のパスが含まれなくなった場合、遅延読み込みされます。 新しいパスに PDB シンボル ファイルへの元のパスが含まれている場合、それらのシンボルは遅延読み込みされません。
遅延シンボルの読み込みを無効にすると、モジュールが読み込まれるたびにすべてのシンボルが読み取られるので、プロセスの起動が大幅に遅くなる可能性があります。
WinDbg では、[デバッグ] メニューの [修飾されていないシンボルの解決] オプションを使用して、モジュール プレフィックスのないシンボルの遅延シンボルの読み込み動作を変更できます。
遅延シンボルの読み込みをオーバーライドするには、 ld (シンボルの読み込み) コマンドまたは .reload (モジュールの再読み込み) コマンドと /f オプションを使用します。 これにより、指定したシンボルが直ちに読み込まれますが、他のシンボルの読み込みは遅延されます。
既定では、遅延シンボルの読み込みが有効になっています。 CDB と KD では、 -sコマンド ライン オプション によってこのオプションがオフになります。 CDB では、tools.ini ファイルの LazyLoad 変数を使用してオフにすることもできます。 デバッガーが実行されたら、.symopt+0x4 または .symopt-0x4 を使用して、このオプションをオンまたはオフにすることができます。