ALGUMA IDEIA PARA ESSE PROJETO???

EMANUEL 22/03/2004 11:07:09
#16426
Pessoal,
Estou desenvolvendo um projeto na area de FONOAUDIOLOGIA, gostaria de saber se alguem dispoe ou como eu fazer uma rotina que grave a voz do paciente a cada consulta que o mesmo realizar durante o tratamento.

Isso para quando no final do tratamento ou em uma determinada data, a FONOAUDIOLOGA compare e mostre ao paciente a voz no primeiro dia da consulta e como esta hoje.


Desde ja agradeço,
Mano
USUARIO.EXCLUIDOS 22/03/2004 11:24:18
#16429
Resposta escolhida
Private Declare Function mciSendString Lib "winmm.dll" Alias "mciSendStringA" (ByVal lpstrCommand As String, ByVal lpstrReturnString As String, ByVal uReturnLength As Long, ByVal hwndCallback As Long) As Long
Private Declare Function mciGetErrorString Lib "winmm.dll" Alias "mciGetErrorStringA" (ByVal dwError As Long, ByVal lpstrBuffer As String, ByVal uLength As Long) As Long

'retorna erro de retorno de STATUS
Private Sub PrintMCIStatus(Code As Long)
Dim ErrorMsg As String

ErrorMsg = String$(1024, vbNullChar) ' Reserve space for message
mciGetErrorString Code, ErrorMsg, 1024 ' Get message
ErrorMsg = Left(ErrorMsg, InStr(1, ErrorMsg, vbNullChar) - 1) 'trim away remaing null chars
Debug.Print ErrorMsg ' print message

End Sub

'retorna mensagens de PrinctMCIStatus
Public Sub StartRecord(ByVal hwnd As Long)

m_sFileName = "Temp"

PrintMCIStatus mciSendString("open new type waveaudio alias TempAudio wait", vbNullString, 0, 0)
PrintMCIStatus mciSendString("seek TempAudio to start wait", vbNullString, 0, 0)
PrintMCIStatus mciSendString("record TempAudio overwrite notify", vbNullString, 0, hwnd)

End Sub

Public Sub StopSaveRecord()
PrintMCIStatus mciSendString("stop TempAudio", vbNullString, 0, 0)
PrintMCIStatus mciSendString("save TempAudio " & Arquivo, vbNullString, 0, 0)
PrintMCIStatus mciSendString("close TempAudio", vbNullString, 0, 0)
End Sub
USUARIO.EXCLUIDOS 22/03/2004 12:45:41
#16441
nao posso te passar o projeto onde uso isso...
mas basta colocar isto em um modulo...
quando for iniciar a gravacao chama a funcao StartRecord
Quando for finalizar a gravacao chama a funcao StopSaveRecord...
tive de adaptar para mandar para vc entao na rotina StopSaveRecord coloque um parametro de entrada chamado Arquivo do tipo string indicando o nome e caminho do arquivo que deseja gravar...
e em start record vc pode tirar a primeira linha m_sFileName = "Temp"

o hwnd de entrada do StartRecord eh o hwnd do form principal de sua aplicacao
Tópico encerrado , respostas não são mais permitidas