Entwickler-Ecke
Windows API - Anderes Programm öffnen?
*Knust* - Fr 18.07.08 11:38
Titel: Anderes Programm öffnen?
Hi!
Ich würde gerne mal wissen, welche möglichkeiten es gibt, ein anderes programm zu öffnen.
Ich habe nämlich folgendes problem: Ich möchte automatisch ein Video-bearbeitungsprogramm starten lassen, aber anscheinend kann man das nur manuell starten.
Ich habe es mittlerweile mit shellexecute, winexec und einer batchdatei versucht, alles funktioniert nicht, ich bekomme den windowsfehler: das programm konnte nicht richtig installiert werden, neuinstallation könnte das problem beheben...
aber wenn ich es per mausklick starte, geht es reibungslos...
Gibt es noch andere Wege ein Programm zu starten?
Ich nehme an, dass die hersteller des programms nicht wollten, dass man ihr programm wieder in ein anderes einbauen kann und es als seins veröffentlichen kann, aber das will ich auch nicht, ich will mein programm nur auf meinem pc benutzen...
Hat jemand ne ahnung?
mit freundlichen Grüßen
Knust
Fabian E. - Fr 18.07.08 11:42
wenn du das Programm über eine Verknüpfung startest, schaue dir doch mal an ob Parameter mit übergeben werden. vielleicht ist das das Problem.
Alternativ gäbe es noch CreateProcess.
*Knust* - Fr 18.07.08 11:45
Wo sieht man an ner Verknüpfung ob Parameter übergeben werden?
Danke schonmal ;)
Fabian E. - Fr 18.07.08 11:52
Rechtsklick auf die Verknüpfung dann Registerkarte Verknüpfung und dann bei "Ziel".
*Knust* - Fr 18.07.08 11:55
Nö, es wird nix übergeben und createprocess geht auch nich... genau die gleiche meldung...
:(
Fabian E. - Fr 18.07.08 11:57
liegt es vielleicht an deinem projekt? hast du mal ein leeres gemacht mit nur dieser Zeile?
*Knust* - Fr 18.07.08 11:59
Ja gerade eben zum ausprobieren...
Die zeilen stehen drin:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
| var Form1: TForm1; StartupInfo : TStartupInfo; ProcessInfo : TProcessInformation;
procedure TForm1.FormCreate(Sender: TObject); begin StartupInfo.dwFlags := STARTF_USESHOWWINDOW OR STARTF_USEPOSITION OR STARTF_USESIZE ; StartupInfo.wShowWindow := SW_SHOWDEFAULT; CreateProcess (nil,pChar('C:\Programme\AutoGK\AutoGK.exe'),nil,nil,False,NORMAL_PRIORITY_CLASS,nil,nil,startupinfo,ProcessInfo); end; |
Und das steht bei shellexecute da:
Delphi-Quelltext
1:
| shellexecute(0,PChar('open'),pchar(progpfad2),nil,nil,SW_SHOW); |
Fabian E. - Fr 18.07.08 12:02
Übergib mal bei ShellExecute statt das handle deiner Anwendung. Vielleicht hilft das was. Glaub ich zwar nicht aber mal sehen... Was gibt ShellExecute für einen Wert zurück?
*Knust* - Fr 18.07.08 12:14
was soll ich als handle übergeben???
Also es kommt 42 raus bei shellexecute...wenn das ma kein zeichen is ^^
Fabian E. - Fr 18.07.08 12:28
einfach die Variable Handle, sofern du eine VCL-Anwedung hast.
*Knust* - Fr 18.07.08 12:37
ne geht auch nich :(
ZeitGeist87 - Fr 18.07.08 12:39
Delphi-Quelltext
1:
| shellexecute(application.handle,'open',pchar(ExtractFileName(progpfad2),nil,pchar(ExtractFilePath(progprad2),SW_SHOWNormal); |
Delete - Fr 18.07.08 12:43
TStartUpInfo muss innitialisiert werden glaub ich:
Delphi-Quelltext
1:
| StartupInfo.cb := Sizeof(TStartupInfo); |
:roll:
///Blöde verschreiber
*Knust* - Fr 18.07.08 12:43
auch nich :(
Delete - Fr 18.07.08 12:45
Was war gemeint das von
ZeitGeist87 oder meins?!
*Knust* - Fr 18.07.08 13:01
beides geht nich immer die gleiche meldung...
*Knust* - Fr 18.07.08 13:07
whoho!!!
DAS von zeitgeist geht doch!!!
DANKE!
iwie hab ich mich wohl beim ersten versuch verschrieben...
DANKE DANKE!
Knust
Fabian E. - Fr 18.07.08 13:30
Komisch...seid wann muss man das denn so machen? Naja egal ;) Solangs jetzt geht :)
*Knust* - Fr 18.07.08 13:39
Wusste ich auch nich, meine variante hat beim anderen programm auch tadellos geklappt....
Delete - Fr 18.07.08 14:19
hmmmm...Wieso hat meine Variante nicht geklappt?Was zeigt er für ein fehler an?
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!