Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Win Api
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.06.2011, 23:18   #1
TwiX
Участник клуба
 
Аватар для TwiX
 
Регистрация: 28.07.2009
Сообщений: 1,510
По умолчанию Как ставить хук сразу при заупуске файла?

Некоторые проги так делают. Или они сначала запускают, а потом просто хук вешают?
TwiX вне форума Ответить с цитированием
Старый 19.06.2011, 00:04   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Хук на что? Отладчики используют Debug API, ты его имел ввиду?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 19.06.2011, 00:42   #3
TwiX
Участник клуба
 
Аватар для TwiX
 
Регистрация: 28.07.2009
Сообщений: 1,510
По умолчанию

Для перехвата сообщений. Клавиатуры например.
TwiX вне форума Ответить с цитированием
Старый 19.06.2011, 09:59   #4
R71MT
Участник клуба
 
Аватар для R71MT
 
Регистрация: 16.06.2011
Сообщений: 1,428
По умолчанию

..хук это брэкпоинт что-ли?
Нашедшего выход - затаптывают первым..
R71MT вне форума Ответить с цитированием
Старый 19.06.2011, 11:04   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Для перехвата сообщений. Клавиатуры например.
А-а-а. Ну тут запуск ни при чем. Хук ставится на сообщение. Кстати если программа не имеет окна - сообщение ему приходить не будет, и хук его не поймает.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 19.06.2011, 13:50   #6
*PB*
Форумчанин
 
Регистрация: 11.08.2009
Сообщений: 558
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Кстати если программа не имеет окна - сообщение ему приходить не будет, и хук его не поймает.
Невидимые окна еще не отменяли.
*PB* вне форума Ответить с цитированием
Старый 19.06.2011, 20:32   #7
Somebody
Участник клуба
 
Регистрация: 08.10.2007
Сообщений: 1,185
По умолчанию

Почему это без окна сообщения не придут?
Somebody вне форума Ответить с цитированием
Старый 19.06.2011, 21:02   #8
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Невидимые окна еще не отменяли.
Да, но все равно это окна, и они созданы.
Цитата:
Почему это без окна сообщения не придут?
А приведи пример приложения без окна, которому начисляются сообщения операционкой
Сообщения тесно связаны с окнами. Нет окна - некому посылать сообщение.

P.S. Хотя я немного ошибаюсь. Можно послать сообщение потоку - PostThreadMessage, а в потоке повыбирать сообщения, но я не уверен что винда по умолчанке посылает сообщение именно потокам а не окнам.
I'm learning to live...

Последний раз редактировалось Stilet; 19.06.2011 в 21:07.
Stilet вне форума Ответить с цитированием
Старый 19.06.2011, 22:14   #9
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

поток не использовавший USER функции, не имеет очереди даже помоему.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 20.06.2011, 11:20   #10
Somebody
Участник клуба
 
Регистрация: 08.10.2007
Сообщений: 1,185
По умолчанию

WM_HOTKEY, например, можно ловить без окна.
Код:
#include <windows.h>

int WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
	RegisterHotKey(0, 0, MOD_CONTROL | MOD_ALT, 'X');
	MSG msg;
	while (GetMessage(&msg, 0, 0, 0))
		if (msg.message == WM_HOTKEY && msg.wParam == 0)
		{
			Beep(2000, 200);
			PostQuitMessage(0);
		}
	UnregisterHotKey(0, 0);
	return msg.wParam;
}
Somebody вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как сделать что бы при нахождении файла *rep_01.* и файла *rep_015.* программа их раскидывал по разным п MixanMM Общие вопросы Delphi 5 19.11.2009 12:59
В зависимости от интервала как ставить значения Apostolx Microsoft Office Excel 7 20.10.2009 17:21
Как скрыть главную форму сразу при запуске программы SibBear Общие вопросы Delphi 15 19.03.2009 23:50
StringGrid - при пометке строки ставить значок на столбце Mick Standarov Компоненты Delphi 2 03.10.2007 23:26
как при нажатии на BUTTON сразу начала устанавливаться какая -нибудь инсталяшка? gotman Компоненты Delphi 5 04.09.2007 15:07