Ho un codice PowerShell che utilizza un'API COM. Ricevo un errore di mancata corrispondenza di tipo quando passo in un array di byte. Ecco come sto creando la matrice, così come alcune informazioni di tipoCreazione di byte [] in PowerShell
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
Gironzolando con l'API, ho scoperto che è alla ricerca di un byte [] con un tipo di base di 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
Quello che sto cercando di fare è convertire $ byte nello stesso tipo di $ r.data. Per qualche motivo, $ byte viene creato come oggetto []. Come posso lanciarlo su un Byte []?
Grazie per questo! mi ha salvato un sacco di googling in più –
Non ha funzionato per me. Vedi la mia risposta. – Andrew
@ Andrew, hai ragione. L'ho corretto –