VS2010:无法观察变量?

时间:2011-08-14 05:12:55

标签: visual-studio-2010 visual-studio-debugging watch

我使用VS2010作为我的vb.net编译器,但有时我在调试时无法看到局部变量。

实际上,当我将我的局部变量添加到观察窗口时,它会说:

'sm' is not declared. It may be inaccessible due to its protection level.

'sm'是我的局部变量,并在我的例程中声明了。

以下是我的一些简单代码段:

Public Sub Calculate()
    Dim sm As String        
    Dim c(2) As Byte
    c(0) = 49
    c(1) = 85
    c(2) = 121
    sm = Encrypt_Str(c)
    '...
    '...
End Sub

好吧,我不能在sm = Encrypt_Str(c)行之后看'sm'。是什么导致这个?

4 个答案:

答案 0 :(得分:1)

对我来说有用的是进入项目属性,选择“调试”选项卡,然后勾选“启用Visual Studio托管过程”框。

答案 1 :(得分:0)

如果您使用的是

For Dim i as Intenger To something
  //Do something
Next i

something() //You are debuging here

该变量不会出现在Watch上,因为它只存在于该代码块中。 但这只是猜测。如果你发布一些代码我可能会更好

答案 2 :(得分:0)

我看不到任何控件/变量.. 清理和重建,但这也没有帮助,我在配置管理器中创建了一个新配置并复制了我的调试设置等等我的手表再次像钟表一样工作;)

此致

麦克

答案 3 :(得分:0)

我最近在Visual Studio 2013中遇到了完全相同的问题。我正在课堂后面的ASP.NET代码中调试VB.NET代码。我可以突破点,跳过并进入语句,但是尝试查看/观察变量会导致错误:

'myvar' is not declared. It may be inaccessible due to its protection level.

对我有用的是:

  1. 清理整个解决方案 - 因此,右键单击解决方案资源管理器窗口中的解决方案,然后选择Clean Solution。
  2. 重建解决方案。
  3. 以调试模式运行 - 现在可以查看/观看变量。
  4. 快乐的编码。