当前位置:编程学习 > VB >>

求文件定时保存功能

软件缺一个文件定时保存功能,希望能帮忙解决一下。

Private Sub cmdDo_Click()
    Dim sndres  As SND_RESULT

    If clsRecorder.IsRecording Then
        If Not clsRecorder.StopRecord Then
            MsgBox "此时无法停止录音!", vbExclamation, "提示"
        End If
        
        clsEncoder.Encoder_EncoderClose

        lngMSEncoded = 0
        lngBytesPerSec = 0

        cmdDo.Caption = "开始录音"
        SetFormEnabled True
    Else
        If txtFile.Text = "" Then
            MsgBox "没有指定输出文件!", vbExclamation, "提示"
            Exit Sub
        End If

        If cboDev.ListIndex = -1 Then
            MsgBox "没有选择硬件设备!", vbExclamation, "提示"
            Exit Sub
        End If

        ' Blockalign = (Bits/Sample / 8) * Channels
        ' Bytes/Sec = Samplerate * Blockalign
        '
        ' we simply use 16 bit samples (integers) where we can,
        ' that's the most comfortable way to work with
        ' samples in VB
        lngBytesPerSec = (CLng(cboSamplerate.Text) * (2 * (chkStereo.value + 1)))

        sndres = clsEncoder.Encoder_EncoderInit(CLng(cboSamplerate.Text), _
                                                chkStereo.value + 1, _
                                                txtFile.Text)

        If sndres <> SND_ERR_SUCCESS Then
            MsgBox "无法初始化编码器!", vbExclamation, "提示"
            Exit Sub
        End If

        clsDSP.samplerate = CLng(cboSamplerate.Text)
        clsDSP.Channels = chkStereo.value + 1

        If Not clsRecorder.StartRecord(cboSamplerate.Text, chkStereo.value + 1) Then
            MsgBox "不能启动录音功能!", vbExclamation, "提示"
        End If

        cmdDo.Caption = "停止录音"
        SetFormEnabled False
    End If
End Sub


如果需要全代码的话,我会提供给你的,谢谢你们了。

QQ:376889322
在线等!!! --------------------编程问答-------------------- 依我所见,这种自动定时保存的功能,一般要实现两点:
一,在Timer1控件时间中间隔检查,看是否符合要保存的条件,包括是否产生了新数据。
二,那些提示信息不能使用MsgBox这类会导致程序暂停,等待用户输入的语句,应改为WriteLog这类直接输出Log的。 --------------------编程问答-------------------- timmer控件  --------------------编程问答--------------------
引用 1 楼  的回复:
依我所见,这种自动定时保存的功能,一般要实现两点:
一,在Timer1控件时间中间隔检查,看是否符合要保存的条件,包括是否产生了新数据。
二,那些提示信息不能使用MsgBox这类会导致程序暂停,等待用户输入的语句,应改为WriteLog这类直接输出Log的。


说的很对,就是在同时会产生新的文件。

我现在的方式可能是先保存一下,在继续录音。

能不能帮我看一下源码?
补充:VB ,  多媒体
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,