Chromium Code Reviews| Index: chrome/test/mini_installer/chrome_helper.py |
| diff --git a/chrome/test/mini_installer/chrome_helper.py b/chrome/test/mini_installer/chrome_helper.py |
| index a9278355fb2675af1d5fe07bf427fa5a8dc207b4..a714b5a92d7dfee472a8cf96e7a2143bb1c12edc 100644 |
| --- a/chrome/test/mini_installer/chrome_helper.py |
| +++ b/chrome/test/mini_installer/chrome_helper.py |
| @@ -5,6 +5,7 @@ |
| """Common helper module for working with Chrome's processes and windows.""" |
| import ctypes |
|
grt (UTC plus 2)
2014/09/12 15:01:11
unused
huangs
2014/09/12 18:25:33
Done.
|
| +import psutil |
| import pywintypes |
|
grt (UTC plus 2)
2014/09/12 15:01:11
unused
huangs
2014/09/12 18:25:33
Done.
|
| import re |
| import win32con |
|
grt (UTC plus 2)
2014/09/12 15:01:11
unused
huangs
2014/09/12 18:25:33
Done.
|
| @@ -14,22 +15,12 @@ import win32process |
| def GetProcessIDAndPathPairs(): |
| """Returns a list of 2-tuples of (process id, process path). |
| - |
| - This is needed because psutil is not available on Windows slave machines (see: |
| - http://crbug.com/257696). |
| - TODO(sukolsak): Use psutil.process_iter() once it becomes available. |
| """ |
| process_id_and_path_pairs = [] |
| - for process_id in win32process.EnumProcesses(): |
| - process_handle = ctypes.windll.kernel32.OpenProcess( |
| - win32con.PROCESS_QUERY_INFORMATION | win32con.PROCESS_VM_READ, False, |
| - process_id) |
| - if not process_handle: |
| - continue |
| + for process in psutil.process_iter(): |
| try: |
| - process_path = win32process.GetModuleFileNameEx(process_handle, 0) |
| - process_id_and_path_pairs.append((process_id, process_path)) |
| - except pywintypes.error: |
| + process_id_and_path_pairs.append((process.pid, process.exe)) |
|
grt (UTC plus 2)
2014/09/12 15:01:11
http://pythonhosted.org/psutil/#psutil.Process say
grt (UTC plus 2)
2014/09/12 15:01:11
process.exe -> process.exe()
huangs
2014/09/12 18:25:33
Catching psutil.Error, per suggested below.
huangs
2014/09/12 18:25:33
From
https://code.google.com/p/psutil/wiki/Documen
grt (UTC plus 2)
2014/09/12 18:35:20
Odd. http://pythonhosted.org/psutil/#psutil.Proces
|
| + except psutil._error.AccessDenied: |
|
grt (UTC plus 2)
2014/09/12 15:01:11
perhaps just catch psutil.Error here, since that's
huangs
2014/09/12 18:25:33
Done.
|
| # It's normal that some processes are not accessible. |
| pass |
| return process_id_and_path_pairs |