PDA

View Full Version : ตรวจสอบProcess running ด้วย VB - ยังไม่เสร็จน่ะครับ ช่วยทีเหลืออีกนิด



akenan2007_old
22-11-2008, 06:51 PM
ตรวจสอบProcess running ด้วย VB - ยังไม่เสร็จน่ะครับ ช่วยทีเหลืออีกนิด</span>


อยากเขียนโปรเจกต์เล็กๆ แต่ยังติดอยู่นิดหน่อยครับ

ความต้องการคือ จะทำการตรวจสอบ ในProcessว่ามี่ไฟล์ hack3r.exe รันอยู่ใหม
-ถ้าไม่มีProcessชื่อhack3r.exe รันอยู่ ให้start ไฟล์ hack3r.exe โดยใช้คำสั่ง
<span style="color:#33CC00">Shell("C:\Program Files\hack3r.exe", AppWinStyle.MinimizedFocus)
-ถ้ามีProcessชื่อhack3r.exe รันอยู่ ก็ทำการวนลูป รอการตรวจสอบการเช็คProcess hack3r.exe ทุก15นาที

ผมใช้VB2008น่ะครับ มันติดตรงที่ ใช้คำสั่งอะไรค้นหาค่าใน (strList) แล้วไปเช็คตามเงื่อนใขที่กำหนดในข้างบนที่กล่าวมา


-------------------------------------------------------------------------

ส่วนโค้ดข้างล่างเป็นการแสดงว่ามีProcessอะไรรันอยู่บ้าง โดยเอาเครื่องหมายคอมเมนท์หน้าMsgBox(strList) ออกน่ะครับ แล้วลองรันดู
[code]

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

tonhor
22-11-2008, 08:51 PM
[hide=10]
[code]

neoclassic
22-11-2008, 10:07 PM
เอา timer ลากวางลงไป enabled ตั้งเป็น true interval ก็ตามต้ืิองการ


Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
Dim objWMIService, objProcess, colProcess
Dim strComputer
Dim strList As String

strComputer = "."
objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
colProcess = objWMIService.ExecQuery("Select * from Win32_Process")

strList = ""
For Each objProcess In colProcess
strList = strList & vbLf & objProcess.Name
Next

Dim i As Integer = strList.IndexOf("hack3r.exe")
If i = -1 Then
Shell("C:\Program Files\hack3r.exe", AppWinStyle.MinimizedFocus)
End If


End Sub[/b]

akenan2007_old
28-11-2008, 12:19 PM
รบกวนอีกแล้วครับ</span>
ผมใช้ vb2008 เขียนได้แล้วครับ แต่ vb2008 เวลา นำไปรันบนwindowsXP จะError ครับ
เพราะxp บางตัวยังเป็น NET Framework เวอร์ชั่นต่ำอยู่ครับ
จึงต้องกลับมาเริ่มใช้vb6อีกครับ ซึ่งต้องเขียนใหม่อีก แต่ผมก็ลองดัดแปลงได้แค่ส่วนหนึ่ง
เป็นการRun แล้วโชว์ msgbox ขึ้นมาว่ามี่โพรเซสอะไรรันอยู่บ้าง
ตอนนี้ยังมึนกับการเขียนเงื่อนไปที่จะไปตรวจสอบ ที่จะไปเช็คตามเงื่อนใขที่กำหนดในข้างบนที่กล่าวมาในโพสแรกครับ
ผมมือใหม่จริงๆ ช่วยชี้แนะทีน่ะครับ
-------------------------------------------------------------------------

นี่คือไฟล์ทีผมทำได้แค่ครึ่งทาง ไม่รู้ว่าจะเขียนได้ถูกหรือป่าวครับ(ดัดแปลงมาครับ)
Download LinkTaskList_Process.rar
http://file.citec.us/download.php?id=8569846E


ความต้องการคือ <span style="color:#33FF33">จะทำการตรวจสอบ ในProcessว่ามี่ไฟล์ hack3r.exe รันอยู่ใหม
-ถ้าไม่มีProcessชื่อhack3r.exe รันอยู่ ให้start ไฟล์ hack3r.exe โดยใช้คำสั่ง
Shell("C:\Program Files\hack3r.exe", AppWinStyle.MinimizedFocus)
-ถ้ามีProcessชื่อhack3r.exe รันอยู่ ก็ทำการวนลูป รอการตรวจสอบการเช็คProcess hack3r.exe ทุก15นาที

akenan2007_old
24-12-2008, 11:31 AM
ผมใช้ vb6 ทำเสร็จแล้วครับ
ทำได้ตามเงื่อนไข ได้ประมาณนี้ครับ

check ProcessRuning and start auto + Source Code
Download
**Hidden Content: Check the thread to see hidden data.**
....
ขอบคุณท่าน neoclassic , ท่านTonHor ที่ให้คำชี้แน่ะน่ะครับ