CONTROLANDO DLL
Ae, por exemplo, para todar um som no PC, basto chamar uma DLL, como no exemplo;
Mas, como se descobriu os valores " lpszSoundName " e " uFlags" ???
o máximo que consigo é ver o nome "sndPlaySoundA" no programa Dependency Walker...
O que queria era, pegar uma DLL e usá-la.
Se alguém souber, por favor me avise..
Flows,
Private Declare Function sndPlaySound Lib "winmm.dll" Alias "sndPlaySoundA" (ByVal lpszSoundName As String, ByVal uFlags As Long) As Long
Mas, como se descobriu os valores " lpszSoundName " e " uFlags" ???
o máximo que consigo é ver o nome "sndPlaySoundA" no programa Dependency Walker...
O que queria era, pegar uma DLL e usá-la.
Se alguém souber, por favor me avise..
Flows,
A documentação de APIs pode ser obtida diretamente dos HELPs do Visual Studio e a declaração das APIs e valores constantes pode ser obtidas atraves do "API Text Viewer" ou atraves da edição do arquivo win32API.txt localizado no diretório "C:\Program Files\Microsoft Visual Studio\Common\Tools\Winapi". Outra forma seria pesquisar no site www.mentalis.org e baixar o API Guide que alem de possuir o mesmo HELP e constantes citados acima, tambem sempre vem acompanhado de um pequeno exemplo.
- lpszSoundName: Uma string que especifica o nome do arquivo de som, por exemplo "C:\WINNT\Media/ding.wav. Esse parà ¢metro tambem pode ser uma entrada de registro ou no arquivo WIN;INI que identifique um som do sistema, ou ainda o nome de um arquivo .WAV, se a função não encontrar essa entrada no registry e no no WIN.INI ela é tratada como o nome de um arquivo.
Se esse parametro for um NULL (ByVal 0& no Visual Basic) o som que estiver tocando sera encerrado.
- uFlags: Flags para tocar o som.
SND_ASYNC: O som é tocado de forma assincrona a a função retorna imediatamente após o inicio do som. Para terminar basta chamar a função sndPlaySound novamente com lpszSoundName igual a NULL.
SND_LOOP: O som toca repetodamente até que sndPlaySound seja chamado novamente com lpszSoundName igual a NULL. Você deve tambem especificar SND_ASYNC para o som ficar em loop.
SND_MEMORY: O parametro especificado em lpszSoundName aponta para uma imagem (cópia) de um som wave em memória.
SND_NODEFAULT: Se o som não foi encontrado, a função retorna de fora silenciosa sem tocar o som default.
SND_NOSTOP: Se houver algum som tocando, a função imediatamente retorna FALSE, sem tocar o som requisitado.
SND_SYNC: O som toca de forma sincrona e a função não retorna até que o som termine.
Abaixo tem os valores das constantes obtidas pelo API Text Viewer:
' flag values for uFlags parameter
Const SND_SYNC = &H0 ' play synchronously (default)
Const SND_ASYNC = &H1 ' play asynchronously
Const SND_NODEFAULT = &H2 ' silence not default, if sound not found
Const SND_MEMORY = &H4 ' lpszSoundName points to a memory file
Const SND_ALIAS = &H10000 ' name is a WIN.INI [sounds] entry
Const SND_FILENAME = &H20000 ' name is a file name
Const SND_RESOURCE = &H40004 ' name is a resource name or atom
Const SND_ALIAS_ID = &H110000 ' name is a WIN.INI [sounds] entry identifier
Const SND_ALIAS_START = 0 ' must be 4096 to keep strings in same section of resource file
Const SND_LOOP = &H8 ' loop the sound until next sndPlaySound
Const SND_NOSTOP = &H10 ' don't stop any currently playing sound
Const SND_VALID = &H1F ' valid flags / ;Internal /
Const SND_NOWAIT = &H2000 ' don't wait if the driver is busy
Const SND_VALIDFLAGS = &H17201F ' Set of valid flag bits. Anything outside
' this range will raise an error
Const SND_RESERVED = &HFF000000 ' In particular these flags are reserved
Const SND_TYPE_MASK = &H170007
Tópico encerrado , respostas não são mais permitidas