0

我已阅读MSDN 页面,了解如何抑制消息。我无法抑制 VS2008 的警告。

我已尝试列出以下说明:

  1. 在错误列表中,选择要抑制的警告或警告。可以同时选择多个警告。

  2. 右键单击警告,指向 Suppress Message(s),然后单击 In Source 或 In Project Suppression File。

  3. 特定警告被抑制,警告显示在错误列表窗口中并带有删除线。

但是,当我右键单击“错误列表”时,我只会得到以下选项:

  • 排序方式
  • 显示列
  • 显示错误帮助
  • 复制
  • 以前的错误
  • 下一个错误

为什么 Visual Studios 2008 for VB.net 不显示“抑制消息”

我无法生成以下抑制消息:

<Scope:SuppressMessage("Rule Category", "Rule Id", "Justification", "MessageId", Scope = "Scope", Target = "Target")>

问题是我有一系列依赖于复选框的并行任务。我希望每个任务同时运行,然后再加入。我通过使用递减的回调方法克服了警告,直到所有回调完成。

即(从记忆中):

chkbox1.enable = false
chkbox2.enable = false
dim dlgChkbox1 as Action = addressof Task1
dim dlgChkbox2 as Action = addressof Task2
...
if chkbox1.checked = true then
   result = dlgChkbox1.BeginInvoke(nothing,nothing)
end if
if chkbox2.checked = true then
   result = dlgChkbox2.BeginInvoke(nothing,nothing)
end if
...
if chkbox1.checked = true then
    dlgChkbox1.EndInvoke()
end if
if chkbox1.checked = true then
    dlgChkbox2.EndInvoke()
end if
...
chkBox1.enable = true
chkBox2.enable = true

警告是未初始化的变量。情况并非如此,因为它依赖于相同的 if 语句。我选择使用回调方法,结果证明这是一个更好的选择,并且没有锁定 GUI。

4

1 回答 1

1

错误的 MSDN 页面。那个人谈到了抑制代码分析工具产生的警告。与 VB.NET 编译器非常不同的动物。

要禁止编译器警告,请使用项目 + 属性、编译选项卡、警告配置部分。找到您要禁用的特定警告消息,将通知设置从“警告”更改为“无”。“禁用所有警告”复选框是大锤解决方案。

于 2010-07-28T15:05:17.830 回答