AGB  ·  Datenschutz  ·  Impressum  







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

Mp3's mit eigenem programm öffnen

Ein Thema von Alex_ITA01 · begonnen am 27. Jan 2004 · letzter Beitrag vom 29. Jan 2004
Antwort Antwort
Seite 1 von 2  1 2      
Alex_ITA01

Registriert seit: 22. Sep 2003
1.115 Beiträge
 
Delphi 12 Athens
 
#1

Mp3's mit eigenem programm öffnen

  Alt 27. Jan 2004, 09:04
hallo erstmal,
ich habe mir ein kleinen player geschrieben und kann dort mp3,wav und ogg laden und in einer listbox anzeigen und abspielen.geht es jetzt irgendwie das wenn ich im windows auf ne mp3 klicke und sage öffnen mit und dann meine exe angebe und das lied dann genauso in der liste mit drinne steht? hoffe wisst was ich mein

mfg Alex
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

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

Re: Mp3's mit eigenem programm öffnen

  Alt 27. Jan 2004, 09:14
sollte gehen wenn du dein programm richtig geschrieben hast. Um die Parameter zu bekommen nimm ParamStr oder hab ich die Frage falsch verstanden??
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Alex_ITA01

Registriert seit: 22. Sep 2003
1.115 Beiträge
 
Delphi 12 Athens
 
#3

Re: Mp3's mit eigenem programm öffnen

  Alt 27. Jan 2004, 09:20
weiß nciht ob du sie falsch verstanden hast...
also ich habe ganz normale listbox und ein laden button,da wo die dateien in die liste geladen werden eben.aber nun will ich die mp3 im windos öffnen aber mein programm lädt die dann nicht rein in die listbox das irgendwie komisch weiß nicht woran es liegt
  Mit Zitat antworten Zitat
Benutzerbild von Treffnix
Treffnix

Registriert seit: 25. Jun 2003
Ort: AC
740 Beiträge
 
Delphi 7 Professional
 
#4

Re: Mp3's mit eigenem programm öffnen

  Alt 27. Jan 2004, 10:04
Zunächst musst du Windows ja mal erzählen, dass du .mp3-Dateien mit deinem Programm öffnen möchtest, anstatt mit dem Mediaplayer oder Winamp...
Sprich: du musst Dateien mit der Endung .mp3 mit deinem Programm verknüpfen.
Wenn du das gemacht hast, sollte Windows beim Doppelklick auf eine MP3-Datei z.B. im Explorer dein Programm starten und ihm den Dateinamen als Parameter übergeben. Diesen Parameter musst du dann halt im Programm verarbeiten.
  Mit Zitat antworten Zitat
Brüggendiek

Registriert seit: 13. Dez 2002
Ort: Dortmund
275 Beiträge
 
Delphi 5 Standard
 
#5

Re: Mp3's mit eigenem programm öffnen

  Alt 27. Jan 2004, 13:05
Hallo!

@Treffnix:
Zitat von Alex_ITA01:
geht es jetzt irgendwie das wenn ich im windows auf ne mp3 klicke und sage öffnen mit und dann meine exe angebe und das lied dann genauso in der liste mit drinne steht
Dadurch ist das Registrieren der Erweiterung nicht nötig.

Die neue Datei soll in die Playliste aufgenommen werden.
Deshalb ist etwas an Aufwand nötig. Beim Öffnen einer Datei mit einem Programm (egal ob es das zur Endung registrierte ist, "Öffnen mit" oder ein eigener Eintrag im Kontextmenü benutzt wird) startet Windows eine weitere Instanz des Programmes. Dieses erhält als 1. Parameter den vollständigen Namen der zu öffnenden Datei. Sind mehrere Dateien markiert, wird für jede das Programm einmal gestartet.

Es muß also der wiederholte Programmstart festgestellt werden und dann muß man die Dateinamen an die erste Instanz übermitteln.
Der Parameter des Programms (Dateiname) steht in "Paramstr(1)".
Zum Thema "Nur eine Instanz" sollte die Forensuchen einiges liefern - und zur Übertragung des Dateinamens bietet sich das Stichwort "WM_COPYDATA" an. Das Ganze ist hier doch schon öfter vorgekommen.

Gruß

Dietmar Brüggendiek
Dietmar Brüggendiek
  Mit Zitat antworten Zitat
Benutzerbild von Treffnix
Treffnix

Registriert seit: 25. Jun 2003
Ort: AC
740 Beiträge
 
Delphi 7 Professional
 
#6

Re: Mp3's mit eigenem programm öffnen

  Alt 27. Jan 2004, 13:14
@Brüggendiek: Hast natürlich Recht. Das Wörtchen "mit" hatte ich überlesen. Das kommt davon, wenn man ohne Punkt und Komma schreibt...
  Mit Zitat antworten Zitat
Alex_ITA01

Registriert seit: 22. Sep 2003
1.115 Beiträge
 
Delphi 12 Athens
 
#7

Re: Mp3's mit eigenem programm öffnen

  Alt 28. Jan 2004, 11:58
@Brüggendiek:
ich habe das jetzt mal so gelöst:
Formcreate:

Parameter2 := Paramstr(1);
if Parameter2 <> '' then
Form5.ListBox1.Items.Add(Parameter2);


aber es geht nicht.habe bestimmt was falsch verstanden oder?
kannst du mir mal ein beispiel zeigen wo ich ne datei öffne und den namen in die listbox eintrage?
mfg alex
  Mit Zitat antworten Zitat
Brüggendiek

Registriert seit: 13. Dez 2002
Ort: Dortmund
275 Beiträge
 
Delphi 5 Standard
 
#8

Re: Mp3's mit eigenem programm öffnen

  Alt 28. Jan 2004, 21:42
Hallo Alex!

Da haben wir ja mal wieder die aussagekräftige und umfassende Fehlerbeschreibung, die wir alle so lieben :
Zitat von Alex_ITA01:
aber es geht nicht.
Was geht nicht?

- der Compiler weigert sich, das zu übersetzen,
- das Programm stürzt ab,
- es steht nachher nichts in der Playliste,
- es steht nur eine Datei in der Playliste ?

Letzteres erschein mir am wahrscheinlichsten. Wie ich bereits erklärt hatte, startet Windows für jede Datei das zugeordnete Programm einmal. Läuft das Programm schon, wird diese Tatsache ignoriert und dann läuft das Programm eben zweimal.
Dieses Verhalten ist natürlich nicht immer gewünscht. Hier muß der Programmierer schon dafür sorgen, daß sowas unterbunden wird.
Der Code, wie man Mehrfachstarts verhindern kann, steht hier im Forum - bitte die Forensuche benutzen!
Dann muß man noch den Parameter, also "ParamStr(1)", an die erstgestartete Instanz übergeben. Das kann man mit der Nachricht "WM_COPYDATA" geschehen - auch dazu sollte die Forensuche Brauchbares (Code!) liefern.

Nebenbei: Die Zwischenvariable in Deinem Code ist nicht unbedingt erforderlich.

Gruß

Dietmar Brüggendiek

Edit: @Mods: gehört das überhaupt zu Programmieren allgemein - eher nicht, geht ja um Delphi!
Dietmar Brüggendiek
  Mit Zitat antworten Zitat
Alex_ITA01

Registriert seit: 22. Sep 2003
1.115 Beiträge
 
Delphi 12 Athens
 
#9

Re: Mp3's mit eigenem programm öffnen

  Alt 29. Jan 2004, 08:02
@Brüggendiek:
also der compiler schmiert nicht ab,und das programm hängt sich auch nicht auf.
es steht einfach nur nichts in der playliste.
den doppelstart des programms habe ich schon verhindert (also programmiert)
das mit der zwischenvariable habe ich nur erstmal so gemacht,klar kann die weg nur leider sehe ich kein dateinamen in der liste
  Mit Zitat antworten Zitat
Alex_ITA01

Registriert seit: 22. Sep 2003
1.115 Beiträge
 
Delphi 12 Athens
 
#10

Re: Mp3's mit eigenem programm öffnen

  Alt 29. Jan 2004, 09:11
@daniel seehase
ich habe mir mal deine MulitFileDemo gezogen und mal von FormShow den Source in mein Programm kopiert.Also:

procedure TForm1.FormShow(Sender: TObject);
begin
if (paramcount > 0) and FileExists(paramstr(1)) then begin
Form5.Listbox1.Items.Add(paramstr(1));
end;
end;

nur leider wenn ich ne mp3 öffne dann bekomme ich kein pfad in die listbox zurück geliefert.
ich habe jetzt mal probiert unter run->parameter und dann meine exe angegeben und bei parameter einfach mal: C:\Dokumente und Einstellungen\Praktikum\Desktop\Witz.txt
und wenn ich mir mal paramstr(1) in eine variable (string) geben lasse steht nur: C:\Dokumente drinne. daher geht er auch nie in die if abfrage rein.woran liegts?
mfg alex
  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 22:17 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