Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 通过调试器监视整个程序_C#_Debugging_Visual Studio 2015 - Fatal编程技术网

C# 通过调试器监视整个程序

C# 通过调试器监视整个程序,c#,debugging,visual-studio-2015,C#,Debugging,Visual Studio 2015,我想检查程序中的每个对象(至少有一个引用),并且我想在程序执行暂停时(例如,通过断点)进行检查 如果我将变量(对象)添加到Parallel Watch的Watch中,它不允许我检查它,除非程序的任何部分都在与变量相同的范围内执行 如何全局检查给定范围内的变量(对象) 如何跟踪一个变量从程序开始(或从它第一次定义时)到执行结束的过程 在我正在处理的项目中,每个对象都有一个直接或间接的引用,来自最上面的对象,一个表单。如果我可以随时检查它,我就可以访问程序中的任何其他对象 我该怎么做?必须有一个(简

我想检查程序中的每个对象(至少有一个引用),并且我想在程序执行暂停时(例如,通过断点)进行检查

如果我将变量(对象)添加到Parallel Watch的Watch中,它不允许我检查它,除非程序的任何部分都在与变量相同的范围内执行

如何全局检查给定范围内的变量(对象)

如何跟踪一个变量从程序开始(或从它第一次定义时)到执行结束的过程

在我正在处理的项目中,每个对象都有一个直接或间接的引用,来自最上面的对象,一个表单。如果我可以随时检查它,我就可以访问程序中的任何其他对象

我该怎么做?必须有一个(简单的)方法,不让程序员在任何时候(当执行暂停时)分析整个程序似乎是一个巨大的疏忽


[很抱歉把问题翻了一番,我删除了旧的问题,希望这个问题更清楚。]

有一个名为
Locals
的窗口,您可以访问该窗口,其中包含程序中当前实例化的所有属性。
您可以在调试时通过菜单“调试->窗口->局部变量”打开它。

当变量在范围内时,在“监视/局部变量”窗口中右键单击要跟踪的变量,然后选择“生成对象ID”。然后,即使在不同的范围内,也可以看到变量引用的对象的值。有关更多信息,请参阅。

您是否有更具体的要检查的对象示例?听起来你想检查目前不在范围内的东西,这没有什么意义。(例如,函数中当前未执行的变量。)我有一些wierd问题,它与某种引用问题有关。我有一个被一堆其他对象引用的对象(或者至少应该是这样)。与其分析可能需要几个小时(以及我已经做过但失败的事情)的代码,不如简单地运行程序,列出我感兴趣的所有变量,看看哪一个是问题所在,如果这是问题的话。我感到非常惊讶的是,这不是一个只需点击一个按钮就可以做到的事情,它似乎是一个相当强大的,在某些情况下是必不可少的去bug选项。
“列出所有我感兴趣的变量”
——IDE如何知道哪些变量符合这些标准?我一点也不奇怪这个功能不存在。好吧,它会列出所有变量,然后我会看看我想要的。本地人不会跟踪超出范围的变量,这是他想要的。在这种情况下,我认为唯一的方法是启用地址级调试和直接跟踪内存,但这不是很容易做到的。此外,您可以创建对象ID,但这只适用于声明的变量,并且您必须自己创建每个ID。我不相信没有简单的方法可以在整个程序中跟踪单个变量,或者至少从变量初始化开始跟踪单个变量。您可以创建单个变量,这里:它教你如何制作我上面提到的对象ID。好的,请你看看。有一个简单的方法。非常感谢,你帮了我很大的忙