![]() |
Musik-Resource aus DLL in TBassdllPlayer laden
Moin,
ein kleines Problem, woran ich aber einfach nicht weiter komme: Ich habe einige Lieder in eine Resource gepackt, mir dann eine DLL erstellt und möchte in meiner Applikation diese Lieder nun mittels des TBassdllPlayers (aus der DP) abspielen. Dazu habe ich mir eine kleine Funktion geschrieben, die leider noch ihren Dienst versagt:
Delphi-Quellcode:
Problem ist nur, dass die Resourcen (Musik01, Musik02, etc) nicht gefunden werden. Scheinbar muss ich ja noch irgendwo angeben das alles in dem Handle h liegt oder? Hat da jemand ne Idee?
function LoadMusicLibrary(BassPlayer: TBassdllPlayer; Listbox: TListbox) : Boolean;
var h : THandle; id : String; item : Integer; Sound : String; begin h := LoadLibrary('.\lib\music.dll'); if h <> 0 then begin try item := random(4) + 1; case item of 1: Sound := 'Music01'; 2: Sound := 'Music02'; 3: Sound := 'Music03'; 4: Sound := 'Music04'; end; BassPlayer.LoadFromResourceName(PChar(Sound), RC_Music); BassPlayer.Play; finally FreeLibrary(h); end; end; end else ShowMessage('Loading [Music] has failed!'); end; Danke euch schonmal. :-) |
Re: Musik-Resource aus DLL in TBassdllPlayer laden
Ja, ich. Das müsste ich noch einbauen. :mrgreen:
|
Re: Musik-Resource aus DLL in TBassdllPlayer laden
Könntest du dich bitte beeilen? :mrgreen:
Oder gibt es nicht auch einen anderen Weg wie ich das schnell selbst hinbekomme? :gruebel: |
Re: Musik-Resource aus DLL in TBassdllPlayer laden
Liste der Anhänge anzeigen (Anzahl: 1)
Nich drängeln... :mrgreen:
Done. Add Function:
Delphi-Quellcode:
Verwendung:
function TBassPlayer.LoadFromResourceNameEx(Insance: HInst;
ResourceName: PChar; ResTyp: TRC_ResourceTyp): Boolean;
Delphi-Quellcode:
var
DllHandle : THandle; procedure TFormX.FormCreate(Sender: TObject); begin DllHandle := LoadLibrary('.\lib\music.dll'); end; procedure TFormX.FormDestroy(Sender: TObject); begin if DllHandle <> 0 then FreeLibrary(DllHandle); end; function TFormX.LoadMusicLibrary(BassPlayer: TBassdllPlayer; Listbox: TListbox) : Boolean; var id : String; item : Integer; Sound : String; begin if DllHandle <> 0 then begin item := random(4) + 1; case item of 1: Sound := 'Music01'; 2: Sound := 'Music02'; 3: Sound := 'Music03'; 4: Sound := 'Music04'; end; if BassPlayer.LoadFromResourceNameEx(DllHandle, PChar(Sound), RC_Music) then BassPlayer.Play; end else ShowMessage('Loading [Music] has failed!'); end; |
Re: Musik-Resource aus DLL in TBassdllPlayer laden
Dank turboPASCALs Hilfe geht es jetzt, danke an turboPASCAL. :-)
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:51 Uhr. |
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