Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

как сделать диктофон?

11K
24 августа 2007 года
D@nger
44 / / 21.07.2007
люди а как на ВБ сделать диктофон? подскажите плиз!:(
251
24 августа 2007 года
SkyMаn
1.7K / / 31.07.2007
Цитата: D@nger
люди а как на ВБ сделать диктофон? подскажите плиз!:(


Есть такой вариант через MCI:

Код:
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
Sub CloseSound()
    Dim Result&
    Dim errormsg%
    Dim ReturnString As String * 1024
    Dim ErrorString As String * 1024
    Result& = mciSendString("close mysound", ReturnString, 1024, 0)
End Sub
Sub RecordSound()
    'записать звук с микрофона (6 сек.)
    Dim Result&
    Dim errormsg%
    Dim ReturnString As String * 1024
    Dim ErrorString As String * 1024
    CloseSound
    Result& = mciSendString("open new type waveaudio alias mysound", ReturnString, 1024, 0)
    If Not Result& = 0 Then
        errormsg% = mciGetErrorString(Result&, ErrorString, 1024)
        MsgBox ErrorString, 0, "Error"
        Exit Sub
    End If
    Result& = mciSendString("set mysound time format ms bitspersample 8 samplespersec 11025", ReturnString, 1024, 0)
    If Not Result& = 0 Then
        errormsg% = mciGetErrorString(Result&, ErrorString, 1024)
        MsgBox ErrorString, 0, "Error"
        Exit Sub
    End If
    Result& = mciSendString("record mysound to 60000", ReturnString, 1024, 0)
    If Not Result& = 0 Then
        errormsg% = mciGetErrorString(Result&, ErrorString, 1024)
        MsgBox ErrorString, 0, "Error"
        Exit Sub
    End If
End Sub
Sub PlayRecSound()
    Dim Result&
    Dim errormsg%
    Dim ReturnString As String * 1024
    Dim ErrorString As String * 1024
    Result& = mciSendString("stop mysound", ReturnString, 1024, 0)
    If Not Result& = 0 Then
        errormsg% = mciGetErrorString(Result&, ErrorString, 1024)
        MsgBox ErrorString, 0, "Error"
    End If
    Result& = mciSendString("play mysound from 1 wait", ReturnString, 1024, 0)
    If Not Result& = 0 Then
        errormsg% = mciGetErrorString(Result&, ErrorString, 1024)
        MsgBox ErrorString, 0, "Error"
    End If
End Sub
Private Sub Command1_Click()
    RecordSound
End Sub
Private Sub Command2_Click()
    Call PlayRecSound
End Sub
Private Sub Form_Unload(Cancel As Integer)
    CloseSound
End Sub

Если не сойдет, выложу другой.
11K
25 августа 2007 года
D@nger
44 / / 21.07.2007
не знаю почему он выдает ошибку: указанный параметр имеет не допустимое значение для заданной комманды!
давай попробуем другой код.
251
25 августа 2007 года
SkyMаn
1.7K / / 31.07.2007
Цитата: D@nger
не знаю почему он выдает ошибку: указанный параметр имеет не допустимое значение для заданной комманды!
давай попробуем другой код.


Давай. http://www.vbstreets.ru/VB/Articles/66408.aspx
ЗЫ. Еще есть и другие варианты

11K
25 августа 2007 года
D@nger
44 / / 21.07.2007
пасиба за помощь я нашел че нужно и все работает!
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог