AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Was sind Structures

Ein Thema von willnix · begonnen am 15. Apr 2007 · letzter Beitrag vom 17. Apr 2007
 
willnix

Registriert seit: 14. Apr 2007
Ort: Heidelberg
27 Beiträge
 
Delphi 7 Professional
 
#26

Re: Was sind Structures

  Alt 16. Apr 2007, 19:27
Ich verzweifel noch daran.
Jetzt sind die Dinger Declariert, aber dafür bekomme ich immer einen leeren String zurück.
Ich habe schon versucht das Wordpad Rich Edit auszulesen, ICQ Fenster auszulesen, ein Rich Edit im eigenen Programm auszulesen, alles ohne Erfolg.
Immer ist die VAriable mit dem empfangen Text leer.
Willnix

Achja hier ist der Code den ich für Wordpad beutzt habe:

Delphi-Quellcode:
unit icq;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ShellAPI, ComCtrls, RichEdit;

type
  LPGETTEXTEX = ^GETTEXTEX;
  GETTEXTEX = record
    cb: DWORD;
    flags: DWORD;
    codepage: UINT;
    lpDefaultChar: LPCSTR;
    lpUsedDefaultChar: PBOOL;
  end;
  TForm1 = class(TForm)
    Button1: TButton;
    RichEdit1: TRichEdit;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  tex: GETTEXTEX;
  pc: PChar;
  wnd: HWND;

implementation

{$R *.dfm}

function FindWindowEx2(hParent: HWND; ChildClassName: string; ChildNr: Word): HWND;
var
  i: Word;
  hChild: HWND;
begin
  hChild := 0;
  Result := 0;
  ChildNr := ChildNr - 1;
  for i := 0 to ChildNr do
  begin
    hChild := FindWindowEx(hParent, hChild, PChar(ChildClassName), nil);
    if hChild = 0 then
      Exit;
    Result := hChild;
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  wnd: HWND;
begin
  tex.cb := SizeOf(pc);
  tex.flags := GT_USECRLF;
  tex.codepage := CP_ACP;
  tex.lpDefaultChar := nil;
  tex.lpUsedDefaultChar := nil;
  wnd := FindWindow('WordPadClass','Dokument - WordPad');
  wnd := FindWindowEx(wnd, 0, 'RICHEDIT50W', nil);
  SendMessage(wnd, EM_GETTEXTEX, WPARAM(@tex), LPARAM(@pc[0]));
  if pc = 'then begin
  ShowMessage('NIX AUSGELESEN!');
  end
  else begin
  RichEdit1.Text := pc;
  end;
end;
end.
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:06 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz