최용일씨 답변해주셔서 감사합니다.
그런데 아래 사항좀 더 봐주세요 !
uses
Commctrl;
....
public
PPT1 : TPoint;
....
procedure TForm1.Button1Click(Sender: TObject);
var
LHandle: HWND;
begin
LHandle := FindWindow('Progman', nil);
LHandle := FindWindowEx(LHandle, 0, 'SHELLDLL_DefView', nil);
LHandle := FindWindowEx(LHandle, 0, 'SysListView32', nil);
ListView_GetItemPosition(LHandle,1,PPT1);
showmessage(inttostr(PPT1.x) + ',' + inttostr(PPT1.y)); >> 0,0만 나옴
end;
위와 같이 하면 좌표값이 0,0이 나옵니다.
ListView_SetItemPosition 등과같은 set 함수들은 잘 되는데
Get(ListView_GetItemPosition) 등의 함수들은 모두 되지 않고 있습니다.
에라가 아니라 0,0의 정보뿐이 없습니다.
즉, 정보를 가져와야 하는 부분(PPT1)을 바로 처리 하지 못하는것 같습니다.
델파이의 컴포넌트인 ListView1 등의 적용은 제대로 되는데 바탕화면은 왜 0만 되는지,,
(안되는 것이 아니고 정보가 0으로 나옴)
바탕화면의 아이콘 위치를 꼭 알아 내야 하는데 뭐가 문제인지 알려주셨으면 합니다.
참고 : 제가 WINDOWS2000을 사용하고 있는데 98에서도 안되는것 같습니다.