Announcement

Collapse
No announcement yet.

Externes Prog starten (delphi5)

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Externes Prog starten (delphi5)

    Hi

    ich stelle hier die allseits beliebte Anfängerfrage, aber -aufgepasst- mit Variationen:
    Wie kann ich eine Datei mit dem benutzerdefinierten Standardprogram aus einem Delphi5-Programm starten. ShellExecute klappt nicht (wieso?). Der Befehl muss als Parameter auch z.B. datei.doc übernehmen können und dann Word starten.
    Um jegliche Hinweise oder Lösungsansätze wäre ich dankbar.

    MfG

    Raphael Meissler

  • #2
    Hallo Raphael,
    falls ich die Frage richtig verstehe müsste es so funktionieren(mit shellexecute):
    <br>
    <br>
    procedure TForm1.Button1Click(Sender: TObject);<br>
    begin<br>
    shellexecute(handle, 'open','c:\Eigene Dateien\Bertolt Brecht.doc',nil,'',sw_shownormal);<br>
    end;<br>
    <br>
    Ich hoffe es hat dir geholfen

    Comment


    • #3
      <i>ShellExecute klappt nicht</i><BR>
      Wieso? Welche Fehlermeldung bekommst du?

      2 mögliche Fehlerquellen:<BR>
      1. Hast du die ShellAPI in der Usesliste eingetragen?<BR>
      2. Werden alle übergebenen Variablen in PChars umgewandelt?

      Motz

      Comment


      • #4
        Danke für die Tipps!

        Also, ich habe die Unit in der uses-Liste eingetragen und die Parameter stehen im Typ PChar. Könnte es allenfalls sein, dass meine shellapi-unit beschädigt ist? Ich installiere alles mal neu, vielleicht funktionierts ja dann. Wenn jemand eine alternative zu shellexecute wüsste, wäre ich sehr dankbar!

        Thx an alle

        Raphael Meissle

        Comment


        • #5
          Hatte heute auch das Problem das Shellexecute nichts machte, aber ich hab einfach die Lösung von alex genommen (angepasst!) und dann ging es!

          verstehe nicht wo dein Problem ist!
          wenn deine unit beschädigt ist denke ich schon das du dann eine meldung bekommst !

          BINE:

          Comment


          • #6
            Vielleicht liegt es einfach daran, das Du als Ausführungsverzeichnis '' (einen Leerstring) übergeben hast (was eigentlich kein gültiges Verzeichnis ist).<br>
            Um kein Verzeichnis vorzugeben sollte <b>nil</b> angegeben werden.<p>
            Gruß Nic

            Comment


            • #7
              bei mir geht das aber einwandfrei :

              ich hab folgenden aufruf:

              ShellExecute(Application.Handle, 'open', PChar(importpfad), nil,'', SW_SHOWNORMAL)

              Comment

              Working...
              X