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




Вниз

Кто-нибудь знает что мне выдает функция EnumProps 


AlexandrH   (2001-12-06 14:26) [0]

Хочу получить список свойств окна.
Делаю так.

procedure TForm1.Button1Click(Sender: TObject);
begin
EnumProps(Handle,@PROC);
end;

function PROC (WND: hwnd; PSTR: String; HData: hwnd) : boolean; stdcall;
begin
Form1.ListBox1.Items.Add(pstr);
PROC := True;
end;



В листбокс она мне выдает три строки
типа
ControlOfs000...
Delphi00000344
CC32Subclassinfo

Что то на свойства не похоже. Может я делаю что-то не так..
Подскажите если кто знает..
Заранее благодарен.



Digitman   (2001-12-06 14:55) [1]

это - из хэлпа :

BOOL CALLBACK PropEnumProc(

HWND hwnd, // handle to window whose property list is being enumerated
LPCTSTR lpszString, // string component of property
HANDLE hData // data handle component of property
);

function PROC (WND: hwnd; PSTR: PChar; HData: hwnd) : boolean; stdcall;
begin
Form1.ListBox1.Items.Add( string(pstr));
PROC := True;
end;

LPCTSTR - это PChar(PAnsiChar), а не String



Юрий Зотов   (2001-12-06 15:41) [2]

> AlexandrH © (06.12.01 14:26)

Похоже, Вы путаете свойства окон Windows и свойства форм Delphi. Это совершенно разные вещи.



AlexandrH   (2001-12-07 06:28) [3]

Хорошо попробуем не Delphi_скую форму
делаю так


procedure TForm1.Button1Click(Sender: TObject);
var
h: HWND;
begin
h := Findwindow("TWINDOWSCMD",nil);
EnumProps(h,@PROC);
end;

function PROC (WND: hwnd; PSTR: PChar; HData: hwnd) : boolean; stdcall;
begin
Form1.Memo1.Lines.Add(pstr);
PROC := True;
end;


Выдает не лучше первого 4 строки

ControlOfs00400000000003C0
Delphi00000114
OleDropTargetInterface
OleDropTargetMarshalHwnd

Что это ни как не пойму.....



Digitman   (2001-12-07 08:01) [4]

>AlexandrH
Ок. А что ты ожижал увидеть среди перечисленных св-в ?



troits   (2001-12-07 10:52) [5]

>AlexandrH
Почитайте API Help. Раздел Window Property Functions.
В кратце, к каждому окну можно добавить некоторое свойство, которое
идентифицируется строкой и handle(любая, какая тебе нравится, информация. Потом это окно можно будет по этим свойствам идентифицировать, и т. д.). См. SetProp. EnumProps позволяет просто перебрать эти свойства. Так что установка этох свойств - личное дело каждого приложения.

К слову, Windows Commander написан на Delphi.





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




Наверх





Память: 0.73 MB
Время: 0.024 c
7-9015            fsp                   2001-10-24 19:30  2002.02.04  
Зацепить обьект из другого приложения


14-8974           РУС                   2001-12-12 18:06  2002.02.04  
УРА!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


3-8794            Godfather             2002-01-08 14:13  2002.02.04  
Кодировка 1251 в BDE


1-8935            СергейКнязев          2002-01-17 17:00  2002.02.04  
Повторяю, СРОЧНО!!!!!!. Загрузка из Excel


4-9040            GoldenFox             2001-12-06 16:06  2002.02.04  
Надо убрать иконку из Таскбара в WinNT,