Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
19.05.2013, 09:54
|
|||
---|---|---|---|
Как удалить нужный процесс IE (который браузер) |
|||
#18+
Приветствую!!! Господа, подскажите. Запускаю процесс IE Код: c# 1. 2. 3. 4.
но проблема в том, что мне нужно каждый час его убивать и перезапускать. Предполагается использовать: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
Проблема в том, что если просто глянуть в процессы, то iexplorer.exe 2 штуки. Как удалить тот, что браузер:?) Единственное, по чем можно определить, как я вижу, это размер занимаемой памяти, он будет расти. Помогите кодом иль советом. Заранее спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
19.05.2013, 09:57
|
|||
---|---|---|---|
Как удалить нужный процесс IE (который браузер) |
|||
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
|
19.05.2013, 10:14
|
|||
---|---|---|---|
Как удалить нужный процесс IE (который браузер) |
|||
#18+
Kreol, они оба "браузеры". В IE 9+ создается по 1 процессу на вкладку. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
19.05.2013, 10:15
|
|||
---|---|---|---|
Как удалить нужный процесс IE (который браузер) |
|||
#18+
о_О только что заметил что имя браузера iexplore.exe а проводника iexplorer.exe) Теперь осталось удалить процесс(ы) ведь каждая вкладка это отдельный процесс, код выше не находит его( ... |
|||
:
Нравится:
Не нравится:
|
|||
|
19.05.2013, 10:17
|
|||
---|---|---|---|
Как удалить нужный процесс IE (который браузер) |
|||
#18+
а все разобрался, .exe не надо было писать) ... |
|||
:
Нравится:
Не нравится:
|
|||
|
19.05.2013, 11:25
|
|||
---|---|---|---|
Как удалить нужный процесс IE (который браузер) |
|||
#18+
Kreolо_О только что заметил что имя браузера iexplore.exe а проводника iexplorer.exe)У проводника — explorer.exe. А вообще все ie находятся через коллекцию ShellWindows. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
19.05.2013, 14:43
|
|||
---|---|---|---|
Как удалить нужный процесс IE (который браузер) |
|||
#18+
Kreol, для запуска процесса без параметров, достаточно одной строки - Process.Start("IExplore.exe"). Класс ProcessStartInfo нужен в ситуации, когда мы указываем доп. параметры. Код в таком случае логичнее написать так: Код: c# 1. 2. 3.
Касательно завершения работы браузера, то лучше использовать более вежливый способ по сравнению с Kill(). Первое что можно попробовать, это вызвать SendMessage(internetBrowserProcess.MainWindowHandle, WM_CLOSE, 0, 0) чтобы дать возможность завершить работу основному процессу и всем дочерним. Если в течение некоторого промежутка, скажем 5 секунд, процесс еще не завершился (WaitForExit(5*1000)), тогда можно принимать грубые меры. Для этого сначала найдем все дочерние процессы для нашего internetBrowserProcess. Следует исходить из того что дочерние процессы тоже могли что-то запустить и имена подобных процессов могут не быть iexplore.exe (в данный момент такого вроде нет, но кто знает что будет дальше). Для построения дерева процессов можно использовать т.н. Toolhelp API - Win32: How to enumerate child processes? . Затем убиваем по очереди убиваем все процессы. Также есть вариант с использованием так называемых job объектов . Здесь под job понимается логический контейнер для процессов. Их прелесть для нашей задачи в том, что заверешение job-a автоматически завершит все процессы которые работают внутри него, включая дочерние. В .NET нет родных функций для работы с job-ами. То есть придется писать p/invoke код. Однако это окупится т.к. позволит упростить код. Кроме этого при необходимости на job можно накладывать различные ограничения по использованию процессора, памяти и т.п. вещей. Kreolтолько что заметил что имя браузера iexplore.exe а проводника iexplorer.exe Ты хотел сказать explorer.exe и iexplore.exe? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=20&mobile=1&tid=1404673]: |
0ms |
get settings: |
11ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
113ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
others: | 386ms |
total: | 593ms |
0 / 0 |