Delphi-PRAXiS
Seite 3 von 5     123 45      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi String an anderes Programm schicken (https://www.delphipraxis.net/116987-string-anderes-programm-schicken.html)

SimStar001 10. Jul 2008 09:12

Re: String an anderes Programm schicken
 
ok danke ich werde es gleich mal ausprobieren

Cyf 10. Jul 2008 14:13

Re: String an anderes Programm schicken
 
So, mit den Infos kann man doch schon mehr anfangen :wink:

Dann kann man auch konkret helfen, noch ein kleines Beispiel wie sowas aussehen kann, hier eine procedure die z.B eine '0' in ein neues Editor-Fenster schreibt (muss offfen sein), allerdings musst du erst rausfinden, wie bei dir das Eingabefeld heißt:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var Window: HWND;
begin
  Window := FindWindow('Notepad','Unbenannt - Editor');
  if Window <> 0 then
  begin
    Window := FindWindowEx(Window, 0, 'Edit', nil);
    PostMessage(Window, WM_KEYDOWN, 48, 0);
  end
  else showmessage('Konnte das Editorfenster nicht finden!');
end;

SimStar001 10. Jul 2008 14:38

Re: String an anderes Programm schicken
 
ok danke für das codebeispiel...


leider kenne ich mich mit den ganzen funktionen nicht aus.

ich hab mal folgendes programmiert

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var fenster : hwnd;
begin
  fenster := findwindow('IvAc','IvAc - 1.1.10.171 - EDDF_OBS');

  showmessage(inttostr(fenster));
end;

laut deinem beispiel hast du ja notepad.exe genommen.


so mein anzusprechendes programm heißt IvAc und im Fenster steht z.b. das hier "IvAc - 1.1.10.171 - EDDF_OBS"

so nun gibt mir die funktion aber immer 0 zurück!?

was mache ich falsch?

Luckie 10. Jul 2008 14:49

Re: String an anderes Programm schicken
 
Lass den ersten Parameter mal leer, das ist die Fensterklasse und nicht der Programmname.

SimStar001 10. Jul 2008 14:54

Re: String an anderes Programm schicken
 
hab das jetzt ausprobiert.... und geht immernoch net!
Delphi-Quellcode:
fenster := findwindow(nil,'IvAc - 1.1.10.171 - EDDF_OBS');

andyvdeu 10. Jul 2008 14:57

Re: String an anderes Programm schicken
 
Schau mal hier, vielleicht hilt das weiter
http://delphi.about.com/od/windowssh...m_copydata.htm

Luckie 10. Jul 2008 14:59

Re: String an anderes Programm schicken
 
Zitat:

Zitat von andyvdeu
Schau mal hier, vielleicht hilt das weiter
http://delphi.about.com/od/windowssh...m_copydata.htm

Ähm ja und was soll im das helfen? das würde nämlich voraussetzen, dass das andere Fenster auf die Nachricht reagiert, was ich aber stark bezweifele.

SimStar001 10. Jul 2008 15:01

Re: String an anderes Programm schicken
 
genau ich habe mal kurz reingesehen und das hilft mir nicht wirklich weiter... aber trotzdem danke

SimStar001 10. Jul 2008 15:06

Re: String an anderes Programm schicken
 
ich habe mal das hier ausprobiert und ich beokomme nicht mehr null zurück!
Delphi-Quellcode:
fenster := findwindow(nil,'');

wie kann ich jetzt herausfinden dass das auch meine anwendung ist die ich versuche anzusprchen!?

Luckie 10. Jul 2008 15:12

Re: String an anderes Programm schicken
 
damit wirst du irgendein Fenster gefunden haben, welches keinen Titel hat. Ich bemühe gerade verzweifelt die Suche, aber die läd sich zu Tode. Ein Mitglied hat mal ein Programm geschrieben, mit dem man die Fenster finden kann und welches einem sogar den passenden Code generiert.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:30 Uhr.
Seite 3 von 5     123 45      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz