![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| azesmcar |
|
|||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 81 Всего: 211 |
Да вроде бы так...хотя у меня пока независимо от фокуса один и тот же хендл возвращяет |
|||
|
||||
| Opik |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 1918 Регистрация: 6.10.2004 Где: Рига Репутация: нет Всего: 55 |
Извините за банальный вопрос, но что нужно подключить, что бы заработал ShellExecute?
|
|||
|
||||
| Opik |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 1918 Регистрация: 6.10.2004 Где: Рига Репутация: нет Всего: 55 |
так, с этим сам разобрался
|
|||
|
||||
| Opik |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 1918 Регистрация: 6.10.2004 Где: Рига Репутация: нет Всего: 55 |
azesmcar,
Что ещё немаловажно, окно создается с параметрами SW_HIDE |
|||
|
||||
| Rockie |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1143 Регистрация: 23.4.2006 Репутация: 8 Всего: 31 |
Opik, msdn говорит что
p.s.: сам не проверял. Добавлено @ 01:41 этот пост я уже проспал -------------------- Чтобы иметь большой гардероб - надо иметь большой гардероб. |
|||
|
||||
| Opik |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 1918 Регистрация: 6.10.2004 Где: Рига Репутация: нет Всего: 55 |
А каким образом можно получить Thread ID процесса, созданного, через ShellExecute?
|
|||
|
||||
| codelord |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 777 Регистрация: 7.5.2005 Где: ты моя темноглаза я где?! Репутация: 1 Всего: 39 |
вот посмотри надеюсь правильно понял суть вопроса.
пользуемся так:
подрубаем хедеры #include "tlhelp32.h" #include <process.h> делал Borland BCB 6.0, но та в принципе API поэтому должно работать в других средах.. Это сообщение отредактировал(а) codelord - 24.2.2007, 13:59 |
||||
|
|||||
| Opik |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 1918 Регистрация: 6.10.2004 Где: Рига Репутация: нет Всего: 55 |
codelord,
На моем примере я запускаю iexplorer.exe, а если у пользователя уже будет запущен оный? Добавлено @ 15:49 codelord, + Нужен именно Thread ID, созданного процесса.
|
|||
|
||||
| codelord |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 777 Регистрация: 7.5.2005 Где: ты моя темноглаза я где?! Репутация: 1 Всего: 39 |
если у пользователя был запущен не тобой, то код покажет пид твоего, того которая запустила твоя прога, т.е. родителский пид запущенного процесса должен быть пид твоей проги, а если запустил не ты будет 0. Это сообщение отредактировал(а) codelord - 24.2.2007, 20:09 |
|||
|
||||
| Opik |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 1918 Регистрация: 6.10.2004 Где: Рига Репутация: нет Всего: 55 |
codelord,
Насколько я понял по коду, возращается pid, a не thread id |
|||
|
||||
| codelord |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 777 Регистрация: 7.5.2005 Где: ты моя темноглаза я где?! Репутация: 1 Всего: 39 |
правильно, это я отвечал на
, а про ThreadID не очень догоняю, потому как я понимаю если ShellExecute () запустит прогу которая создаст 100 потоков, какой именно забрать? Добавлено @ 03:16 думаю смотреть надо в сторону GetWindowThreadProcessId, ищем нужное окно и забираем Id потока который его создал. |
||||
|
|||||
| codelord |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 777 Регистрация: 7.5.2005 Где: ты моя темноглаза я где?! Репутация: 1 Всего: 39 |
вот запусти IEXPLORE который ты видимо будешь запускать через ShellEx.. и посмотри в диспетчере сколько у него потоков.
который из них нужен? |
|||
|
||||
| Opik |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 1918 Регистрация: 6.10.2004 Где: Рига Репутация: нет Всего: 55 |
codelord,
А будет ли GetWindowThreadProcessId работать, если окно SW_HIDE? Ведь как такового окна не будет? |
|||
|
||||
| azesmcar |
|
||||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 81 Всего: 211 |
Будет..окно есть, просто его не видно..Я думаю тебе нужен поток обработки сообщений основного окна..codelord верно сказал..тебе нужна функция GetWindowThreadProcessId.. А насчет получение ID процесса..лучше используй ShellExecuteEx. Он возвращяет.. Но учти что
|
||||
|
|||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |