Fórum Arquivo de som e dll ? #251826
24/09/2004
0
Obs.: Sou iniciante vamos com calma hehehe :-)
Pessoal posso carregar um arquivo de som dentro de uma dll para que meu arquivo não tenha que ficar exposto junto com o executável do programa, entende ? ( para não ficar ali na pasta um arquivo de musica normal aparecendo eu escondo ele e o usuario tb não pode ficar disparando aquele som, ou copiando ele enfim .....)
Acho que eu poderia fazer isso dentro do proprio executavel né ? Qual seria mais interessante e como faço isso ?
Obs 2.: SOm é mp3 até posso usar wav caso nao de mp3
Valeu
Pessoal posso carregar um arquivo de som dentro de uma dll para que meu arquivo não tenha que ficar exposto junto com o executável do programa, entende ? ( para não ficar ali na pasta um arquivo de musica normal aparecendo eu escondo ele e o usuario tb não pode ficar disparando aquele som, ou copiando ele enfim .....)
Acho que eu poderia fazer isso dentro do proprio executavel né ? Qual seria mais interessante e como faço isso ?
Obs 2.: SOm é mp3 até posso usar wav caso nao de mp3
Valeu
Koringa
Curtir tópico
+ 0
Responder
Posts
24/09/2004
Tatuweb
Dá para fazer com MP3 mas como com WAVE é mais fácil. Já que você quer colocar o som na DLL, primeiro crie um arquivo texto e coloque escreva nele:
Ao invés de SOUND vc pode usar qualquer palavra. Só botei ela como exemplo.
Abra o prompt do DOS e vá para a pasta Bin dá onde o Delhi está instalado. Ex:
[b:027aaa0959]CD\
CD C:\Arquivos de programas\Delphi3\BIN\[/b:027aaa0959]
Use o arquivo brcc32 para compilar o resource. No prompt digite:
[b:027aaa0959]BRCC32 C:\Pathdoprojeto\arquivo.rc[/b:027aaa0959]
Arquivo.rc é o arquivo texto que você salvou acima. Quando você fizer isso vai aparecer dentro do diretório bin do Delphi um arquivo de extensão .res (arquivo.res). Mova esse arquivo e coloque na pasta do seu projeto. Nota: Vc pode copiar o arquivo BRCC32.exe e colar na pasta do seu projeto. Isso facilita bastante.
Feito isso no seu projeto de DLL você vai colocar a linha:
[b:027aaa0959]{$R Arquivo.res}[/b:027aaa0959].
No projeto do EXE você coloca a rotina abaixo para carregar o arquivo de som:
SOUND WAVE C:\Pasta\arquivo.wav
Ao invés de SOUND vc pode usar qualquer palavra. Só botei ela como exemplo.
Abra o prompt do DOS e vá para a pasta Bin dá onde o Delhi está instalado. Ex:
[b:027aaa0959]CD\
CD C:\Arquivos de programas\Delphi3\BIN\[/b:027aaa0959]
Use o arquivo brcc32 para compilar o resource. No prompt digite:
[b:027aaa0959]BRCC32 C:\Pathdoprojeto\arquivo.rc[/b:027aaa0959]
Arquivo.rc é o arquivo texto que você salvou acima. Quando você fizer isso vai aparecer dentro do diretório bin do Delphi um arquivo de extensão .res (arquivo.res). Mova esse arquivo e coloque na pasta do seu projeto. Nota: Vc pode copiar o arquivo BRCC32.exe e colar na pasta do seu projeto. Isso facilita bastante.
Feito isso no seu projeto de DLL você vai colocar a linha:
[b:027aaa0959]{$R Arquivo.res}[/b:027aaa0959].
No projeto do EXE você coloca a rotina abaixo para carregar o arquivo de som:
var FindHandle, ResHandle, LibHandle: THandle; ResPtr: Pointer; begin LibHandle:=Loadlibrary (´Project.dll´); try if LibHandle<>0 then begin FindHandle := FindResource (LibHandle, ´SOUND´, ´WAVE´); if FindHandle<>0 then begin ResHandle:=LoadResource (LibHandle, FindHandle); if ResHandle<>0 then begin ResPtr:=LockResource(ResHandle); if ResPtr<>Nil then SndPlaySound (PChar(ResPtr), snd_ASync or snd_Memory); UnlockResource (ResHandle); FreeResource (FindHandle); end; end; end; finally Beep; end; end;
Responder
Gostei + 0
24/09/2004
Koringa
Dá para fazer com MP3 mas como com WAVE é mais fácil. Já que você quer colocar o som na DLL, primeiro crie um arquivo texto e coloque escreva nele:
Ao invés de SOUND vc pode usar qualquer palavra. Só botei ela como exemplo.
Abra o prompt do DOS e vá para a pasta Bin dá onde o Delhi está instalado. Ex:
[b:6f2ad859ef]CD\
CD C:\Arquivos de programas\Delphi3\BIN\[/b:6f2ad859ef]
Use o arquivo brcc32 para compilar o resource. No prompt digite:
[b:6f2ad859ef]BRCC32 C:\Pathdoprojeto\arquivo.rc[/b:6f2ad859ef]
Arquivo.rc é o arquivo texto que você salvou acima. Quando você fizer isso vai aparecer dentro do diretório bin do Delphi um arquivo de extensão .res (arquivo.res). Mova esse arquivo e coloque na pasta do seu projeto. Nota: Vc pode copiar o arquivo BRCC32.exe e colar na pasta do seu projeto. Isso facilita bastante.
Feito isso no seu projeto de DLL você vai colocar a linha:
[b:6f2ad859ef]{$R Arquivo.res}[/b:6f2ad859ef].
No projeto do EXE você coloca a rotina abaixo para carregar o arquivo de som:
SOUND WAVE C:\Pasta\arquivo.wav
var FindHandle, ResHandle, LibHandle: THandle; ResPtr: Pointer; begin LibHandle:=Loadlibrary (´Project.dll´); try if LibHandle<>0 then begin FindHandle := FindResource (LibHandle, ´SOUND´, ´WAVE´); if FindHandle<>0 then begin ResHandle:=LoadResource (LibHandle, FindHandle); if ResHandle<>0 then begin ResPtr:=LockResource(ResHandle); if ResPtr<>Nil then SndPlaySound (PChar(ResPtr), snd_ASync or snd_Memory); UnlockResource (ResHandle); FreeResource (FindHandle); end; end; end; finally Beep; end; end;
É isso ai !!!
Brigadao cara :p
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)