View Full Version : چجور می شه با یک برنامه از تمام برنامه های در حال اجرا خارج شد ؟
amintiger
یک شنبه 18 اردیبهشت 1390, 20:57 عصر
چجور می شه با یک برنامه از تمام برنامه های در حال اجرا خارج شد ؟
quiet_programmer
یک شنبه 25 اردیبهشت 1390, 12:52 عصر
با سلام
براي اين کار ميتوني با استفاده از WMI ليست پروسسهاي در حال اجرا رو خارج کني بعد اونارو Kill کني.
الان دقيقا کد WMI تو خاطرم نيست خيلي سادست.
ولي براي اين که کارت را بيوفته ميتوني اين کارو انجام بدي.
د ستور زير رو اجرا کني
shell("WMIC /OUTPUT:C:\ProcessList.txt PROCESS get Caption,Commandline,Processid")
يه فايل به اسم ProcessList.txt تو درايو c برات ايجاد ميکنه به شکل زير که اطلاعات تمام پروسس هاي درحال اجرا رو توش نوشته
Caption CommandLine ProcessId
System Idle Process 0
System 4
smss.exe \SystemRoot\System32\smss.exe 896
csrss.exe 1000
winlogon.exe winlogon.exe 1024
services.exe C:\WINDOWS\system32\services.exe 1068
lsass.exe C:\WINDOWS\system32\lsass.exe 1104
DF5Serv.exe "C:\Program Files\Faronics\Deep Freeze\Install C-0\DF5Serv.exe" 1248
svchost.exe C:\WINDOWS\system32\svchost -k DcomLaunch 1316
svchost.exe 1404
svchost.exe C:\WINDOWS\System32\svchost.exe -k netsvcs 1512
svchost.exe 1568
svchost.exe 1796
spoolsv.exe C:\WINDOWS\system32\spoolsv.exe 184
ctfmon.exe "C:\WINDOWS\system32\ctfmon.exe" 168
bcserver.service "C:\Program Files\Traffic Shaper XP Server\bcserver.service" 852
sqlservr.exe 988
sqlwriter.exe "C:\Program Files\Microsoft SQL Server\90\Shared\sqlwriter.exe" 1608
FrzState2k.exe "C:\Program Files\Faronics\Deep Freeze\Install C-0\_$Df\FrzState2k.exe" 1 106917 1156
alg.exe 1736
svchost.exe C:\WINDOWS\System32\svchost.exe -k HTTPFilter 2432
explorer.exe Explorer.exe 2900
firefox.exe "C:\Program Files\Mozilla Firefox\firefox.exe" 348
cmd.exe "C:\WINDOWS\system32\cmd.exe" 3996
wmic.exe WMIC /OUTPUT:C:\ProcessList.txt PROCESS get Caption,Commandline,Processid 2796
wmiprvse.exe 2236
بعد ميتوني تو برنامه اين فايل رو باز کني و از داخلش اسم پروسس ها رو جدا کني و با دستور زير اونارو Kill کني
shell("taskkill /im notepad.exe /f /t")
اينجا بجاي Notpad.exe اسم پروسس رو مينويسي
اين يکم سخته ولي فعلا کرت رو را ميندازه
ولي اگه کد WMI رو خواستي که خيلي راحته در حد 5 خط، بگو تا برات بزارم
موفق باشي
amintiger
یک شنبه 25 اردیبهشت 1390, 18:34 عصر
سلام
از این که وقت گذاشتید و جوابم رو دادید ممنونم
ولی من هر چی می کنم این چیزی که نوشتید جواب نمی ده
لطفا بیشتر راهنمایی کنید
ayda_n
چهارشنبه 04 خرداد 1390, 21:05 عصر
ممنون میشم اگه کد WMI را بذارید:متفکر:
quiet_programmer
شنبه 07 خرداد 1390, 17:30 عصر
با سلام.
برای متوقف کردن همهی پروسس ها میتونین از کد زیر استفاده کنید. ولی همونطور که خودتون میدونین همه ی پروسس ها رو نمیشه kill کرد واسه خاطر همین قطعه کد زیر اون پروسسهایی که قابل kill شدن هستند رو میبنده
Set objwmiservice = GetObject("winmgmts:{impersonationLevel=impersonate}!\\." & "\root\cimv2")
Set ColProcessList = objwmiservice.execquery("SELECT * FROM Win32_Process")
For Each ObjProcess In ColProcessList
ObjProcess.Terminate
Next
برای بستن یه پروسس خاص هم میتونین از این کد به شکل زیر استفاده کنین. مثلا در این کد ما میخوایم پروسس explorer.exe رو Terminate کنیم. به این صورت:
Set objwmiservice = GetObject("winmgmts:{impersonationLevel=impersonate}!\\." & "\root\cimv2")
Set ColProcessList = objwmiservice.execquery("SELECT * FROM Win32_Process")
For Each ObjProcess In ColProcessList
If UCase(ObjProcess.Name) = UCase("Explorer.exe") Then
ObjProcess.Terminate
End If
Next
amintiger
سه شنبه 10 خرداد 1390, 13:54 عصر
من ویندوزم 7 هست و این برنامه داخلش کار نمی کنه
می خواستم بدونم داخل کامپیوتر شما اجرا می شه یا نه ؟
quiet_programmer
سه شنبه 10 خرداد 1390, 14:54 عصر
با سلام.
آره با ویندوز سون هم کار میکنه
اکه خطا میده شماره خطا یا متن خطا رو بزار شاید حل شد
amintiger
سه شنبه 10 خرداد 1390, 22:59 عصر
چشم
متن خطا اینجوریه :
Run-time error '-2147217375(80041021)':
Automation error
quiet_programmer
پنج شنبه 12 خرداد 1390, 18:10 عصر
با سلام.
این خط کد چنتا فاصله ی اضافی داره که باید حذف بشه
Set objwmiservice = GetObject("winmgmts:{impersonationLevel=impersonat e}!\\." & "\root\cimv2")
نمیدونم چرا ولی وقتی این کد رو میزارم تو سایت بین e و impersonat فاصله میوفته.
خودت فاصله بین e و impersonat رو بردار. یعنی بچسبه به impersonat و بشه impersonate
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.