VBGood网站全文搜索 Google

搜索VBGood全站网页(全文搜索)
首页 - 经验之谈 - 在运行过程中获取信息
发表评论(0)作者:不详, 平台:VB6.0+Win98, 阅读:8520, 日期:2003-08-29
    Visual Basic .NET中的System.Diagnostics命名空间提供了很容易地返回程序信息的对象。你可以查看组成程序的过程,线程,以及模块,并可以查看每一模块的内存使用信息。


下面的范例演示了以树状控件显示过程信息。首先,建立一个新的Windows窗体工程,并在窗体中添加一树状控件,将以下的代码加入到窗体事件中。

Private Function GetProcessModules()
    Dim objProcess As Diagnostics.Process
    Dim objModule As Diagnostics.ProcessModule
    Dim objProcessNode As New TreeNode()

    objProcess = Diagnostics.Process.GetCurrentProcess

    objProcessNode.Text = objProcess.ProcessName

    TreeView1.Nodes.Add(objProcessNode)

    For Each objModule In objProcess.Modules
        objProcessNode.Nodes.Add(objModule.ModuleName & ":" & _
                           objModule.ModuleMemorySize.ToString())
    Next
End Function

首先,这一模块返回当前的过程。在树状控件的根部显示了每一过程。然后,显示了过程的模块。对于每一模块,在树状控件中显示了每一模块的名称和内存大小。

最后,在Form1_Load中添加了以下的调用函数。

Private Sub Form1_Load(ByVal sender As System.Object, _
                       ByVal e As System.EventArgs) Handles MyBase.Load
    GetProcessModules()
End Sub

当运行这一工程时,树状控件即可显示程序的所有过程和与程序有关的所有模块。

Diagnostics非常有用,尤其在获取程序运行时候的信息。