Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Problem mit bass.dll (https://www.delphipraxis.net/172740-problem-mit-bass-dll.html)

monty.ms 19. Jan 2013 21:38

Problem mit bass.dll
 
Hallo,

ich habe dieses Tutorial für meinen Music Player benutzt und das hat auch soweit funktioniert. Aber nun bin ich von Delphi 7 auf XE3 umgestiegen und plötzlich will er nichts mehr abspielen. Mit BASS_ErrorGetCode erhalte ich BASS_ERROR_HANDLE.

Dachte erst ich hätte in der Zwischenzeit da ein Fehler eingeschleust, aber wenn ich jetzt mit Delphi 7 kompiliere funktioniert es immer noch.

Hab ich da irgendwas übersehen oder gibt es da einen bekannten Fehler, der das verursachen könnte?


Schon mal vielen Dank für jede Hilfe.


Edit: Ich muss mich korrigieren, der Fehler lautet BASS_ERROR_FILEOPEN und tritt nach MeMP_CreateStream auf. Aber der übergebene Pfad stimmt und die Datei ist auch nicht in Benutzung.

wicht 20. Jan 2013 00:50

AW: Problem mit bass.dll
 
Das ist jetzt geraten, weil ich "MeMP_CreateStream" nicht kenne, aber prüfe mal, ob die DLL-Funktion, die da aufgerufen wird, das Flag "BASS_UNICODE" beinhaltet, falls du die Funktion mit einem Dateinamen als Parameter aufrufst. Zwischen Delphi 7 und den späteren Versionen (ab Delphi 2009/2010?) hat sich die Bedeutung von "string" geändert (AnsiString/UnicodeString).

monty.ms 20. Jan 2013 13:48

AW: Problem mit bass.dll
 
Super, vielen Dank für den Tipp mit BASS_UNICODE.

So klappt es:

Code:
  if (lowerCase(ExtractFileExt(aFilename)) = '.mp3') then
    flags := BASS_STREAM_PRESCAN or BASS_UNICODE
  else
    flags := BASS_UNICODE;
  result := BASS_StreamCreateFile(False, PChar(aFilename), 0, 0, flags);


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:12 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