ÁUDIO WAVE EM DLL (Remodelada) - HELP

15/05/2003

0

Eu com o seguinte problema:

Compilei um resource file com dois arquivos de áudio no formato wave de nomes START.wav e FINISH.wav, com o identificador START e FINISH respectivamente. Também já os armazenei por índice numérico.

Porém, não consigo fazer com que execute-os. Este resource de nome JAMEDIA.res, foi armazenado em uma DLL de nome JAMEDIA.dll, no root da aplicação.

Por favor, me corrijam em caso de erros.

Implementei da seguinte forma o fonte, na tentativa de rodar o áudio START.wav:

var
DESDLL: THandle;

begin
DESDLL := LoadLibrary(´JAMEDIA.dll´);

if PlaySound(´START´, DESDLL, SND_RESOURCE) then

ShowMessage(´Reproduzido com sucesso!´)

else

ShowMessage(´Impossível reproduzir!´)

FreeLibrary(DESDLL);
end;

Qualquer informação, agradeço desde já.


Kafs

Kafs

Responder

Posts

15/05/2003

E_gama

Desculpe a pergunta, mas na sua DLL voce incluiu a linha: {$R JAMEDIA.RES} ?

Da alguma mensagem de erro?

Fiz um teste aqui, e funcionou perfeitamente!

meu arquivo teste.rc:
START WAVE "START.WAV"


minha DLL:
uses
  SysUtils,
  Classes;

{$R TESTE.RES} // -> Muito importante


begin
end.


Meu form de teste:
unit Unit2;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, MMSystem; //-> Unit importante

type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
var H: THandle;
begin
  H := LoadLibrary(´Project1.dll´);
  if PlaySound(´START´, H, SND_RESOURCE) then
     ShowMessage(´OK´)
  else
     ShowMessage(´Erro´);

  FreeLibrary(H);
end;

end.



Responder

16/05/2003

Kafs

Falou amigo, funcionou desta vez. O bug era o seguinte:

No arquivo de resource constava que o tipo de arquivo era WAVFILE e/ou RCDATA, por isso não respondia.
Só mais uma pergunta. Tem como fornecer-me a relação referente aos identificadores dos tipos de arquivos?

Muito obrigado por sua dica. Valeu mesmo.

Visite-nos em: http://www.kafs.impg.com.br


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar