public void GetSerialNumber() { Int32 myErrorCode = 0; Int32 errorStringLength = SeaBreezeWrapper.seabreeze_get_error_string_maximum_length(); byte[] errorStringBuffer = new byte[errorStringLength]; Int32 serialNumberStringLength = SeaBreezeWrapper.seabreeze_get_serial_number_max_length(SEABREEZE_ID, ref myErrorCode); byte[] mySerialNumberBuffer = new byte[serialNumberStringLength]; int bytesInBuffer = SeaBreezeWrapper.seabreeze_get_serial_number(SEABREEZE_ID, ref myErrorCode, ref mySerialNumberBuffer[0], serialNumberStringLength); if (myErrorCode != 0) { bytesInBuffer = SeaBreezeWrapper.seabreeze_get_error_string(myErrorCode, ref errorStringBuffer[0], errorStringLength); string myErrorString = "Exception getting model description: " + System.Text.Encoding.Default.GetString(errorStringBuffer); throw (new Exception(myErrorString)); } string mySerialNumber = System.Text.Encoding.UTF8.GetString(mySerialNumberBuffer).TrimEnd((char)0); Log("Serial Number: " + mySerialNumber); }