S
Senset
Задача: отловить завершение скачки торрент-файла на клиенте utorrent (взята версия 1.7.7 так как там в большинстве своем окна названы одинаково и отловить их по имени сложнее)
Конкретная задача: вырвать из ListBox элементы... определить какой выбран, выбрать другой (если выбранный не катит) проверить список... (зы до списка пока не дошел)...
концепция:
есть handle окна utorrent'a, отловил handle ListBox'а... обращаюсь (аля винапи) к кол-ву элементов в блоке, вырываю их имена... и... ппц...
Конкретика:
в результате её выполнения получается не то, что надо и из этого сложно отличить то, что надо выбрать...
т.е:
Окно программы (через handle):
Окно ListBox (получено через handle):
И по коду вырывает названия элементов в ListBox...
но и в итоге имена эти:
Очевидно, что что-то не так... help!
Конкретная задача: вырвать из ListBox элементы... определить какой выбран, выбрать другой (если выбранный не катит) проверить список... (зы до списка пока не дошел)...
концепция:
есть handle окна utorrent'a, отловил handle ListBox'а... обращаюсь (аля винапи) к кол-ву элементов в блоке, вырываю их имена... и... ппц...
Конкретика:
Код:
s:='µTorrent 1.7.7';
handle:=findwindow(nil,pchar(s));
t:=tstringlist.Create;
EnumChildWindows(handle,@ECWC,LParam(t));
//В ECWC происходит заполение д.м.с. t
h:=FHBC(t,1,'listbox');
//В fhbc происходит определение handle по классу через массив строк, который был с сформирован в ECWC)
listbox1.Items.Add(inttostr(h));
t2:=tstringlist.Create;
LB_GetAllItems(h,t2);
t2.Clear;
t.Clear;
function LB_GetAllItems(hWnd: Hwnd; sl: TStringlist): string;
var
RetBuffer:array[0..255] of char;
i, x: Integer;
begin
x := SendMessage(hWnd, LB_GETCOUNT, 0, 0);
for i := 0 to x - 1 do
begin
SendMessage(hWnd, LB_GETTEXT, i, lparam(@RetBuffer));
sl.Add(RetBuffer);
end;
end;
в результате её выполнения получается не то, что надо и из этого сложно отличить то, что надо выбрать...
т.е:
Окно программы (через handle):
Ссылка скрыта от гостей
Окно ListBox (получено через handle):
Ссылка скрыта от гостей
И по коду вырывает названия элементов в ListBox...
но и в итоге имена эти:
Ссылка скрыта от гостей
Очевидно, что что-то не так... help!