У меня есть код PowerShell, который использует COM API. Я получаю ошибку несоответствия типа, когда я передаю массив байтов. Вот как я создаю массив, а также некоторую информацию о типе
PS C:\> $bytes = Get-Content $file -Encoding byte
PS C:\> $bytes.GetType()
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
True True Object[] System.Array
PS C:\> $bytes[0].GetType()
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
True True Byte System.ValueType
Выпивая API, я обнаружил, что он ищет Байт [] с базовым типом System.Array.
PS C:\> $r.data.GetType()
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
True True Byte[] System.Array
PS C:\> $r.data[0].gettype()
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
True True Byte System.ValueType
То, что я пытаюсь сделать, это преобразовать $bytes в тот же тип, что и $r.data. По какой-то причине $bytes создается как объект []. Как я могу передать его байту []?