Нельзя использовать Is
с типами значений. Аналогично, Nothing
имеет другое значение для типов значений, чем для ссылочных типов. Вы можете просто написать это так:
If isEndReached <> 0 Then
или как это:
If isEndReached <> Nothing Then
и, глядя на ваш код, я на самом деле написал бы это так, если функция каким-то образом возвращает отрицательное значение для байта:
If isEndReached > 0 Then
или, альтернативно, объявите свой байт в предыдущей строке, а затем просто зациклите, пока он меньше, чем isEndReached:
Dim y As Byte
While y < isEndReached
''...
y += 1
End While
Ваш For
также не имеет того же значения, что и код C #, но на самом деле он должен соответствовать лучше - вы сравниваете байты с байтами, а не с байтами.