Como seleccionar Soundcard no Visual Basic com controlo de multimédia

Traduções de Artigos Traduções de Artigos
Artigo: 180032 - Ver produtos para os quais este artigo se aplica.
Expandir tudo | Reduzir tudo

Nesta página

Sumário

Este artigo descreve como definir o dispositivo WaveAudio (soundcard) utilizado pelo controlo multimédia (MCI32.ocx) utilizando o Visual Basic.

Mais Informação

Para definir o dispositivo WaveAudio (soundcard) utilizado pelo controlo de multimédia, tem de utilizar a API mciSendCommand. O controlo de multimédia não fornece directamente um método para permitem-lhe definir o dispositivo utilizado para reprodução ou gravação.

O código de exemplo do Visual Basic seguinte mostra como utilizar mciSendCommand para especificar o dispositivo utilizado para WaveAudio saída.

Código de exemplo

Seguem-se as definições necessárias e declarações. Coloque estes num ficheiro de módulo:
   Public Const MMSYSERR_NOERROR = 0
   Public Const MCI_SET = &H80D
   Public Const MCI_WAVE_OUTPUT = &H800000
   Type MCI_WAVE_SET_PARMS
       dwCallback As Long
       dwTimeFormat As Long
       dwAudio As Long
       wInput As Long
       wOutput As Long
       wFormatTag As Integer
       wReserved2 As Integer
       nChannels As Integer
       wReserved3 As Integer
       nSamplesPerSec As Long
       nAvgBytesPerSec As Long
       nBlockAlign As Integer
       wReserved4 As Integer
       wBitsPerSample As Integer
       wReserved5 As Integer
   End Type

   Declare Function mciGetErrorString Lib "winmm.dll" _
       Alias "mciGetErrorStringA" (ByVal dwError As Long, _
       ByVal lpstrBuffer As String, ByVal uLength As Long) As Long

   Declare Function mciSendCommand Lib "winmm.dll" Alias _
       "mciSendCommandA" (ByVal wDeviceID As Long, _
       ByVal uMessage As Long, ByVal dwParam1 As Long, _
       ByRef dwParam2 As Any) As Long

				

Código de exemplo

O seguinte código define o dispositivo de saída. Este código parte do princípio que tem um controlo de multimédia denominados "MMControl1." Este código deve ser chamado depois do ficheiro a ser reproduzido wave foi aberto por MMControl1.
   Dim parms As MCI_WAVE_SET_PARMS
    Dim rc As Long

    ' Specify the soundcard. This specifies the soundcard with a deviceID
    ' of 0. If you have a single soundcard, then this will open it. If you
    ' have multiple soundcards, the deviceIDs will be 0, 1, 2, etc.
    parms.wOutput = 0

    ' Send the MCI command to set the output device.
    rc = mciSendCommand(MMControl1.DeviceID, MCI_SET, _
        MCI_WAVE_OUTPUT, parms)

    if (rc <> MMSYSERR_NOERROR) then
        ' The command failed.
    End If
				

Referências

Consulte a documentação mciSendCommand na documentação do Win32 SDK.

Propriedades

Artigo: 180032 - Última revisão: 21 de novembro de 2006 - Revisão: 3.2
A informação contida neste artigo aplica-se a:
  • Microsoft Win32 Application Programming Interface nas seguintes plataformas
    • Microsoft Windows 95
    • Microsoft Windows NT 4.0
Palavras-chave: 
kbmt kbhowto KB180032 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 180032

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com