Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
For Each RunningProcess In Process.GetProcessesByName("ชื่อProcess")
Messageเตือน
Next
End Sub
เอานี้ไปเลย Win.App นะครับ
ส่วน test คือชื่อ Process ไม่ต้อง .exe นะครับ
Code (VB.NET)
Dim chk As String = Process.GetProcessesByName("test").Count.ToString
If CDbl(chk) > 1 Then
MessageBox.Show("", "", MessageBoxButtons.OK, MessageBoxIcon.Error)
Me.Close()
End If
... คือสมมุติ ผมเปลี่ยนชื่อเป็นอย่างอื่น ชื่อ Process มันก็เปลี่ยนอ่ะครับ
คือไฟล์ original ชื่อ test.exe ชื่อ Process ก็เป็น test ผมใส่ไป "test" ก็ใช่ได้
แต่เปลี่ยนเป็น testb.exe ชื่อ process ก็เป็น textb แต่ในนั้น "test" ก็ไม่ได้อ่ะครับ
คือสมมุติ ผมเปลี่ยนชื่อเป็นอย่างอื่น ชื่อ Process มันก็เปลี่ยนอ่ะครับ
คือไฟล์ original ชื่อ test.exe ชื่อ Process ก็เป็น test ผมใส่ไป "test" ก็ใช่ได้
แต่ถ้าไปเปลี่ยนเป็น testb.exe ชื่อ process ก็เป็น textb แต่ในนั้น "test" ก็ไม่ได้อ่ะครับ
Dim chk As String = Process.GetProcessesByName("test").Count.ToString
If CDbl(chk) > 1 Then
MessageBox.Show("", "", MessageBoxButtons.OK, MessageBoxIcon.Error)
Me.Close()
End If
Dim chk_b As String = Process.GetProcessesByName("testb").Count.ToString
If CDbl(chk_b) > 1 Then
MessageBox.Show("", "", MessageBoxButtons.OK, MessageBoxIcon.Error)
Me.Close()
End If
Imports System
Imports System.Diagnostics
Imports System.ComponentModel
Namespace MyProcessSample
_
'/ <summary>
'/ Shell for the sample.
'/ </summary>
Class MyProcess
Sub BindToRunningProcesses()
' Get the current process.
Dim currentProcess As Process = Process.GetCurrentProcess()
' Get all instances of Notepad running on the local
' computer.
Dim localByName As Process() = Process.GetProcessesByName("notepad")
' Get all instances of Notepad running on the specifiec
' computer.
' 1. Using the computer alias (do not precede with "\\").
Dim remoteByName As Process() = Process.GetProcessesByName("notepad", "myComputer")
' 2. Using an IP address to specify the machineName parameter.
Dim ipByName As Process() = Process.GetProcessesByName("notepad", "169.0.0.0")
' Get all processes running on the local computer.
Dim localAll As Process() = Process.GetProcesses()
' Get all processes running on the remote computer.
Dim remoteAll As Process() = Process.GetProcesses("myComputer")
' Get a process on the local computer, using the process id.
Dim localById As Process = Process.GetProcessById(1234)
' Get a process on a remote computer, using the process id.
Dim remoteById As Process = Process.GetProcessById(2345, "myComputer")
End Sub 'BindToRunningProcesses
Shared Sub Main()
Dim myProcess As New MyProcess()
myProcess.BindToRunningProcesses()
End Sub 'Main
End Class 'MyProcess
End Namespace 'MyProcessSample