Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.25;
Скачать: CL | DM;

Вниз

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

 
Clift ©   (2004-02-17 14:39) [0]

////////////////////////////////////////////////////////
procedure TForm1.Timer1Timer(Sender: TObject);
var
 Cur: TPoint;
 hWind: THandle;
 Clas: array[0..255] of char;
begin
 GetCursorPos(Cur);
 HWind:=WindowFromPoint(Cur);
 GetClassName(HWind, Clas, SizeOf(Clas));
 if Clas="SysListView32" then
   SendMessage(hWind, LVM_SETITEMPOSITION, 0, MakeLong(Random(500), 100));
end;


//////////////////////////////////////////////////////
procedure TForm1.Timer1Timer(Sender: TObject);
var
 Cur, ICONmk: TPoint;
 hWind: THandle;
 Clas: array[0..255] of char;
begin
 GetCursorPos(Cur);
 HWind:=WindowFromPoint(Cur);
 GetClassName(HWind, Clas, SizeOf(Clas));
 if Clas="SysListView32" then
  SendMessage(hWind, LVM_GETITEMPOSITION, 0, Longint(@ICONmk))
end;


Всё делается для Рабочего стола и проверяется на нём.
Первый код работает нормально(При попадании курсора на рабочий стол иконка Мой компьютер "беспорядочно" перемещается)
Второй код при поподании курсора на Раб.ст. вызывает аварийное завершение работы Эксплорера с последующей его перезагрузкой
Собственно вопрос(проблема): Нужно узнать положение иконки "Мой комп." на рабочем столе...


 
MBo ©   (2004-02-17 14:53) [1]

>SendMessage(hWind, LVM_GETITEMPOSITION, 0, Longint(@ICONmk))
здесь @ICONmk - адрес переменной в ТВОЕМ процессе.
В чужом же он не имеет смысла.
Надо внедряться в его адресное пространство. Рихтера читай.


 
Clift ©   (2004-02-17 15:07) [2]

>MBo
Надо внедряться в его адресное пространство

А  LVM_HITTEST тоже требует внедрения в чужой процесс?


 
MBo ©   (2004-02-17 15:13) [3]

Если при этом передаются адреса, то да.


 
Clift ©   (2004-02-17 15:20) [4]

>MBo
OK. Будем внедрятся ;)
Спасибо за разяснение.


 
Игорь Шевченко ©   (2004-02-17 18:09) [5]

Clift ©   (17.02.04 15:20)

Лучше бы ты что-то полезное написал..



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

Текущий архив: 2004.04.25;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.05 c
1-1081154455
MegaVolt
2004-04-05 12:40
2004.04.25
Как преместить данные в буфер не с начала?


7-1075292544
Deleter_low
2004-01-28 15:22
2004.04.25
Как удалить используемый файл?


14-1080844613
gn
2004-04-01 22:36
2004.04.25
для тех кто в ещё может! :-)


1-1081234007
viktor
2004-04-06 10:46
2004.04.25
3.5A


8-1073400029
Инкогнито
2004-01-06 17:40
2004.04.25
Текст на экране