PDA

View Full Version : pid برنامم چی هست



farb0d
سه شنبه 19 آذر 1387, 21:28 عصر
سلام
چه طور میتونم process ID برنامه ام که الان در حال اجراست پیدا کنم؟

vcldeveloper
دوشنبه 02 دی 1387, 20:38 عصر
CreateToolhelp32SnapShot را در این سایت، و در MSDN جستجو کنید.

farb0d
دوشنبه 02 دی 1387, 21:21 عصر
اگر میشه بیشتر راهنمایی کنید

vcldeveloper
دوشنبه 02 دی 1387, 21:27 عصر
اگر میشه بیشتر راهنمایی کنید
قبلا یکی دو بار در تالار دلفی، و در همین تالار راهنمایی شده.

farb0d
سه شنبه 03 دی 1387, 18:39 عصر
من جستوجو میکنم اما چیزی پیدا نمیکنه

vcldeveloper
چهارشنبه 04 دی 1387, 16:21 عصر
با استفاده از CreateToolhelp32SnapShot و پارامتر TH32CS_SNAPPROCESS لیست Processهای در حال اجرا را ایجاد می کنید.
با استفاده ازProcess32First و Process32Next روی این لیست حرکت می کنید.
با استفاده از ساختار داده PROCESSENTRY32 که دو تابع بالا بر می گردانند، مشخصات هر یک از Processها (از جمله PID) را استخراج می کنید.

اینها همه در MSDN توضیح داده شده. اگر همون کلید واژه CreateToolhelp32SnapShot را در MSDN یا بطور کلی، اینترنت جستجوی می کردید، تا حالا انواع و اقسام مقالات و نمونه سورس کدها را مطالعه کرده بودید.

.:KeihanCPU:.
چهارشنبه 04 دی 1387, 17:36 عصر
سلام
با این کدها میشه پروسه رو بدست آورد ولی pid رو نمیدونم.احتمال میدم که با کمی دستکاری راه حل پیدا بشه.




Dim objWMIService As Object
Dim colProcesses As Object
Dim objProcess As Object
Dim Temp As String

On Error Resume Next
Set objWMIService = GetObject("winmgmts:")
Set colProcesses = objWMIService.ExecQuery("Select * from Win32_Process")
For Each objProcess In colProcesses
Temp = "Process Name : (" & objProcess.Caption & ")" & " Process Path : (" & objProcess.executablepath & ")"
List1.AddItem Temp, 0
Next