Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2003.02.27;
Скачать: [xml.tar.bz2];

Вниз

Хэндлы и хуки   Найти похожие ветки 

 
elfy   (2003-01-12 00:26) [0]

Здравствуйте все!!!

Хочу задать 2 вопроса:

Есть хэндл окна, как получить его заголовок?(не через GetWindowText - на чужие окна не работает...)

Как правильно ставить SHELL хук на изменение заголовка окна?

Заранее большое спасибо


 
Оливейра   (2003-01-12 01:12) [1]

1) WM_GETTEXT
2) Так же, как и прочие хуки :)
WH_MSGFILTER / WH_SYSMSGFILTER на WM_SETTEXT;
если родитель окна не 0 - вываливаемся;
адрес MSG - в lParam.


 
Оливейра   (2003-01-12 01:14) [2]

Опять скосячил.
WH_GETMESSAGE вместо WH_MSGFILTER / WH_SYSMSGFILTER


 
elf_123   (2003-01-12 13:40) [3]

Спасибо, но ВМ_ГТТЕКСТ тоже не пашет ;)


 
R4D][   (2003-01-12 13:59) [4]

>Есть хэндл окна, как получить его заголовок?(не через GetWindowText - на чужие окна не работает...)

Как это не работает:
Пример: Пойдем от обратного: у меня открыто окно с заголовком "Интернет"(ради эксперимента создай папку с именем Интернет и открой ее в Explorer"e), находим его хэндл и передаем его в качестве первого параметра в GetWindowText: во втором параметре получаем тот же "Интернет", вот кусок кода:
...
var
nb: array [0..255] of Char;
...
GetWindowText(FindWindow(nil,"Интернет"),nb,255);
MessageBox(0,nb,"",mb_ok);


 
elf_123   (2003-01-12 16:08) [5]

Не знаю...

А вот такой код вываливается в ошибку проги-оболочки:

function SysMsgProc(code : integer; wParam : word; lParam : longint) : longint; stdcall;
var f: TextFile;
galfa: PChar;
...
GetWindowText(wParam, Galfa, 255);

wParam - 100% хэндл для ШеЛ ХУКА


 
R4D][   (2003-01-12 17:22) [6]

Дык ты не инициализировал galfa:
GetMem(Galfa,255);
GetWindowText(wParam, Galfa, 255);
FreeMem(Galfa);
А вообще мне больше по вкусу массивы символов, как в моем примере, глюков меньше.



Страницы: 1 вся ветка

Форум: "WinAPI";
Текущий архив: 2003.02.27;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.007 c
3-87304
Alexandr3
2003-02-10 00:05
2003.02.27
Пароль BDE


6-87601
M_a_x
2003-01-11 01:17
2003.02.27
Помогите с WebBrowser ом


3-87283
volk
2003-02-08 18:42
2003.02.27
Не могу найти строку...


3-87349
страж
2003-02-11 10:12
2003.02.27
Проблема с SQL SELECT


3-87338
an
2003-02-08 03:45
2003.02.27
ADO и DBF не воэможно внести изменения в DBF файл





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский