In the below Sub what I have highlighted in red works and I do not get any Compiler error
However, in this Sub I code somewhat the same way but I get a Compiler error: Can't assign to ArrayCode:Public Sub SaveStreamBuffer(StreamIdx As Integer, StringRecordBuffer As String) If (LenB(MidB(PlayWaveBuffer.Stream(StreamIdx).Waves(CurRecPos(StreamIdx)).Data, 1)) < 3) Then If Len(StringRecordBuffer) > 0 Then Dim tempArray() As Byte ReDim tempArray(Len(StringRecordBuffer)) tempArray = StrConv(StringRecordBuffer, vbFromUnicode) PlayWaveBuffer.Stream(StreamIdx).Waves(CurRecPos(StreamIdx)).Data = tempArray IncBufferPointer CurRecPos(StreamIdx) End If End If End Sub
Code:Private Sub Winsock1_DataArrival(Index As Integer, ByVal BytesTotal As Long) Dim WaveData As String Static ExBytes(MAXTCP) As Long Static ExData As String If Winsock1(Index).BytesReceived > 0 Then Do While Winsock1(Index).BytesReceived > 0 If ExBytes(Index) = 0 Then If waveChunkSize <= Winsock1(Index).BytesReceived Then Winsock1(Index).GetData WaveData, vbString, waveChunkSize SaveStreamBuffer Index, WaveData AddStreamToQueue Index Else ExBytes(Index) = Winsock1(Index).BytesReceived Winsock1(Index).GetData MidB(ExData, Index), vbString, ExBytes(Index) End If Else Winsock1(Index).GetData WaveData, vbByte + vbArray, waveChunkSize - ExBytes(Index) MidB(ExData, Index) = MidB(Mid(ExData, Index), 1) & MidB(WaveData, 1) SaveStreamBuffer Index, Mid(ExData, Index) AddStreamToQueue Index ExBytes = StrConv(String(MAXTCP, Chr(0)), vbFromUnicode) ExData = "" End If Loop If Not Playing And PlayDeviceFree And Not Recording And RecDeviceFree Then StartPlayBack End If End If End Sub




Reply With Quote