从Visual Studio内部运行c#项目并观察调试输出时,可以看到何时加载了每个程序集。 (右键单击调试输出窗口,选中“show module load messages”)
从StackOverflow上的截图和其他问题我知道每个程序集都应该有一条消息,其中包含该程序集的名称。
但是在我的电脑上大部分时间我得到的都是无名的加载消息。这个名字不见了。
如何让名称显示在输出窗口中? 在极少数情况下,它似乎有效,但我无法重现这些情况。
以下是我在调试输出窗口中可以看到的三种类型的程序集加载消息(抱歉,德语)
"MyProgram.vshost.exe" (Verwaltet): "Verwaltet" wurde geladen, das Laden von Symbolen wurde übersprungen. Das Modul ist optimiert, und die Debugoption "Nur eigenen Code" ist aktiviert.
"MyProgram.vshost.exe" (Verwaltet): "Verwaltet" geladen, Symbole geladen.
"MyProgram.vshost.exe" (Verwaltet): "Verwaltet" wurde geladen
这是一个粗略的英文翻译
'MyProgram.vshost.exe' (Managed): Loaded 'Managed'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
'MyProgram.vshost.exe' (Managed): Loaded 'Managed', loaded symbols.
'MyProgram.vshost.exe' (Managed): Loaded 'Managed'
这是我期望的输出:
'Example.vshost.exe' (Managed): Loaded 'C:\WINDOWS\assembly\GAC_MSIL\IdeaBlade.UI.WinForms.DevExpressControls.v2_2_0\3.6.7.1__287b5094865421c0\IdeaBlade.UI.WinForms.DevExpressControls.v2_2_0.dll'
'Example.vshost.exe' (Managed): Loaded 'C:\Windows\Microsoft.Net\assembly\GAC_32\mscorlib\v4.0_4.0.0.0__b77a5c561934e089\mscorlib.dll', Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
'Example.vshost.exe' (Managed): Loaded 'C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\QTAgent32.exe', Symbols loaded.
'Example.vshost.exe' (Managed): Loaded 'C:\WINDOWS\assembly\GAC_32\mscorlib\2.0.0.0__b77a5c561934e089\mscorlib.dll', Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
'Example.vshost.exe' (Managed): Loaded 'C:\Windows\assembly\GAC_MSIL\Microsoft.VisualStudio.QualityTools.ExecutionCommon\10.0.0.0__b03f5f7f11d50a3a\Microsoft.VisualStudio.QualityTools.ExecutionCommon.dll', Symbols loaded.
上面日志中程序集的路径和名称是我的电脑上缺少的。
(Visual Studio 2008专业版)
答案 0 :(得分:1)
是否可以检查'模块加载消息'是否已启用
您可以在以下位置找到它: 工具 - >选项 - >调试 - >输出窗口 - >一般输出设置 - >模块加载消息
工具 - >选项 - >调试 - >一般 - >启用我的代码(仅管理)