Làm cách nào tôi có thể tiêu diệt một số quy trình hoạt động bằng cách tìm kiếm tên tệp .exe của chúng trong C# .NET hoặc C++?Giết một số quy trình theo tên tệp .exe
Trả lời
nhanh trả lời:
foreach (var process in Process.GetProcessesByName("whatever"))
{
process.Kill();
}
(rời khỏi .exe từ tên tiến trình)
Thanx rất nhiều .. –
nên làm gì nếu mã trên trả về Ngoại lệ (một quy trình 32 bit không thể truy cập các mô-đun của quy trình 64 bit)? – Manish
Rời khỏi ".exe". Từ MSDN: "Tên quy trình là một tên thân thiện cho quá trình, chẳng hạn như Outlook, không bao gồm phần mở rộng .exe hoặc đường dẫn" – slater
Bạn có thể sử dụng Process.GetProcesses()
để nhận các quy trình hiện đang chạy, sau đó Process.Kill()
để hủy quá trình.
Process.GetProcessesByName sẽ đơn giản hóa điều này. – ConsultUtah
Thanx rất nhiều .. –
nên làm gì nếu mã trên trả về Ngoại lệ (một quy trình 32 bit không thể truy cập các mô-đun của quy trình 64 bit)? – Manish
giải pháp của tôi là:
var chromeDriverProcesses = Process.GetProcesses().
Where(pr => pr.ProcessName == "chromedriver");
foreach (var process in chromeDriverProcesses)
{
process.Kill();
}
bạn có thể sử dụng Chứa thay vì bằng –
Hài hước ngẫu nhiên là, tôi đã tìm kiếm trong chủ đề này cho một giải pháp để giết chết các chromedriver. Phải là một vấn đề phổ biến. – kerl
public void EndTask(string taskname)
{
string processName = taskname;
string fixstring = taskname.Replace(".exe", "");
if (taskname.Contains(".exe"))
{
foreach (Process process in Process.GetProcessesByName(fixstring))
{
process.Kill();
}
}
else if (!taskname.Contains(".exe"))
{
foreach (Process process in Process.GetProcessesByName(processName))
{
process.Kill();
}
}
}
//EndTask("notepad");
Tóm tắt: Không có vấn đề nếu tên chứa .exe, quá trình sẽ kết thúc. Bạn không cần phải "rời khỏi .exe từ tên quá trình", Nó hoạt động 100%.
đơn giản '.Replace (". Exe "," ")' trên câu trả lời bình chọn hàng đầu sẽ làm điều này với mã ít phức tạp hơn và không cần thiết – AndrewK
Toàn bộ ý tưởng của nó là để xem phương thức có hoặc không có .exe để mọi người có thể thấy nhiều cách xử lý nó ... Nó không có nghĩa là để sao chép và dán .... – user7993881
- 1. Làm thế nào để giết các quy trình theo tên? (Win32 API)
- 2. Giết quy trình Excel C#
- 3. Quản đốc không giết các quy trình
- 4. Không thể gọi một tệp exe cụ thể theo chương trình
- 5. Giết một quá trình python
- 6. Hợp nhất hai tệp exe thành một chương trình
- 7. Làm cách nào để kịch bản xây dựng ANT có thể giết chết quy trình Windows?
- 8. Giết một số nhị phân Haskell
- 9. Giết một quá trình thông qua sshj
- 10. Cách chỉ định tên quy trình AddIn?
- 11. Làm cách nào để theo dõi các quy trình truy cập một tệp cụ thể?
- 12. giết subprocess khi quá trình python bị giết?
- 13. Quy ước đặt tên cho các tệp lớp một phần
- 14. Giết một quá trình nếu nó tồn tại
- 15. Phiên Giết ASP.NET theo Id
- 16. Làm thế nào để giết một quy trình không chạy trong Android
- 17. C# - Giết chết một quá trình bởi một phần của nó là tên
- 18. cách tạo tệp thiết lập chứa exe delphi và một số tệp khác
- 19. Kiểm tra xem quá trình Mac có đang chạy bằng Bash theo tên quy trình
- 20. Tên tệp được mở bởi một quy trình trong cửa sổ?
- 21. Giết một quá trình theo lô và báo cáo thành công
- 22. chạy một thử nghiệm theo tên từ một tệp nodeunit
- 23. giết tất cả child_process khi quá trình nút bị giết
- 24. Tên quy trình đầy đủ từ task_struct
- 25. Cách nhận các tệp được sửa đổi theo một quy trình nhất định trong Linux
- 26. Thực thi một quy trình con không thành công
- 27. Trích xuất tên tệp và đường dẫn từ quy trình đang chạy
- 28. Theo dõi mạng theo quy trình trong Obj-C?
- 29. Lưu gmon.out trước khi giết một quá trình
- 30. Đổi tên tệp đệ quy Mac OSX
Nếu bạn cần quá trình giết bằng tên từng phần, hãy xem http://stackoverflow.com/questions/14632162/c-sharp-killing-a-process-by-a-part-of-its-name?rq=1 . –