AGB  ·  Datenschutz  ·  Impressum  







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

.exe Datei starten...

Ein Thema von Gratis-Zugangstool · begonnen am 22. Jan 2004 · letzter Beitrag vom 22. Jan 2004
Antwort Antwort
Seite 1 von 2  1 2      
Gratis-Zugangstool

Registriert seit: 22. Jan 2004
4 Beiträge
 
#1

.exe Datei starten...

  Alt 22. Jan 2004, 15:32
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 www.delphi-treff.de den Easy Delphi Helper heruntergeladen, der eine Befehlsübersicht besitzt.
Dort habe ich folgenden Befehl gefunden:

Delphi-Quellcode:
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 habe das einfach in die Unit1 reinkopiert.

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]
Windows RULEZ!
Windows ist das einzige Betriebssystem, dass Sicherheit, Stabilität, Zuverläßigkeit, Bugfreiheit und hohe Geschwindigkeit mit einfachster und durchdachter Bedienung kombiniert.
Da kann die Bastelware einfach nicht mithalten!
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#2

Re: .exe Datei starten...

  Alt 22. Jan 2004, 15:34
Ruf die Funktion einfach mit den benötigten Parametern auf.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Gratis-Zugangstool

Registriert seit: 22. Jan 2004
4 Beiträge
 
#3

Re: .exe Datei starten...

  Alt 22. Jan 2004, 15:53
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...
Windows RULEZ!
Windows ist das einzige Betriebssystem, dass Sicherheit, Stabilität, Zuverläßigkeit, Bugfreiheit und hohe Geschwindigkeit mit einfachster und durchdachter Bedienung kombiniert.
Da kann die Bastelware einfach nicht mithalten!
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#4

Re: .exe Datei starten...

  Alt 22. Jan 2004, 15:54
Du kannst im Quelltext (z.B. in einem Button Click Event) die Prozedur aufrufen:

ExecuteFile('C:\MeineDatei.exe'. '', '', False); mfG
mirage228
David F.

May the source be with you, stranger.
PHP Inspection Unit (Delphi-Unit zum Analysieren von PHP Code)
  Mit Zitat antworten Zitat
citybreaker
(Gast)

n/a Beiträge
 
#5

Re: .exe Datei starten...

  Alt 22. Jan 2004, 15:57
Kann man Dateien nicht viel leichter mit der ShellApi starten?
  Mit Zitat antworten Zitat
Benutzerbild von RomanK
RomanK

Registriert seit: 7. Jun 2002
Ort: Kirchheim unter Teck
1.036 Beiträge
 
Delphi 7 Personal
 
#6

Re: .exe Datei starten...

  Alt 22. Jan 2004, 16:26
Zitat von mirage228:
ExecuteFile('C:\MeineDatei.exe'. '', '', False);
Hoi,
du hast nen Tippfehler:
ExecuteFile('C:\MeineDatei.exe', '', '', False); Statt dem . muss da ein ,.
Roman Keller
Krieg ist Gottes Art den Amerikanern Geographie beizubringen!
  Mit Zitat antworten Zitat
Gratis-Zugangstool

Registriert seit: 22. Jan 2004
4 Beiträge
 
#7

Re: .exe Datei starten...

  Alt 22. Jan 2004, 16:31
Hi,
vielen Dank für eure Hilfe!
habe es mal damit probiert:
ExecuteFile('C:\MeineDatei.exe', '', '', False); Leider kommt da bloß folgende Fehlermeldung: Undefinierter Bezeichner 'ExecuteFile'
Windows RULEZ!
Windows ist das einzige Betriebssystem, dass Sicherheit, Stabilität, Zuverläßigkeit, Bugfreiheit und hohe Geschwindigkeit mit einfachster und durchdachter Bedienung kombiniert.
Da kann die Bastelware einfach nicht mithalten!
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#8

Re: .exe Datei starten...

  Alt 22. Jan 2004, 16:31
@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:
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;
mfG
mirage228
David F.

May the source be with you, stranger.
PHP Inspection Unit (Delphi-Unit zum Analysieren von PHP Code)
  Mit Zitat antworten Zitat
Benutzerbild von nailor
nailor

Registriert seit: 12. Dez 2002
Ort: Karlsruhe
1.989 Beiträge
 
#9

Re: .exe Datei starten...

  Alt 22. Jan 2004, 16:57
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
Michael N.
http://nailor.devzero.de/code/sharpmath/testing/ --- Tests, Feedback, Anregungen, ... aller Art sehr willkommen!
::: don't try so hard - it'll happen for a reason :::
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#10

Re: .exe Datei starten...

  Alt 22. Jan 2004, 17:54
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);
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 13:40 Uhr.
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