2010-05-19 39 views
8

-Chấm dứt tiến trình con trong Windows, access denied

import time 
import subprocess 
from os.path import expanduser 

chrome_path = expanduser('~\Local Settings\Application Data\Google\Chrome\Application\chrome.exe') 

proc = subprocess.Popen(chrome_path) 
time.sleep(4) 
proc.terminate() 

Output: WindowsError: [Error 5] Access is denied

Làm thế nào tôi có thể giết chết quá trình Chrome?

Python 2.6 trên Windows XP.

+1

Tôi không thể sao chép sự cố của bạn. Tôi đang sử dụng Python 2.6.6 và 6.0.472.63 trên Windows 7, nhưng quá trình này bị giết rất tốt. – jsalonen

+0

Đoán nó chỉ là một vấn đề XP sau đó. Tôi đã thêm thông tin phiên bản vào câu hỏi. –

Trả lời

1

điều gì sẽ xảy ra nếu bạn sử dụng TASKKILL/F/PID [số ID quá trình]? Hãy thử một lần. Khởi chạy thông qua hệ điều hành nhập

+0

Không chắc chắn tôi hiểu ... 'TASKKILL' không được công nhận là lệnh nội bộ hoặc bên ngoài, chương trình có thể hoạt động hoặc tệp hàng loạt. –

+0

không được nhận dạng? nó hoạt động trên xp, vista và windows 7 của tôi .. – relima

+0

Ah, dường như taskkill chỉ đi kèm với XP Pro. Tôi đang chạy phiên bản Home. Tuy nhiên, "tskill " không hoạt động. –

2

Tôi không biết về Windows, nhưng đã nhận thấy trên Linux mà Google Chrome "bảo vệ" bản thân từ tín hiệu điều khiển hệ điều hành theo một cách mà rất ít các chương trình làm:

$ ps -lp 2345 
F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY   TIME CMD 
4 S 1000 2345  1 0 80 0 - 17699 skb_re ?  00:00:00 chrome 
$ kill -TERM 2345 
$ kill -HUP 2345 
$ kill -SEGV 2345 
$ ps -lp 2345 
F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY   TIME CMD 
4 S 1000 2345  1 0 80 0 - 17699 skb_re ?  00:00:00 chrome 

Tôi nghi ngờ điều này có thể là nguyên nhân gốc rễ của những rắc rối của bạn. Ngẫu nhiên, tôi đang đăng ghi chú này từ quá trình 2345.

Các vấn đề liên quan