Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|
Получить id процесса COM объекта (C#) |

28.04.2010, 16:33
|
|
Members of Antichat - Level 5
Регистрация: 05.04.2006
Сообщений: 1,066
Провел на форуме: 3493315
Репутация:
1228
|
|
Получить id процесса COM объекта (C#)
Пишу на c#, через COM запускаю IE
IE = new SHDocVw.InternetExplorer();
Проблема в том что завершение работы браузера через IE.Quit() не всегда происходит коректно, иногда окно всеравно не закрывается, например в случае когда выскакивает какое либо диалоговое окно на сайте. Вопрос в следуюшем как получить id процесса который создается при запуске IE? используя его хочу убивать IE
|
|
|

28.04.2010, 16:38
|
|
Banned
Регистрация: 09.04.2010
Сообщений: 181
Провел на форуме: 475927
Репутация:
12
|
|
http://msdn.microsoft.com/en-us/library/ms633522.aspx если я понял что ты спрашиваеш
|
|
|

28.04.2010, 17:26
|
|
Reservists Of Antichat - Level 6
Регистрация: 12.02.2006
Сообщений: 891
Провел на форуме: 1892597
Репутация:
836
|
|
IE = new SHDocVw.InternetExplorer();
у этого объекта должен быть handle.
дальше Process.GetProcessByName("iexplore").First(a => a.Id == IE.Handle).Kill()
__________________
*********************************
*Я не волшебник ٩(๏̯͡๏)۶, только учусь...*
*********************************
Программы на заказ
Times to fly...
|
|
|

28.04.2010, 17:28
|
|
Banned
Регистрация: 09.04.2010
Сообщений: 181
Провел на форуме: 475927
Репутация:
12
|
|
Сообщение от W!z@rD
IE = new SHDocVw.InternetExplorer();
у этого объекта должен быть handle.
дальше Process.GetProcessByName("iexplore").First(a => a.Id == IE.Handle).Kill()
я спрашивал,не подходит т.к. будет много окон многопоточно
|
|
|

28.04.2010, 18:20
|
|
Members of Antichat - Level 5
Регистрация: 05.04.2006
Сообщений: 1,066
Провел на форуме: 3493315
Репутация:
1228
|
|
IE.HWND и a.Id это разные вещи, а подвисший IE через Kill() не убивается, его нужно только с принудительным завершением
Последний раз редактировалось nc.STRIEM; 28.04.2010 в 18:44..
|
|
|

28.04.2010, 18:44
|
|
Reservists Of Antichat - Level 6
Регистрация: 12.02.2006
Сообщений: 891
Провел на форуме: 1892597
Репутация:
836
|
|
да посмотрел. Как вариант искать по заголовку.
a.MainForm.Title (что-то в таком духе)
__________________
*********************************
*Я не волшебник ٩(๏̯͡๏)۶, только учусь...*
*********************************
Программы на заказ
Times to fly...
|
|
|

28.04.2010, 18:48
|
|
Banned
Регистрация: 09.04.2010
Сообщений: 181
Провел на форуме: 475927
Репутация:
12
|
|
Сообщение от W!z@rD
да посмотрел. Как вариант искать по заголовку.
a.MainForm.Title (что-то в таком духе)
ты не понял он хочет искать id процесса exploer и гасить его,заголовки не помогут тут ченить другое надо
|
|
|

28.04.2010, 18:55
|
|
Reservists Of Antichat - Level 6
Регистрация: 12.02.2006
Сообщений: 891
Провел на форуме: 1892597
Репутация:
836
|
|
Сообщение от Sunstrider
ты не понял он хочет искать id процесса exploer и гасить его,заголовки не помогут тут ченить другое надо
бл**ь иногда лучше промолчать
__________________
*********************************
*Я не волшебник ٩(๏̯͡๏)۶, только учусь...*
*********************************
Программы на заказ
Times to fly...
|
|
|

28.04.2010, 19:02
|
|
Постоянный
Регистрация: 08.04.2007
Сообщений: 853
Провел на форуме: 5812656
Репутация:
1540
|
|
Может для реализации не подойдёт, но может проще делать через компонент WebBrowser?
|
|
|

29.04.2010, 13:08
|
|
Members of Antichat - Level 5
Регистрация: 05.04.2006
Сообщений: 1,066
Провел на форуме: 3493315
Репутация:
1228
|
|
проблема не в том как завершить процесс, а в том как получить его id
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|