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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 15.08.2012, 13:19   #1
pro-soft2010
 
Регистрация: 14.07.2011
Сообщений: 4
По умолчанию Перехват CreateDC

Здравствуйте! Пытаюсь перехватить ф-цию CreateDC из Gdi32.dll, использую библиотеку advApiHook.
Перехватить функцию не удаётся. В то время как например ф-цию GetForegroundWindow из User32.dll перехватываю без проблем. Помогите пожалуйста разобраться.
Вложения
Тип файла: zip my_dll.zip (49.6 Кб, 9 просмотров)
pro-soft2010 вне форума Ответить с цитированием
Старый 15.08.2012, 15:23   #2
Somebody
Участник клуба
 
Регистрация: 08.10.2007
Сообщений: 1,185
По умолчанию

У процесса, в котором надо перехватывать функцию, окна есть? И какам образом определяешь, что перехватить не удаётся?
Somebody вне форума Ответить с цитированием
Старый 15.08.2012, 16:11   #3
pro-soft2010
 
Регистрация: 14.07.2011
Сообщений: 4
По умолчанию

Цитата:
Сообщение от Somebody Посмотреть сообщение
У процесса, в котором надо перехватывать функцию, окна есть? И какам образом определяешь, что перехватить не удаётся?
Определяю таким образом перехваченные функции...

Код:
procedure TForm1.CreateDC_ButtonClick(Sender: TObject);
var
  DC:HDC;
begin
  DC:=CreateDC('DISPLAY', nil, nil, nil);
  showmessage(IntToStr(DC));
end;
Код:
procedure TForm1.GetForegroundWindow_ButtonClick(Sender: TObject);
var
  wnd:HWND;
begin
  wnd:=GetForegroundWindow;
  showmessage(IntToStr(wnd));
end;
Соответственно при включенном хуке GetForegroundWindow_ButtonClick получаю единицу, а вот CreateDC_ButtonClick единицы не получаю
pro-soft2010 вне форума Ответить с цитированием
Старый 17.08.2012, 10:59   #4
xoodoo
Форумчанин
 
Регистрация: 11.04.2012
Сообщений: 212
По умолчанию

В Gdi32.dll нет экспортируемого ид-ра CreateDC.
Есть CreateDCA и CreateDCW.
xoodoo вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перехват Miha85193 Общие вопросы Delphi 2 23.05.2012 13:16
Перехват. egorzenit Общие вопросы Delphi 3 29.03.2012 15:19
Перехват функции egorzenit Общие вопросы Delphi 7 15.09.2011 14:49
Перехват GL Api coNsept Общие вопросы C/C++ 6 19.06.2011 02:42
Перехват NtTerminateProcess Terran Win Api 4 12.12.2008 22:09