AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Open Dialog (ShellExecute) Frage 2
Thema durchsuchen
Ansicht
Themen-Optionen

Open Dialog (ShellExecute) Frage 2

Ein Thema von Trouble_Maker · begonnen am 24. Aug 2003 · letzter Beitrag vom 24. Aug 2003
Antwort Antwort
Benutzerbild von Trouble_Maker
Trouble_Maker

Registriert seit: 30. Jan 2003
244 Beiträge
 
Delphi 6 Personal
 
#1

Open Dialog (ShellExecute) Frage 2

  Alt 24. Aug 2003, 19:25
Hiho,
so nachdem ich jetzt weiss, wie man ein beliebiges Prog mit dem OpenDialog öffen kann, kommt meine zweite Frage:

Ich möchte nun, dass das Programm nicht sofort gestartet wird, sondern dass sich sozusagen das Prog nur die Exe und den Pfad "merkt".

Ich arbeite nämlich zurzeit wieder mal an einer Art "Wecker" und möchte erst zu einer bestimmten Uhrzeit ein bestimmtes Prog starten/beenden!

Könnt ihr mir einen Tipp geben, wie ich das Prog auswählen kann (OpenDialog) aber dies nicht sofort sondern erst später zu der Uhrzeit geöffnet wird ?!?


Wäre echt nett.


cu Trouble_Maker
  Mit Zitat antworten Zitat
Chewie

Registriert seit: 10. Jun 2002
Ort: Deidesheim
2.886 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: Open Dialog (ShellExecute) Frage 2

  Alt 24. Aug 2003, 19:27
In OpenDialog.Filename wird der Dateiname solange gespeicher, bis eine neue Datei ausgewählt wird.
Martin Leim
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
  Mit Zitat antworten Zitat
Benutzerbild von Trouble_Maker
Trouble_Maker

Registriert seit: 30. Jan 2003
244 Beiträge
 
Delphi 6 Personal
 
#3

Re: Open Dialog (ShellExecute) Frage 2

  Alt 24. Aug 2003, 19:30
Zitat von Chewie:
In OpenDialog.Filename wird der Dateiname solange gespeicher, bis eine neue Datei ausgewählt wird.

hmm ... ja das mag ja sein, aber ich möchte ja, dass die Datei die ich auswähle nicht geöffnet wird, sondern nur das Verzeichnis "gespeichert" wird.

Ich hab so ne Vermutung, dass es etwas mit "ExtractFileDir" zu tun haben könnte.
Hab aber ehrlichgesagt kA.


cu Trouble_Maker
  Mit Zitat antworten Zitat
Benutzerbild von toms
toms
(CodeLib-Manager)

Registriert seit: 10. Jun 2002
4.648 Beiträge
 
Delphi XE Professional
 
#4

Re: Open Dialog (ShellExecute) Frage 2

  Alt 24. Aug 2003, 19:33
Zitat:
aber ich möchte ja, dass die Datei die ich auswähle nicht geöffnet wird
Warum sollte die Datei geöffnet werden. Der OpenDialog öffnen keine Datei/führt keine Datei aus, sondern dient nur zum Auswählen einer oder mehreren Datei(en).

Zitat:
sondern nur das Verzeichnis "gespeichert" wird.

Ich hab so ne Vermutung, dass es etwas mit "ExtractFileDir" zu tun haben könnte.
Genau!

tempstr := ExtractFileDir(OpenDialog.Filename);
Thomas
  Mit Zitat antworten Zitat
Benutzerbild von Trouble_Maker
Trouble_Maker

Registriert seit: 30. Jan 2003
244 Beiträge
 
Delphi 6 Personal
 
#5

Re: Open Dialog (ShellExecute) Frage 2

  Alt 24. Aug 2003, 19:40
huhu

@toms: ja richtig: war einfach nen Denkfehler, weil mein Code so aussieht:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
  if OpenDialog1.execute then
  begin
    ShellExecute(Handle, nil, PChar(OpenDialog1.FileName), nil, nil, SW_SHOW);
  end;
daher ...

danke werde ich später mal ausprobieren ...


cu Trouble_Maker
  Mit Zitat antworten Zitat
Benutzerbild von Trouble_Maker
Trouble_Maker

Registriert seit: 30. Jan 2003
244 Beiträge
 
Delphi 6 Personal
 
#6

Re: Open Dialog (ShellExecute) Frage 2

  Alt 24. Aug 2003, 20:59
Hiho ...

so habs jetzt auch hinbekommen. Habs aber anders gemacht (@toms]:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
  if OpenDialog1.Execute then
  begin
    panel2.caption:= ExtractFileName(OpenDialog1.FileName);
    if panel2.Caption = 'then
      panel2.hint:= ''
       else
         begin
          panel2.ShowHint := true;
          panel2.hint:= ExtractFilePath(OpenDialog1.FileName);
         end;
  //ShellExecute(Handle, nil, PChar(OpenDialog1.FileName), nil, nil, SW_SHOW);
  end;
end;
Delphi-Quellcode:
procedure TForm1.Timer1Timer(Sender: TObject);
begin
  panel1.caption := TimeToStr(now);
  if panel1.caption = MaskEdit1.text then
  begin
    //timer1.enabled:=false;
    //Showmessage(TimeToStr(now));
    ShellExecute(Handle, nil, PChar(OpenDialog1.FileName), nil, nil, SW_SHOW);
  end;
end;
also so klappts bei mir, auch ohne dem "ExtractFileDir".

Hab jetzt noch ne andere Frage, aber die werde ich morgen posten, oder mal sehn ob ich´s allein hinbekomme ...

bis dann


Trouble_Maker
  Mit Zitat antworten Zitat
Antwort Antwort


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 12:19 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