In the below Sub what I have highlighted in red works and I do not get any Compiler error
Code:
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
However, in this Sub I code somewhat the same way but I get a Compiler error: Can't assign to Array
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