Вниз
Скачать: CL | DM;

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

← →
X-Disa   (2003-11-04 15:40) [0]

Я пытаюсь получить текст заголовка окна и его класс и засунутб все это в List Box с помощью такого кода:

procedure TForm1.Button1Click(Sender: TObject);
begin
ListBox1.Items.Clear; // Очистим список перед началом поисков
EnumWindows (@TForm1.EnumProc, 0);
end;

function TForm1.EnumProc (Wd: HWnd; Param: LongInt): Boolean; stdcall; // Обязательно stdcall !!!
Var
Nm:Array[0..255] of Char; // буфер для имени
Cs: Array[0..255] of Char; // буфер для класса
Begin
GetWindowText(Wd,Nm,255); // считываем текст заголовка окна
GetClassName(Wd,Cs,255); // считываем название класса окна
ListBox1.Items.Add(String(Nm)+"/"+String(Cs)); // Добавляем название окна и класс в список
EnumProc := TRUE; // продолжать искать окна…
end;

Но при нажатии на соответствующую кнопку выскакивает Access Violation. Что делать?


← →
Игорь Шевченко ©   (2003-11-04 15:46) [1]

EnumProc не должна быть методом формы.

function EnumProc (Wd: HWnd; Param: LongInt): Boolean; stdcall;
Var
Nm:Array[0..255] of Char; // буфер для имени
Cs: Array[0..255] of Char; // буфер для класса
Begin
GetWindowText(Wd,Nm,255); // считываем текст заголовка окна
GetClassName(Wd,Cs,255); // считываем название класса окна
TForm1(Param).ListBox1.Items.Add(String(Nm)+"/"+String(Cs)); // Добавляем название окна и класс в список
Result := TRUE; // продолжать искать окна…
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
ListBox1.Items.Clear; // Очистим список перед началом поисков
EnumWindows (@EnumProc, Self);
end;


← →
X-Disa   (2003-11-04 15:52) [2]

Я попробовал так написать, но Delphi выдает ошибку компиляции.
Там написано что Variable requared. Что это значит?


← →
Игорь Шевченко ©   (2003-11-04 17:28) [3]

А на какой строке выдает ошибку, это не судьба сказать ?

Кстати:

EnumWindows (@EnumProc, Integer(Self));


← →
FireHack ©   (2003-11-04 17:55) [4]

и что за
EnumProc=True



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.017 c
1-11863
Fast
2003-12-18 12:26
2004.01.05
Canvas для TPanel


14-12142
IronHawk
2003-12-12 16:44
2004.01.05
Обалдеть, забыл всё напрочь, хелп пзл, исключить из списка в Comb


3-11826
karburator
2003-11-26 08:25
2004.01.05
каскадное удаление


1-11879
Soi
2003-12-15 07:04
2004.01.05
Дробные числа


14-12107
Undert
2003-12-15 00:28
2004.01.05
Кто что знает про Хаффмана ? (Huffman)




   Наверх