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

Вниз

WH_SHELL   Найти похожие ветки 

 
наблюдатель   (2003-09-01 18:12) [0]

Здрассе люди. У меня такая трабл. Никто не знает как заставить окно сворачиваться туда, куда мне надо? Почитал про HSHELL_GETMINRECT но нифига не понял! Может кто объяснит чайнику как в LParam воткнуть адрес RECT, если это вообще надо делать.


 
jonni   (2003-09-01 21:57) [1]

vo pervih ne rect a vo vtorih chitay MSDN :)

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui /winui/windowsuserinterface/windowing/hooks/hookreference/hookfunction s/registershellhookwindow.asp
zdes" napisano pro structuru kotoroy nado prisvaivat" novie znacheniya.....


 
наблюдатель   (2003-09-01 22:50) [2]

Это конечно всё весело, но как в LParam забить этот поинтер? Я просто не очень ещё в Delphi, а особенно с типами.


 
jonni   (2003-09-02 14:00) [3]

myVariable:PSHELLHOOKINFO;

myVariable:=PSHELLHOOKINFO(lParam);

i delay chto hochehs uzhe s myVariable.....


 
VMcL   (2003-09-02 14:35) [4]

>наблюдатель (01.09.03 22:50) [2]
>Это конечно всё весело, но как в LParam забить этот поинтер? Я просто не очень ещё в Delphi, а особенно с типами

Тогда лучше не стоит пока с хуками.


 
наблюдатель   (2003-09-02 14:46) [5]

> jonni
Блин, можешь меня повесить, но я всё-же не могу догнать, как LParam присвоить поинтер на эту структуру.

> VMcL
Дело в том, что мне поставили такую задачу в универе, поэтому надо разбираться быстро.


 
jonni   (2003-09-02 14:56) [6]

blin nu a chto tut ne ponyatnogo to???

case wparam of
HSHELL_GETMINRECT:
begin
PSHELLHOOKINFO(lparam).Tochto_hochesh_menyaesh:=To_chto nado;
end;
end;

vot i vse dela to......

to наблюдатель: tebe v inivere takuyu zadachu dali??? s trudom verit"sya.....


 
DVM   (2003-09-02 15:33) [7]

Следующий вопрос будет про то, что такое PSHELLHOOKINFO?

Я тоже сомневаюсь, что в университете такие задачи дают.
Это вообще недокументировано было до недавнего времени.


 
наблюдатель   (2003-09-02 17:20) [8]

> jonni
Так я до этого думал, что надо в LParam загнать поинтер, а оказывается надо изменять там, куда он сам (LParam) указывает. Теперь понятно! Но всё равно не работает. Окно при мнинимизации просто исчезает.

> DVM
> jonni
Вообще-то я и не думал использовать RegisterShellHook, а ставил просто WH_SHELL, поэтому мне и надо было поинтер на RECT туда загнать (см. сабж). А в универе не дают задачки, типа написать SHELL используя только RegisterShellHook. У меня что-то типа курсовой, которую мне надобыло сдать ещё в прошлом семестре.

Вообщем так или иначе вот код:

.....
type
PSHELLHOOKINFO = ^TSHELLHOOKINFO;
TSHELLHOOKINFO = packed record
WindowHandle : HWND;
TopLeft : TSmallPoint;
BottomRight : TSmallPoint;
end;
.....
var ps:tsmallpoint;
.....
HSHELL_GETMINRECT:
begin
ps.x:=0;
ps.y:=0;
pshellhookinfo (lparam).TopLeft:=ps;
ps.x:=100;
ps.y:=20;
pshellhookinfo (lparam).BottomRight:=ps;
end;

Где здесь ошибка я понять не могу!


 
jonni   (2003-09-02 17:27) [9]

u tebya navernoe wind sovsem ne win9x.......

tak kak ti napisal rabotat" budet naverno esli povezet toka na win9x.... prohodili mi eto......


 
наблюдатель   (2003-09-02 17:30) [10]

> jonni
Сейчас нет, сейчас у меня WinXP, и сейчас я использую RegisterShellHook, после jonni © (01.09.03 21:57) [1]. Все сообщения ловятся нормально, кроме этого HSHELL_GETMINRECT. В смысле и оно ловится, но только толку от этого мало.


 
jonni   (2003-09-02 17:36) [11]

ya o tom i skazal !!! ya zhe skazal chto veroyatno u tebya ne win9x... mi s DVM s etim uzhe borolis"....

tak kak ti napisal rabotaet toka w win9x inogda... nado dobavit" koe chego elsi hochesh chto bi rabotalo vo vseh windax...

ya k sozhalenyu bol"she skzat" ne mogu tak kak "DVM copyright"


 
наблюдатель   (2003-09-02 17:43) [12]

Ну спасибо хотя бы на этом! Будем думать дальше.


 
DVM   (2003-09-03 10:40) [13]


> наблюдатель

Пиши на мыло получишь пример где это все работает в любых виндах.


 
Игорь Шевченко   (2003-09-03 11:28) [14]

SetWindowPlacement не поможет ?


 
jonni   (2003-09-03 14:00) [15]

to Игорь Шевченко
net ne pomozhet k sozhaleniyu :(


 
наблюдатель   (2003-09-03 17:54) [16]

>Игорь Шевченко
А чем? Ведь мне надо было сделать так, чтобы анимация окон изменилась, если можно так выразиться.
Но теперь я разобрался, спасибо DVM.



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

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

Наверх




Память: 0.48 MB
Время: 0.032 c
6-41793
Zeon
2003-09-16 03:42
2003.11.13
Как разорвать соединение с интернетом?


1-41216
killer
2003-11-01 18:40
2003.11.13
Окно программы посередине экрана монитора


1-41412
Вован
2003-11-04 16:29
2003.11.13
Как узнать разрешение экрана в пикселях (X,Y) у юзера?


8-41769
Melamed
2003-07-06 10:47
2003.11.13
Не понятный глюк в DirectDraw


3-40961
Новенький
2003-10-17 11:04
2003.11.13
ADOQuery.FieldByName и ADOQuery.Post





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский