Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   BassPlayerEx mit erweiterten Soundeffekten... (https://www.delphipraxis.net/65381-bassplayerex-mit-erweiterten-soundeffekten.html)

BullsEye 29. Mai 2008 21:26

Re: BassPlayerEx mit erweiterten Soundeffekten...
 
Hallo, ich weiß, der letzte Post ist schon was her, allerdings ist mir gerade ein Fehler aufgefallen:

BassPlayer -> Visualliersirung -> Wenn keine Visu drinne ist und man start klickt kommt der Fehler, "listenindex überschreitet das maximu (-1)"

besser wäre, wenn da der Öffnen Dialog kommt oder ne Message "Fügen Sie bitte erst ein Visu hinzu"

100nF 22. Jul 2008 20:17

Re: BassPlayerEx mit erweiterten Soundeffekten...
 
hallo,

ich hab da ein kleines problemchen...
und zwar öffne ich mein musikprogramm (welches den BassPlayerEX verwendet) manchmal auch durch einen doppelklick auf eine Musikdatei. Also ich habe die Endung .mp3 auf mein Programm registriert.

funktioniert soweit auch ganz gut, doch das problem ist dass das Programm die zwei DLL-Dateien ("bass.dll" und "bass_fx.dll") beim öffnen einfach im ordner ablegt, wo sich die Musikdatei befindet.

Ich denke ich habe den übeltäter auch schon gefunden in der "BassDynamicU":
Delphi-Quellcode:
const
  BASS_FILENAME = 'bass.dll';
  BASSFX_FILENAME = 'bass_fx.dll';

constructor TBassDll.create;
var DLLData:TMemoryStream;
begin
  DLLData:=TMemoryStream.Create;
  try
    if not FileExists(BASS_FILENAME) then begin
      DLLData.Clear;
      DLLData.Write(BASSData, BASSSize);
      DLLData.SaveToFile(BASS_FILENAME);
    end;
    if not FileExists(BASSFX_FILENAME) then begin
      DLLData.Clear;
      DLLData.Write(BASSFXData, BASSFXSize);
      DLLData.SaveToFile(BASSFX_FILENAME);
    end;
  finally
    DLLData.free;
  end;
  if LoadBassDll then
    if LoadBassFxDll then ;
end;
wie man sieht werden keine absoluten Pfadangaben verwendet. Doch ist das überhaup möglich, absolute Pfade zu verwenden? Ich mein, Application.ExeName kann man ja schlecht auslesen^^

Was kann man da nun machen?

mfg

omata 22. Jul 2008 22:16

Re: BassPlayerEx mit erweiterten Soundeffekten...
 
Übergib den Pfad doch einfach...

Delphi-Quellcode:
constructor TBassDll.create(Path:string);
var DLLData:TMemoryStream;
begin
  DLLData:=TMemoryStream.Create;
  try
    if not FileExists(Path + BASS_FILENAME) then begin
      DLLData.Clear;
      DLLData.Write(BASSData, BASSSize);
      DLLData.SaveToFile(Path + BASS_FILENAME);
    end;
    if not FileExists(Path + BASSFX_FILENAME) then begin
      DLLData.Clear;
      DLLData.Write(BASSFXData, BASSFXSize);
      DLLData.SaveToFile(Path + BASSFX_FILENAME);
    end;
  finally
    DLLData.free;
  end;
  if LoadBassDll then
    if LoadBassFxDll then ;
end;

100nF 22. Jul 2008 22:30

Re: BassPlayerEx mit erweiterten Soundeffekten...
 
naja ok funktioniert^^

thx :mrgreen:

rollstuhlfahrer 24. Jul 2008 19:43

Re: BassPlayerEx mit erweiterten Soundeffekten...
 
Zitat:

Zitat von urbanbruhin
wie man sieht werden keine absoluten Pfadangaben verwendet. Doch ist das überhaup möglich, absolute Pfade zu verwenden? Ich mein, Application.ExeName kann man ja schlecht auslesen^^

Warum solte man Application.ExeName nicht auswerten können? Aufrufen kann man das ja auch ohne die Unit Forms. Und überhaupt geht das auch ohne SysUtils, was aber die Exceptions (sind glaub ich doch keine) verhindern.
Bei mir gibts die Exceptions nur, weil ich ein sauberes Laden implementiert hab, das abbricht, falls irgendwas nicht klappt.
Application.ExeName zeigt im Grunde nur auf ParamStr(0), welchen du auswerten kannst.

Bernhard


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:34 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz