用api调用系统的录音机功能。

解决方案 »

  1.   

    Declare Function auxGetVolume Lib "winmm.dll" (ByVal uDeviceID As Long, lpdwVolume As Long) As Long
    Declare Function mciGetDeviceID Lib "winmm.dll" Alias "mciGetDeviceIDA" (ByVal lpstrName As String) As Long
    Declare Function mciSendCommand Lib "winmm.dll" Alias "mciSendCommandA" (ByVal wDeviceID As Long, ByVal uMessage As Long, ByVal dwParam1 As Long, ByVal dwParam2 As Long) As Long
    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
    Declare Function midiOutGetVolume Lib "winmm.dll" (ByVal uDeviceID As Long, lpdwVolume As Long) As Long
    Declare Function midiOutSetVolume Lib "winmm.dll" (ByVal uDeviceID As Long, ByVal dwVolume As Long) As Long
    Declare Function sndPlaySound Lib "winmm.dll" Alias "sndPlaySoundA" (ByVal lpszSoundName As String, ByVal uFlags As Long) As Long
    Declare Function waveOutGetVolume Lib "winmm.dll" (ByVal uDeviceID As Long, lpdwVolume As Long) As Long
    Declare Function waveOutSetVolume Lib "winmm.dll" (ByVal uDeviceID As Long, ByVal dwVolume As Long) As Long
    Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)
    Declare Function BitBlt Lib "gdi32" (ByVal hDestDC As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal ySrc As Long, ByVal dwRop As Long) As Long
    Declare Function GetSystemMetrics Lib "user32" (ByVal nIndex As Long) As LongPublic Type lVolType
        v As Long
    End TypePublic Type VolType
        lv As Integer
        rv As Integer
    End TypePublic Const SM_CXBORDER = 5
    Public Const SM_CYBORDER = 6
    Public Const VK_SNAPSHOT As Byte = &H2C
    Public Const SRCCOPY = &HCC0020 ' (DWORD) dest = source
    Public Const MCI_SET = &H80D
    Public Const MCI_SET_DOOR_OPEN = &H100&
    Sub RECORD_WAVE(ByVal strAlias1 As String)
        On Local Error Resume Next
        i = mciSendString("open new type waveaudio alias " & strAlias1, RS, 128, cb)
        i = mciSendString("record " & strAlias1, RS, 128, cb)
    End Sub