Danab,

I have had the same problem saving a .wav file.
The mmcontrol1 works perfectly in VB3, but don't use it
in VB5 if you want to save a .wav file. I can suggest 3 approaches:

Approach #1) Use the Windows API: the declaration looks like this:

Declare Function mciSendString Lib "winmm.dll" Alias _
"mciSendStringA" (ByVal lpstrCommand As String, ByVal _
lpstrReturnString As Any, ByVal uReturnLength As Long, ByVal _
hwndCallback As Long) As Long

To OPEN A NEW FILE:

Sub WavRecOpen(FileName As String)
Dim i As Long, RS As String, cb As Long, t#
On Local Error Resume Next

RS = Space$(128)
Kill "c:\" & FileName & ".wav"

i = mciSendString("open wavaudio", RS, 128, cb)
i = mciSendString("open new type waveaudio alias
capture", RS, 128, cb)

End Sub

To SAVE A NEW WAVE FILE:

Sub WavRecClose(FileName As String)

Dim i As Long, RS As String, cb As Long, t#
RS = Space$(128)

i = mciSendString("close capture", RS, 128, cb)

i = mciSendString("close c:\" & FileName & ".wav", RS, 128, cb)

End Sub


To START RECORDING:
Sub WavRecStart()
Dim i As Long, RS As String, cb As Long, t#
On Local Error Resume Next

RS = Space$(128)

i = mciSendString("record capture", RS, 128, cb)

'MsgBox "RS = " & RS

End Sub

To STOP RECORDING:
Sub WavRecStop()

Dim i As Long, RS As String, cb As Long, t#
RS = Space$(128)

i = mciSendString("stop capture", RS, 128, cb)

End Sub

These functions will work, but if you program crashes, Windows will still be recording. This brings me to

APPROACH #2) Take the above code and make a recording
control/.ocx


APPROACH #3) If that isn't something that you want to get into, get a third party control. I know that there is a company called SwiftSoft that makes a few audio controls.
There are other companies as well.

Anyways, I have done all 3 and had success with all.

Option #2 was a very light control, and was a good learning experience on making .ocx's. I just followed the VB tutorial.

Good Luck,

-Todd.