Показать сообщение отдельно
  #1  
Старый 20.05.2011, 22:32
Delas Delas вне форума
Прохожий
 
Регистрация: 24.04.2007
Сообщения: 32
Репутация: 10
По умолчанию Как загрузить из dll звуки

Помогите как загрузить из Dll звуки и чтоб их можно было проиграть рандомно, как в ресурсе, сделал в ресурсе но екзешник стал большой,создал dll-ку с ресурками а щас незнаю как точно ее подключить.
Код:
procedure TForm1.PlayRndSound;
var
  R: TResourceStream;
  //H:THandle;
  //sound:Pchar;
  //hfind,hres:thandle;
begin
    //hfind:=loadlibrary('sound.dll');
    //hfind:=findResource(Hinstance,'1','sound');
    //if hfind <>0 then begin
    //hres:=loadresource(hinstance,hfind);
    //if hres <> 0 then begin
    //sound:=lockresource(hres);
    {if assigned(soun) then}
    //sndplaysound (sound,snd_async or snd_memory);
   // unlockresource(hres);
   // end;
    //freeresource(hfind);
   // end;
   //h:= LoadLibrary('sound.dll');
   //if h <= BadDllLoad then
   //ShowMessage('Неудалось загрузить динамическую библиотеку проверте файлы')
   //Else begin
   //Sound:=LoadResource(hinstance,1);
   //SndPlaySound(sound, SND_ASYNC or SND_MEMORY);
   //FreeLibrary(h);
  R:= TResourceStream.CreateFromID(HInstance, Random(7)+1, 'sound');
  SndPlaySound(R.Memory, SND_ASYNC or SND_MEMORY);
  R.Free;
//end;
end;
Работает пока что из ресурса, а где закоментил, там я пробовал по разному грузить даже менял по разному так что за ошибки не кричите на меня я так просто уже так оставил как есть.
Ответить с цитированием