控制CLR的调试
在调试.NET程序时,调试器可以加载一个辅助DLL,称为mscordacwks.dll,这个DLL用于输出托管代码调试过程中的各种信息(例 如SOS命令的输出)。加载mscordacwks.dll的路径取决于被加载到进程中的mscorwks.dll的路径。在实时调试(live debugging)中通常不存在问题,因为我们希望加载与已加载的mscorwks.dll相对应的mscordacwks.dll版本,但在事后调试 (postmortem debugging)中则可能出现版本不匹配的情况。要想控制调试行为,我们可以使用元命令cordll,并告诉调试器加载 mscordacwks.dll的确切位置。例如,如果要指定一个新路径,那么可以使用以下命令:
![]() |
这样便能告诉调试器从文件夹c:\\x\\y\\z下加载mscordacwks.dll。如果要卸载mscordacwks.dll,可以使用-u开关。
在第8章中,我们将看到这个命令在调试崩溃转储(crash dump)时带来的潜在危险。