AGB  ·  Datenschutz  ·  Impressum  







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

Programm zu Dokument finden...

Ein Thema von Hazardos · begonnen am 29. Mär 2004 · letzter Beitrag vom 30. Mär 2004
Antwort Antwort
Hazardos

Registriert seit: 8. Okt 2003
Ort: Alfeld
73 Beiträge
 
#1

Programm zu Dokument finden...

  Alt 29. Mär 2004, 14:08
Hallo,
ich möchte ein Dokument mit dem dazu registrierten Programm öffnen.
Das geht ja für gewöhnlich mit Shellexecute. Nun möchte ich jedoch noch einen weiteren Parameter für das Programm angeben.
Beispiel: Powerpoint
Ich habe eine Präsentation, die direkt gestartet werden soll. Also sieht die Verknüpfung ungefähr so aus:
"C:\...\POWERPNT.EXE" /s "C:\...\Präsentation.ppt"
so würde es funktioniert, jedoch kenne ich den Programmpfad nicht, da das Programm auch auf anderen Rechnern aufgerufen werden soll. Villeicht kann man mittels der Windows-registry den Pfad des Programms rausfinden??

Bin dankbar für jede Hilfe!!
Jörn
  Mit Zitat antworten Zitat
Wheelie

Registriert seit: 21. Okt 2003
Ort: Dresden
177 Beiträge
 
#2

Re: Programm zu Dokument finden...

  Alt 29. Mär 2004, 14:45
An dieser Stelle wäre es vermutlich klüger das Programm (MS Powerpoint) mit dem Dateipfad als Parameter aufzurufen.

Geht auch mit ShellExecute:
ShellExecute(0, 'open', PChar('powerpnt.exe'), PChar('C:\presentation.ppt'), PChar('C:\Office\'), SW_ShowNormal);
  Mit Zitat antworten Zitat
Hazardos

Registriert seit: 8. Okt 2003
Ort: Alfeld
73 Beiträge
 
#3

Re: Programm zu Dokument finden...

  Alt 29. Mär 2004, 14:58
Das ist ja gerade mein Problem, ich weis nicht, wie der Programmpfad lautet, da der wohl immer unterschiedlich ist.
Wie bekomme ich den kompletten Programmpfad des Programmes raus, das mit den Dateien *.ppt verknüpft ist?
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

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

Re: Programm zu Dokument finden...

  Alt 29. Mär 2004, 15:12
Solltest du aus der Registry auslesen können HKEY_CLASSES_ROOT wo der Dateityp mit dem Porgramm verknüft ist.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Hazardos

Registriert seit: 8. Okt 2003
Ort: Alfeld
73 Beiträge
 
#5

Re: Programm zu Dokument finden...

  Alt 29. Mär 2004, 16:33
Weist du oder irgendjemand, wie man das machen kann??
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

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

Re: Programm zu Dokument finden...

  Alt 29. Mär 2004, 17:19
Mit der Klasse TRegistry, würde ich jetzt mal so ganz unbedarft sagen, näheres dazu in der Hilfe.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#7

Re: Programm zu Dokument finden...

  Alt 29. Mär 2004, 17:29
Hi!

Kann man es nicht einfach so machen?

ShellExecute(0, 'open','C:\Dokumente und Einstellungen\Papa\Vorlagen\powerpnt.ppt',nil,nil, SW_ShowNormal); Ciao fkerber
Frederic Kerber
  Mit Zitat antworten Zitat
Hazardos

Registriert seit: 8. Okt 2003
Ort: Alfeld
73 Beiträge
 
#8

Re: Programm zu Dokument finden...

  Alt 29. Mär 2004, 17:41
Das hatte ich ja auch erst so, jedoch möchte ich dem Programm noch einen Parameter hinzufügen. Das geht nur, wenn man die .exe angibt, glaube ich.
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#9

Re: Programm zu Dokument finden...

  Alt 29. Mär 2004, 22:37
Moin Hazardos,

zum einen könntest Du einfach, bezogen auf fkerbers Beispiel, mal den Parameter einfach vor den Pfad zu der Datei setzen, mit Blank abgesetzt, zum anderen kannst Du den Pfad, wenn's sein muss auch auslesen, indem Du aus

HKEY_CLASSES_ROOT\<Extension der jeweiligen Datei incl. Punkt>

den Standardwert ausliest z.B. in die Variable sRegType

Anschliessend aus

HKEY_CLASSES_ROOT\<Wert aus sRegType>\shell\open\command

wieder den Standardwert auslesen, z.B. in die Variable sCommand.

Fängt der Inhalt von sCommand mit einem " an, so muss Du nur das dazugehörige " finden.
Alles dazwischen ist dann der Pfad zum Programm.

Wenn der Inhalt von sCommand nicht mit " anfängt, so wird der Pfad durch das erste Blank in sCommand begrenzt, oder sCommand enthält schon den ganzen Pfad.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Hazardos

Registriert seit: 8. Okt 2003
Ort: Alfeld
73 Beiträge
 
#10

Re: Programm zu Dokument finden...

  Alt 30. Mär 2004, 11:46
So funktionierts...
thx @ all!!!
Jörn
  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 11: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