1)可以查看进程的各项基本信息,如cpu,内存,父进程,执行路径,创建者等
2)可以中止进程,创建新进程
3)可以配置目标进程,配置刷新速度
最终效果图:
(以下给出部分代码,其余像进程的创建、中止等,使用process类将很容易实现)
1)使用wmi获取父进程id,进程创建者
(注意,使用wmi获得的内容,不宜循环刷新,这样代价比较大)
添加命名空间:
Imports System.Management
Public Class HandleObjectReady
Private complete As Boolean = false
Private obj As ManagementBaseObject
Public ReadOnly Property Complete As Boolean
Get
Return complete
End Get
End Property
Public ReadOnly Property Obj As ManagementBaseObject
Get
Return obj
End Get
End Property
Public Sub Done(ByVal sender As Object, ByVal e As ObjectReadyEventArgs)
complete = true
obj = e.NewObject
End Sub
End Class
Private Sub FillDetailUseWmi(ByVal pID As Integer)
Dim searcher As ManagementObjectSearcher = New ManagementObjectSearcher(("Select * From Win32_Process Where ProcessID=" + pID))
Dim moc As ManagementObjectCollection = searcher.Get
Dim observer As ManagementOperationObserver = New ManagementOperationObserver
Dim hor As HandleObjectReady = New HandleObjectReady
AddHandler observer.ObjectReady, AddressOf hor.Done
For Each mo As ManagementObject In moc
mo.InvokeMethod(observer, "GetOwner", Nothing)
While Not hor.Complete
System.Threading.Thread.Sleep(500)
End While
Dim user As String = ""
(hor.Obj("returnValue")。ToString = "0")
user = hor.Obj.Properties("User")。Value.ToString
If Not Me.mDict.ContainsKey(pID) Then Return
End If
If ((Not (mo("ParentProcessID")) Is Nothing) _
AndAlso Me.mDict.ContainsKey(Convert.ToInt32(mo("ParentProcessID")))) Then
Me.mDict(pID)。ParentProce = Me.mDict(Convert.ToInt32(mo("ParentProcessID")))。ProceName
End If
Me.mDict(pID)。Creator = user
If (Not (Me.HandleDetailList) Is Nothing) Then
Me.HandleDetailList(Me.mDict(pID))
End If
Next
searcher.Dispose
searcher = Nothing
moc.Dispose
moc = Nothing
observer = Nothing
hor = Nothing
End Sub
来自:http://www.qqread.com/vbdotnet/i390243.html相关专题
- .NET移动与嵌入式技术 (5963篇文章)
- .NET开发手册 (5664篇文章)
- .NET实用开发 (1683篇文章)
- 用vb.net实现闹钟提醒程序 (9次浏览)
- vb.net GDI+入门——画笔、画刷和颜色 (3次浏览)
- VB.Net实现进程监视器的方法 (1次浏览)
- VB2005中开发新一代控制台应用程序(3) (0次浏览)
- vb.net使用ListView 控件显示系统驱动器 (0次浏览)
- vb.net入门——ListView 控件的使用 (0次浏览)
- vb.net GDI+入门——使用Graphics对象填充图形 (0次浏览)
- .Net中ListView控件多选时复选框自动选择问题 (0次浏览)
- vb.net GDI+入门——使用Graphics对象绘制线图 (0次浏览)
- vb.net GDI+入门——了解Font类 (0次浏览)



