VB高手进,如何获得当前的一些信息。

来源:百度知道 编辑:UC知道 时间:2024/06/19 05:41:24
比如获得当前工程名:app.title.我想做一个错误处理程序,我想问怎么获得当前的的过程名,发生错误的行数,调用本过程的父过程名,当前所有有效的变量名.
解决问题再追加100分.
======================================================
其实关键是怎么获得错误行数,和所有变量.(比如类似于for each obj in form1)
每个过程都写错误处理程序太麻烦,我想写成一个函数,每个过程都来Call就行了.

具体查看error这个函数的参数有那些,我现在只用到错误号和错误内容2个参数。
在每个过程前都要加on error goto L1
L1:
msgbox ,,,,
其实消息框就相当于你说的函数,在消息框的参数里面显示error的内容就行了啊。

你想要的效果那是Windows系统的错误处理机制,所以才有那些过程名,变量名,系统环境信息之类的东西。当然你自己也可以编写,那要设计到汇编方面的东西了,比如读取当前内存地址和程序起始地址的偏移量来得到行数。读取各个寄存器的内容来得到变量值,恐怕对你来说比较麻烦吧。

你试试这个。
===============
Sub hErr()
MsgBox "错误代码:" & Err.Number & vbCrLf & "错误描述:" & Err.Description & vbCrLf & "错误对象:" & Err.Source
End Sub
Private Sub Form_Load()
On Error GoTo hErr
i = 0 / 0
Exit Sub
hErr:
hErr
End Sub

大哥……当前过程名是干嘛 ?你每个过程写个错误处理程序不就行了?
错误的行数?那是未编译的时候的啊?编译了哪有行数啊?