StringList com API do Windows
26/03/2006
0
Holla,
gostaria de saber se alguem aqui no forum sabe como posso usar uma StringList atras da API do Windows.
Estou estudando o desenvolvimento de uma aplicação atras da API do Windows dessa forma nao estou usando as CLASSES do Delphi. Uso somente a classe Windows e Messages ate agora.
O problema que estou tendo é com relação a essa função:
Na qual recebe como parametro uma List: TStringList. Sendo que a TStringList é um metodo da Classe (CLASSES) do Delphi.
Preciso saber como criar uma StringList com a API do Windows sem utilizar os metodos do DELPHI.
Se alguem souber como posso fazer isso agradeço.
Sem mais,
Antônio.
gostaria de saber se alguem aqui no forum sabe como posso usar uma StringList atras da API do Windows.
Estou estudando o desenvolvimento de uma aplicação atras da API do Windows dessa forma nao estou usando as CLASSES do Delphi. Uso somente a classe Windows e Messages ate agora.
program Project1; uses Windows, Messages; {$R *.RES} var wClass: TWndClass; Msg: TMsg; MainForm, ListBox1: Integer; function WindowProc(hWnd,Msg,wParam,lParam:Integer):Integer; stdcall; begin if Msg = WM_DESTROY then PostQuitMessage(0); Result := DefWindowProc(hWnd,Msg,wParam,lParam); end; begin wClass.lpszClassName:= ´CN´; wClass.lpfnWndProc := @WindowProc; wClass.hInstance := hInstance; wClass.hbrBackground:= 1; wClass.hIcon := LoadIcon(hInstance,´MAINICON´); wClass.hCursor := LoadCursor(0,IDC_ARROW); RegisterClass(wClass); MainForm:= CreateWindow(wClass.lpszClassName,´Title Bar´, WS_OVERLAPPEDWINDOW or WS_VISIBLE, 10,10,340,220,0,0,hInstance,nil); ListBox1:= CreateWindowEx(WS_EX_CLIENTEDGE,´LISTBOX´,´ListBox 3 selected is ´, WS_VISIBLE or WS_CHILD or LBS_HASSTRINGS or LBS_NOTIFY or WS_VSCROLL, 10,10,150,150,MainForm,0,hInstance,nil); SendMessage(ListBox1,WM_SETFONT,GetStockObject(ANSI_FIXED_FONT),0); SendMessage(ListBox1, LB_INSERTSTRING, 0, Integer(PChar(´List Box 3´))); while GetMessage(Msg,0,0,0) do DispatchMessage(Msg); end.
O problema que estou tendo é com relação a essa função:
function GetUrlFromIE (Handle: THandle; List: TStringList): boolean; stdcall; var hWndIE, hWndIEChild : HWND; Buffer : array[0..255] of Char; begin SendMessage(Handle, WM_GETTEXT, 255, integer(@Buffer[0])); hWndIE := FindWindow(´IEFrame´, Buffer); if hWndIE > 0 then begin hWndIEChild := FindWindowEx(hWndIE, 0, ´WorkerW´, nil); if hWndIEChild > 0 then begin hWndIEChild := FindWindowEx(hWndIEChild, 0, ´ReBarWindow32´, nil); if hWndIEChild > 0 then begin hWndIEChild := FindWindowEx(hWndIEChild, 0, ´ComboBoxEx32´, nil); if hWndIEChild > 0 then begin SendMessage(hWndIEChild, WM_GETTEXT, 255, integer(@Buffer)); List.AddObject(Buffer,TObject(hWndIE)); end; end; end; end; Result :=True; end;
Na qual recebe como parametro uma List: TStringList. Sendo que a TStringList é um metodo da Classe (CLASSES) do Delphi.
Preciso saber como criar uma StringList com a API do Windows sem utilizar os metodos do DELPHI.
Se alguem souber como posso fazer isso agradeço.
Sem mais,
Antônio.
Janbaceiredo
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)