Visual Basic 2005新功能点评——异常助手

原创 2004年07月29日 16:10:00

在使用Visual Basic .NET开发的过程中,我们都有以下经验,那就是VB.NET在编译错误方面给出的帮助很详细,可以很方便地找到解决问题的方法,但运行时错误就差多了,比如我们书写了下面的代码:

Dim b As Button
b.Text = "Hello"

当代码运行到此处时,只会弹出下面这样一个窗体:

o_ExAss1.JPG

一句“未将对象引用设置到对象实例”难倒了多少人。对于初学者,他们根本不知道这意味着什么,更不要提解决问题了。不要指望那个“帮助”按钮有什么帮助,他只是解释一下什么叫异常窗口,声么叫“中断”等等毫无关系的内容。这样的异常窗口对开发着的帮助实在非常有限,他甚至不能链接到关于异常类的文档。这样的异常窗口甚至不如VB6提供的信息多,这导致更多VB6程序员在升级到VB.NET时遇到阻碍。Visual Basic 2005以及在Visual Studio 2005中的C#和J#语言新增了异常助手功能,很大程度上解决了这个问题。如果我们在VB2005中输入上述代码,运行时将得到如下一个窗口:

o_ExAss2.JPG

这就是异常助手,他分为三个部分:首先像VB.NET一样提供了异常对象所附带的信息,再有就是两个新的部分:Troubleshooting Tips和Actions。Troubleshooting Tips是关于异常的帮助,不仅仅是异常类的文档,还有特定语言如何解决问题的指南。比如NullReferenceException就提供了一篇Troubleshooting NullReferenceException Exceptions ,其内容摘录如下:

Use the New keyword to create the instance. You may have tried to use an object without providing an instance of the object. For example, Dim CustomerTable As DataTable should be rewritten as Dim CustomerTable As New DataTable.

Include a code block that checks for null references. Programmatically check to determine if a function has returned null (Nothingin Visual Basic) instead of an instance of an object.

Explicitly catch NullReferenceException in a Try…Catch…Finally statement. A Try…Catch…Finally statement can check for specific types of exceptions, going from most specific to least specific.

比起VB.NET毫无帮助的信息,这条信息已经人性化多了,最起码它能建议进行空引用的检查、使用New关键字和使用Try语句等常用的手段。

异常助手对于开发者的帮助是很大的,比如安全性导致的异常通常都十分棘手,因为许多不同的代码都可以导致同一条安全性异常,这样即使查阅异常相关的文档也难以发现问题所在。而异常助手给出了非常详细的帮助,在Troubleshooting提示部分给出了大量链接:

o_ExAss3.JPG

Action部分是可以自动执行的任务,目前的版本,Action主要的功能是启动异常细节窗口,这比使用狭窄的“本地”窗口来查看异常对象的信息要舒适多了。异常助手给开发者带来了巨大的方便,用好这项功能,能使开发效率进一步的提升。异常助手如果结合“编辑后继续运行”来使用,将焕发难以置信的效率。

Visual Basic快捷教程——流程控制

在顺序执行的过程中,有时希望计算机根据条件判断来选择性地执行(或者不执行)一些代码,这时就需要用到选择结构(或称分支结构)。另外一些时候,希望计算机能够(有条件地)重复地执行某一段代码,这时就需要用到...
  • baimafujinji
  • baimafujinji
  • 2017年04月04日 15:14
  • 3106

怎样解决无法初始化Visual Basic环境的问题

经常使用word软件,难免是遇到这样那样的问题,今天笔者在录制新宏时出现错误提示“无法初始化Visual Basic环境”,对于此问题我们该如何来解决。 工具/原料 ...
  • kyfvc
  • kyfvc
  • 2013年10月30日 09:57
  • 1538

Visual Basic快捷教程——函数与子程序

函数是结构化程序设计的基础。函数的本质就是为了把程序切分成若干个相对独立的模块各司其职,而各个函数的作用也就是仅仅专门负责自己份内的那份功能。在Visual Basic中,函数是一组以Function...
  • baimafujinji
  • baimafujinji
  • 2017年04月19日 22:30
  • 2909

【Visual Basic】计时器与窗体屏幕尺寸的取法

主要是利用一个小例子讲解VB中计时器Timer的运用。 如下图所示: 有一个显示当前时间,在屏幕的边缘不停地移动。 首先是窗体设置,直接从工具箱拖入Label与Timer控件。Timer...
  • yongh701
  • yongh701
  • 2015年08月06日 09:30
  • 1313

数据库——SQL server2008安装与visual basic连接

这是自己当时初始CSDN上写的第一篇博客,其中当时的心情依然记忆尤新,总之美美的。...
  • u013030601
  • u013030601
  • 2014年06月29日 11:32
  • 1492

c++学习笔记(1)——环境搭建、经典教程推荐及 Visual Studio 2005/2008中如何编译和运行C++程序

之前一直用C编程可是对C++并不了解,决定学习C++,今天是入门第一天:搭建了编译环境和写了第一个helloworld的程序 (1)使用的软件:Visual Studio 2008(中文版)。    ...
  • zhenzhen90
  • zhenzhen90
  • 2013年08月16日 17:21
  • 1433

Visual Basic快速入门

Basic语言的全名是Beginner’s All-purpose Symbolic Instruction Code(初学者通用的符号指令代码),是几十年前流行过的一门语言。我高中时候一门数学选修课...
  • u011054333
  • u011054333
  • 2018年01月05日 18:26
  • 55

Visual Basic快捷教程——异常处理机制

所谓“异常(Exception)”是指程序运行时所发生的不正常的情况。为了避免程序在运行时发生不正常的错误情况,就需要利用某种机制来捕捉到这些问题,并及时应对随之而来的麻烦,从而避免程序陷入无法继续执...
  • baimafujinji
  • baimafujinji
  • 2016年01月23日 19:12
  • 6274

常见语言的优缺点

汇编语言:         汇编是第一个计算机语言。汇编语言实际上是你计算机处理器实际运行的指令的命令形式表示法。这意味着你将与处理器的底层打交道,比如寄存器和堆栈。如果你要找的是类英语且有相关的自...
  • u013679128
  • u013679128
  • 2014年03月10日 19:25
  • 1621

Visual Basic快捷教程——变量、常量和运算符

程序中数据最基本的存储单位就是变量,程序执行时会在计算机内存中开辟空间存储变量。而计算机程序的执行基本就是通过读取或操作这些变量来实现的。此外,在某些时候,虽然声明了一个变量,但却不希望这个变量的数值...
  • baimafujinji
  • baimafujinji
  • 2017年07月25日 17:08
  • 1050
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Visual Basic 2005新功能点评——异常助手
举报原因:
原因补充:

(最多只允许输入30个字)