AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Datei mit Fremdanwendung öffnen (ShellExecute)
Thema durchsuchen
Ansicht
Themen-Optionen

Datei mit Fremdanwendung öffnen (ShellExecute)

Ein Thema von newuser01 · begonnen am 30. Aug 2006 · letzter Beitrag vom 31. Aug 2006
Antwort Antwort
Seite 1 von 2  1 2      
newuser01

Registriert seit: 30. Aug 2006
248 Beiträge
 
Delphi 7 Professional
 
#1

Datei mit Fremdanwendung öffnen (ShellExecute)

  Alt 30. Aug 2006, 23:33
Hallo liebe Delphifreunde ich möchte gerne aus meinem Delphiprogramm herraus eine Datei mit einer anderen Anwenung öffnen. Um genau zu sein möchte ich eine mp3 Datei mit Winamp öffnen ich könnte dazu die Dateiverknüpfung der mp3 Dateien ausnutzen und es mit dem Aufruf

ShellExecute(Handle, 'open', PChar(sDateiname), nil, nil, sw_Show); realisieren. Wenn nun aber die mp3 Dateien nicht mit Winamp verknüpft sind funktioniert das ja nicht mehr Ich möchte also sicherstellen das die Dateien immer mit Winamp geöffnet werden wie kann ich das realisieren ?

Ich habe es schon so versucht was aber leider auch nicht funktioniert
ShellExecute(Handle,'open','C:\Programme\Winamp\winamp.exe',PChar('sDateiname'),'',SW_NORMAL);
Grüße
Holger
  Mit Zitat antworten Zitat
CG2003

Registriert seit: 8. Nov 2003
Ort: Hamburg
470 Beiträge
 
Delphi 2009 Professional
 
#2

Re: Datei mit Fremdanwendung öffnen (ShellExecute)

  Alt 30. Aug 2006, 23:39
Hallo,

vielleicht so?

ShellExecute(Handle,'open','C:\Programme\Winamp\winamp.exe ' + PChar('sDateiname'),'', '',SW_NORMAL);
Sebastian M.
Viele Grüße aus Hamburg


Meine Website: www.sebastian-mundt.com
  Mit Zitat antworten Zitat
Daniel G
(Gast)

n/a Beiträge
 
#3

Re: Datei mit Fremdanwendung öffnen (ShellExecute)

  Alt 30. Aug 2006, 23:42
Das sollte gehen:

ShellExecute(Handle,'open','C:\Programme\Winamp\winamp.exe',PChar('/ADD ' + sDateiname),'',SW_NORMAL); Dann wird der Eintrag der aktuellen Playlist hinzugefügt.
  Mit Zitat antworten Zitat
newuser01

Registriert seit: 30. Aug 2006
248 Beiträge
 
Delphi 7 Professional
 
#4

Re: Datei mit Fremdanwendung öffnen (ShellExecute)

  Alt 31. Aug 2006, 11:19
Hallo und ersteinmal Danke für eure schnellen Antworten

Die Idee von Daniel mit dem hinnzufügen zur Playlist ist nicht schlecht funktioniert nur leider nicht ganz es wird zwar was in der Playlist übernommen aber leider nur der zerlegte String also wenn sDateiname zb: D:\mp3\depeche mode - stripped.mp3 ist dann wird es in der Playlist so übernommen

depeche
mode
-
stripped

aber ansonsten ist die Idee gut wäre Super wenn es für Winamp und BPM studio gehen würde es muss aber nicht unbedingt in der Playlist eingetragen werden es reicht wenn der entsprechende Song abgespielt wird


Grüße
Holger
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

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

Re: Datei mit Fremdanwendung öffnen (ShellExecute)

  Alt 31. Aug 2006, 11:29
Moin Holger,

um den Fehler zu vermeiden, musst Du den Pfad noch in " einschliessen, wie Du es auch aus einer Konsole heraus aufgerufen tun müsstest:

Code:
PChar('/ADD [color=red][b]"[/b][/color]' + sDateiname[color=red][b]+'"'[/b][/color])
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
newuser01

Registriert seit: 30. Aug 2006
248 Beiträge
 
Delphi 7 Professional
 
#6

Re: Datei mit Fremdanwendung öffnen (ShellExecute)

  Alt 31. Aug 2006, 16:37
Danke für deine Hilfe Christian der Fehler ist jetzt behoben und die Datei wird von Winamp abgespielt.

Delphi-Quellcode:

//Datei wird normal abgespielt
ShellExecute(Handle,'open','C:\Programme\Winamp\winamp.exe',PChar('"' + sDateiname+'"'),'',SW_NORMAL);

//Datei wird in Playlist von Winamp übernommen
ShellExecute(Handle,'open','C:\Programme\Winamp\winamp.exe',PChar('/ADD "' + sDateiname+'"'),'',SW_NORMAL);
Eine Frage hätte ich noch. Weiß jemand die Parameter um die Datei in der Playlist von BPM Studio zu übernehmen ? Denn mit BPM Studio funktioniert die Sache nicht so recht es wird zwar gestartet aber der Song wird nicht abgespielt oder in der Playlist übernommen

Delphi-Quellcode:
 
//normal
ShellExecute(Handle,'open','C:\Programme\ALCATech\BPM-Studio Profi\BPM.exe',PChar('"' + sDateiname+'"'),'',SW_NORMAL);

//add Playlist
ShellExecute(Handle,'open','C:\Programme\ALCATech\BPM-Studio Profi\BPM.exe',PChar('/ADD "' + sDateiname+'"'),'',SW_NORMAL);
Grüße
Holger
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

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

Re: Datei mit Fremdanwendung öffnen (ShellExecute)

  Alt 31. Aug 2006, 16:50
Moin Holger,

da stellt sich mir die Frage, ob das Programm überhaupt parametergesteuert funktioniert...
Sollte das der Fall sein:
Wenn man einen Datentyp auf das Programm registriert, sollte man die Verknüpfung in der Registry finden.

Einfach mal in HKEY_CLASSES_ROOT nach dem Programmnamen suchen.
Wenn sich dieser in einem Key unter Shell\Open\Command als Standardwert befindet, könnte hier der Aufruf enthalten sein.

Bei registriertem Typ (Beispiel .mp3) kann man sich auch direkt dahin navigieren:

HKEY_CLASSES_ROOT\.mp3
Hier den Standardwert auslesen

HKEY_CLASS_ROOT\<ausgelesener Wert>\Shell\Open\Command
Hier befindet sich dann im Standardwert der Aufruf
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
newuser01

Registriert seit: 30. Aug 2006
248 Beiträge
 
Delphi 7 Professional
 
#8

Re: Datei mit Fremdanwendung öffnen (ShellExecute)

  Alt 31. Aug 2006, 17:21
Ich habe mal in HKEY_CLASSES_ROOT nach BPM suchen lassen und den Inhalt in eine Textdatei (Dateianhang) kopiert vielleicht hilft es dir ja weiter und in HKEY_CLASSES_ROOT\Shell\Open\Command\ steht als Standard nur %SystemRoot%\Explorer.exe /idlist,%I,%L

Grüße
Holger
Angehängte Dateien
Dateityp: txt bpm_276.txt (119,7 KB, 11x aufgerufen)
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

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

Re: Datei mit Fremdanwendung öffnen (ShellExecute)

  Alt 31. Aug 2006, 17:28
Moin Holger,

so wie es aussieht, hast Du nicht unter HKEY_CLASSES_ROOT, sondern unter HKEY_CURRENT_USER gesucht.
Oder aber es gibt in dem anderen Key keinen Eintrag.

Ausserdem habe ich nichts von HKEY_CLASSES_ROOT\Shell\Open\Command\ geschrieben

HKEY_CLASSES_ROOT\.mp3
Hier den Standardwert auslesen

HKEY_CLASS_ROOT\<ausgelesener Wert>\Shell\Open\Command
Hier befindet sich dann im Standardwert der Aufruf
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
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#10

Re: Datei mit Fremdanwendung öffnen (ShellExecute)

  Alt 31. Aug 2006, 18:01
bpm-studio unterstützt das nicht. Um sicher zu gehen schreib einfach eine email an den support von alcatehc (support@alcatech.de)
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  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 04:09 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