![]() |
.exe Datei starten...
Hi,
ersteinmal möchte ich sagen, dass ich kein Programmierer bin und lediglich ein kleines Programm mit Delphi basteln möchte, das auch .exe Dateien starten können soll. Ich habe wirklich nicht viel Ahnung vom Programmieren. Daher habe ich mir von der Seite ![]() Dort habe ich folgenden Befehl gefunden:
Delphi-Quellcode:
Ich habe das einfach in die Unit1 reinkopiert.
procedure ExecuteFile(const AFilename: String;
AParameter, ACurrentDir: String; AWait: Boolean); var si : TStartupInfo; pi : TProcessInformation; begin if Length(ACurrentDir) = 0 then begin ACurrentDir := ExtractFilePath(AFilename); if ACurrentDir[Length(ACurrentDir)] = '' then Delete(ACurrentDir, Length(ACurrentDir), 1); end; FillChar(si, SizeOf(si), 0); with si do begin cb := SizeOf(si); dwFlags := STARTF_USESHOWWINDOW; wShowWindow := SW_NORMAL; end; FillChar(pi, SizeOf(pi), 0); if Length(AParameter) = 0 then AParameter := Format('"%s"', [AFilename]) else AParameter := Format('"%s" %s', [AFilename, AParameter]); if CreateProcess(Nil, PChar(AParameter), Nil, Nil, False, CREATE_DEFAULT_ERROR_MODE or CREATE_NEW_CONSOLE or NORMAL_PRIORITY_CLASS, Nil, PChar(ACurrentDir), si, pi) then begin try if AWait then WaitForSingleObject(pi.hProcess, INFINITE); finally CloseHandle(pi.hProcess); CloseHandle(pi.hThread); end; end; end; Ich möchte, dass wenn ich auf einen Button drücke, ein Programm gestartet wird. Was muss ich bei diesem Button eingeben, um dies zu erreichen? [edit=Luckie]Delphi-Tags ergänzt. Beim nächsten mal bitte sleber machen. Danke. Mfg, Luckie[/edit] |
Re: .exe Datei starten...
Ruf die Funktion einfach mit den benötigten Parametern auf.
|
Re: .exe Datei starten...
Vielen Dank für deine schnelle Antwort.
Sorry für das mit den Delphi-Tags. Bin noch neu, aber beim nächsten Mal werde ich dran denken. Ehrlich gesagt, habe ich überhaupt keine Ahnung, was ich da für eine Funktion aufrufen muss... |
Re: .exe Datei starten...
Du kannst im Quelltext (z.B. in einem Button Click Event) die Prozedur aufrufen:
Delphi-Quellcode:
mfG
ExecuteFile('C:\MeineDatei.exe'. '', '', False);
mirage228 |
Re: .exe Datei starten...
Kann man Dateien nicht viel leichter mit der ShellApi starten?
|
Re: .exe Datei starten...
Zitat:
du hast nen Tippfehler:
Delphi-Quellcode:
Statt dem . muss da ein ,.
ExecuteFile('C:\MeineDatei.exe', '', '', False);
|
Re: .exe Datei starten...
Hi,
vielen Dank für eure Hilfe! habe es mal damit probiert:
Delphi-Quellcode:
Leider kommt da bloß folgende Fehlermeldung: Undefinierter Bezeichner 'ExecuteFile'
ExecuteFile('C:\MeineDatei.exe', '', '', False);
|
Re: .exe Datei starten...
@FuckRacism: Achso, Danke, war mir nicht aufgefallen. ^^
@Gratis-Zugangstool: Du musst eine Deklaration in den private oder public abschnitt deiner Form machen. Das sieht etwa so aus:
Delphi-Quellcode:
mfG
type
TForm1 = class(TForm) { hier stehen die ganzen Komponenten ... } private { ... } public // z.B. hier: procedure ExecuteFile(const AFilename: String; AParameter, ACurrentDir: String; AWait: Boolean); end; mirage228 |
Re: .exe Datei starten...
mach das, was mirage gesagt hat UND unten im Quelltext mach noch das:
procedure TForm1.ExecuteFile(const AFilename: String; AParameter, ACurrentDir: String; AWait: Boolean); ^^irgendwie geht FETT nicht im delphi-Tag, daher ohne |
Re: .exe Datei starten...
Das ist die einfachste Möglichkeit, eine exe zu starten:
Delphi-Quellcode:
uses ShellAPI;
... ShellExecute(0, Nil, PChar('C:\Programme\Datei.exe'), Nil, Nil, SW_NORMAL); |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:32 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