手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>网络编程>Asp.Net编程>列表

VB.NET实现Windows进程管理器

来源:互联网 作者:西部数码 时间:2008-04-09
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!

End Sub
  至此【VB.NET打造Windows进程管理器】项目的界面设计和功能实现的准备工作就完成了,具体如图02所示:


图02:【VB.NET打造Windows进程管理器】项目的设计界面

15d
9. 用下列代码替换Form1.vb中的Button1的Click事件对应的处理代码,下列代码功能是中止在ListView1组件选定的进程:

Private Sub Button1_Click ( ByVal sender As System.Object , ByVal e As System.EventArgs ) Handles Button1.Click
Dim lvcItem As ListView.SelectedListViewItemCollection = New ListView.SelectedListViewItemCollection ( ListView1 )
Dim sTemp As String = lvcItem ( 0 ) .SubItems ( 1 ) .Text
Dim iTemp As Integer = Int32.Parse ( sTemp )
'根据ID号,得到要杀死的进程
Dim pProcessTemp As System.Diagnostics.Process = Process.GetProcessById ( iTemp )
Dim drTemp As DialogResult = MessageBox.Show ( "是否结束进程?" pProcessTemp.ProcessName , "VB.NET打造Windows进程管理器!" , MessageBoxButtons.YesNo , MessageBoxIcon.Question )
Dim iDrTemp As Integer = Int32.Parse ( drTemp )
If iDrTemp = 6 Then
' 按动确定按钮
'杀死此进程
pProcessTemp.Kill ( )
pProcessTemp.Close ( )
End If
End Sub
  10. 在Form1.vb中的Button1的Click事件之后添加下列代码,下列代码是定义Form1的Load事件,在此事件中将获取计算机中的运行进程和与之相关的数据:

Private Sub Form1_Load ( ByVal sender As System.Object , ByVal e As System.EventArgs ) Handles MyBase.Load
ListView1.Items.Clear ( )
'创建一个Process类型的数组
Dim pTemp As System.Diagnostics.Process ( )
'通过此语句返回的是进程数组,这些进程数组存放的是当前运行存在地进程资源
pTemp = System.Diagnostics.Process.GetProcesses ( )
'得到当前运行进程数目
StatusBarPanel1.Text = "进程数:" pTemp.Length.ToString ( )
'获取计算机中每一个进程的信息,并显示出来
Dim pTempProcess As System.Diagnostics.Process
For Each pTempProcess In pTemp
'得到进程的名称
Dim sProcessNeme As String = pTempProcess.ProcessName
'得到进程的ID号
Dim sProcessID As String = pTempProcess.Id.ToString ( )
'得到进程的开始运行时间
Dim sStartTime As String = pTempProcess.StartTime.ToString ( )
'得到进程运行所需要的内存大小
Dim sMemroyUse As String = pTempProcess.PrivateMemorySize.ToString ( )
'显示获取的信息
Dim lvtTemp As ListViewItem = New ListViewItem ( New String ( ) {sProcessNeme , sProcessID , sStartTime , sMemroyUse} , -1 )
ListView1.Items.Add ( lvtTemp )
Next
End Sub
  11. 在Form1.vb中的Form1的Load事件代码之后添加下列代码,下列的代码是定义快捷菜单的事件,通过此事件来中止在ListView1组件中选定的进程:

Private Sub MenuItem1_Click ( ByVal sender As System.Object , ByVal e As System.EventArgs ) Handles MenuItem1.Click
Dim lvcItem As ListView.SelectedListViewItemCollection = New ListView.SelectedListViewItemCollection ( ListView1 )
Dim sTemp As String = lvcItem ( 0 ) .SubItems ( 1 ) .Text
Dim iTemp As Integer = Int32.Parse ( sTemp )
'根据ID号,得到要杀死的进程
Dim pProcessTemp As System.Diagnostics.Process = Process.GetProcessById ( iTemp )
Dim drTemp As DialogResult = MessageBox.Show ( "是否结束进程?" pProcessTemp.ProcessName , "VB.NET打造Windows进程管理器!" , MessageBoxButtons.YesNo , MessageBoxIcon.Question )
Dim iDrTemp As Integer = Int32.Parse ( drTemp )
If iDrTemp = 6 Then
' 按动确定按钮
'杀死此进程
pProcessTemp.Kill ( )
pProcessTemp.Close ( )
End If
End Sub
  12. 至此在上述步骤都正确完成后,【VB.NET打造Windows进程管理器】项目的全部工作就基本完成了。此时单击快捷键F5运行程序,就可以得到和Windows进程管理器界面类似、功能相似的一个管理进程的应用程序,程序运行后即获取计算机的运行进程数目和进程的名称、ID号、运行时间和占有内存状况,并通过ListView组件显示这些数据。使用者在进程显示区域选定进程后,通过程序中的【结束进程】按钮或单击鼠标右键,选定弹出的快捷菜单来中止选定的进程。图03是【VB.NET打造Windows进程管理器】项目的运行界面:


图03:【VB.NET打造Windows进程管理器】项目的运行界面

  四.总结:

  通过上面的介绍,我们不仅获得了一个比较实用的应用程序,更重要的是还掌握在Visual Basic.Net中使用Process类解决实际问题的方法。Process类的成员比较多,但使用方法比较简单,我想通过上面的介绍对您掌握它,并灵活运用它是有所帮助的。

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!