Einzelnen Beitrag anzeigen

Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#6
  Alt 31. Jan 2003, 21:08
Moin Daniel,

daran, dass es sich um eine CPL handelt hatte ich gar nicht gedacht

Probier's mal damit (bis auf das Ausführen des BM_CLICK ist's getestet)

Delphi-Quellcode:
procedure TfrmMAIN.Button1Click(Sender: TObject);

  function EnumChildProc(const AhWindow : DWORD;const ADummy : PDWORD) : Boolean; stdcall;

  var
    pBuffer : PChar;
    dwSize : DWORD;

  begin
    Result := true;
    dwSize := 255;
    pBuffer := AllocMem(dwSize);
    try
      if GetClassName(AhWindow,pBuffer,dwSize) = 0 then
      begin
        exit;
      end;
      if trim(pBuffer) <> 'Buttonthen
      begin
        exit;
      end;
    finally
      FreeMem(pBuffer,dwSize);
    end;
    dwSize := SendMessage(AhWindow,WM_GETTEXTLENGTH,0,0)+1;
    if dwSize = 0 then
    begin
      exit;
    end;
    pBuffer := AllocMem(dwSize);
    try
      SendMessage(AhWindow,WM_GETTEXT,dwSize,lparam(pBuffer));
      if trim(pBuffer) = '"&Verlauf" leerenthen
      begin
        SendMessage(AhWindow,BM_CLICK,0,0);
        Result := false;
      end;
    finally
      FreeMem(pBuffer,dwSize);
    end;
  end;

var
  hWindow : DWORD;

begin
  hWindow := FindWindow(nil,'Eigenschaften von Internet');
  if hWindow <> 0 then
  begin
    EnumChildWindows(hWindow,@EnumChildProc,0);
  end;
end;
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat