Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Mit einem externen Programm arbeiten? (https://www.delphipraxis.net/32388-mit-einem-externen-programm-arbeiten.html)

malo 22. Okt 2004 13:45


Mit einem externen Programm arbeiten?
 
Gibt es in Delphi irgendeine Möglichkeit, ein externes Programm zu starten und in diesem externen Programm dann Befehle zu geben? Das starten ist ja kein Problem(ShellExecute), aber wie kann ich dann meinem Programm A sagen, er soll einen bestimmten Button in Programm B drücken? Gibt es diese Möglichkeit überhaupt?

mirage228 22. Okt 2004 13:59

Re: Mit einem externen Programm arbeiten?
 
Hi,

ShellExecuteA() hat einen Parameter, der "Parameters: PChar" heisst. Dort kannst Du an das Zielprogramm paramter übermitteln.

In Deinem eigenen Programm kannst Du mit Delphi-Referenz durchsuchenParamStr und Delphi-Referenz durchsuchenParamCount arbeiten.

mfG
mirage228

StefanDP 22. Okt 2004 14:03

Re: Mit einem externen Programm arbeiten?
 
Hier im Forum suchenwm_copydata

malo 22. Okt 2004 16:25

Re: Mit einem externen Programm arbeiten?
 
Also, irgendwie komm ich mit den ganzen Sachen überhaupt nicht klar. Kennt nicht einer ein Tutorial dazu oder sowas? Die Sachen zu WM_COPYDATE, die ich gefunden hab, geben mir entweder Informationen, die ich nicht gebrauchen kann, oder welche, die ich einfach nicht verstehe Oo

Und wie funktioniert das mit ParamStr und ParamCount? In der Delphihilfe hab ich - wiedermal - keine anständige Hilfe bekommen. Nur ein Codestück, dass irgendwie nicht funktioniert Oo :gruebel:

irgendwie hab ich dabei keinen plan... :pale:

jim_raynor 22. Okt 2004 16:27

Re: Mit einem externen Programm arbeiten?
 
Hast du dieses externe Programm selbst geschrieben? Wenn nicht hast du schlechte Karten es von aussen zu steuern. Was soll das für ein Programm sein?

mirage228 22. Okt 2004 16:29

Re: Mit einem externen Programm arbeiten?
 
Hoi,

also wenn Du in Paramater "Parameter" von ShellExecute schreibst
Zitat:

'"C:\Mein Ordner\MeinProgramm.exe" Button1'
Schreibst, dann ist
Delphi-Quellcode:
ParamStr(1) = 'C:\Mein Ordner\MeinProgramm.exe'
ParamStr(2) = 'Button1'
ParamStr(0) ist der Pfad der eigenen Anwendung.

Ich hoffe das hilft dir.

mfG
mirage228

malo 22. Okt 2004 16:50

Re: Mit einem externen Programm arbeiten?
 
Ich hab jetzt, versuchsweise, ein Programm geschrieben, dass per Buttonklick ein Textfenster öffnet. Soweit, so gut. Hab ich abgespeichert und 'ne neue Application geöffnet. Ein 2. Programm geschrieben mit einem Button.

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
  ShellExecute(Handle, 'open', PChar('F:\testprog1\Programm1.exe' ), nil, nil, SW_NORMAL);
end;
Damit will ich jetzt erstmal mein Programm1 starten. Wenn ich jetzt als Zielpfad eingebe
Delphi-Quellcode:
('"F:\testprog1\Programm1.exe" Button1')
passiert nichts... wie muss ich das also machen, um im Programm1.exe den Button zu "klicken" ? Kann mir vielleicht jemand den Code vervollständigen?

Luckie 22. Okt 2004 16:54

Re: Mit einem externen Programm arbeiten?
 
So wird das nichts. So lange das Zielprogramm keine Parameter auswertet, bringt es nichts ihm Parameter beim Aufruf mit zu geben.

Willst du zum Beispiel einen Button in einem fremden Fenster anklicken, dann such dir das Fenster mit Hier im Forum suchenFindWindow, den Button mit Hier im Forum suchenFindWindowex und dann schickst du die Nachricht Hier im Forum suchenBN_CLICKED mit Hier im Forum suchenSendMessage an den Button.

mirage228 22. Okt 2004 16:57

Re: Mit einem externen Programm arbeiten?
 
Hi,

das kann ja auch nur funktionieren, wenn das Zielprogramm von Dir selbst ist und auf die Parameter reagiert :D

ansonsten musste wohl mit FindWindow etc. arbeiten, wie Luckie vorgeschlagen hat ;)

mfG
mirgae228

malo 22. Okt 2004 17:03

Re: Mit einem externen Programm arbeiten?
 
Also, das wird mir hier nun etwas zu kompliziert. Ich kümmere mich vielleicht am Wochenende oder Anfang nächste Woche drum, aber im Moment hab ich nur das Gefühl, dass ich's eh nicht kapier... naja, trotzdem danke, für die Hilfe, aber ich blick da weniger als gar nicht durch :pale:


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:21 Uhr.
Seite 1 von 2  1 2      

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