示例#1
0
        public override string ToString()
        {
            if (m_fValid)
            {
                try
                {
                    StringBuilder output = new StringBuilder();

                    output.AppendLine(String.Format("HAL build info: {0}, {1}", HalBuildVersion?.ToString(), HalBuildInfo?.TrimEnd('\0')));
                    output.AppendLine(String.Format("OEM Product codes (vendor, model, SKU): {0}, {1}, {2}", OEM.ToString(), Model.ToString(), SKU.ToString()));
                    output.AppendLine("Serial Numbers (module, system):");
                    output.AppendLine("  " + ModuleSerialNumber?.TrimEnd('\0'));
                    output.AppendLine("  " + SystemSerialNumber?.TrimEnd('\0'));
                    output.AppendLine(String.Format("Solution Build Info: {0}, {1}", SolutionBuildVersion?.ToString(), SolutionBuildInfo?.TrimEnd('\0')));

                    output.AppendLine("AppDomains:");
                    foreach (IAppDomainInfo adi in AppDomains)
                    {
                        output.AppendLine(String.Format("  {0}, id={1}", adi.Name, adi.ID));
                    }

                    output.AppendLine("Assemblies:");
                    foreach (IAssemblyInfo ai in Assemblies)
                    {
                        output.AppendLine(String.Format("  {0}, {1}", ai.Name, ai.Version));
                    }

                    return(output.ToString());
                }
                catch { };
            }

            return("DeviceInfo is not valid!");
        }
示例#2
0
        /// <summary>
        /// Generate the serial number string based off the serial number
        /// values.
        /// </summary>
        /// <returns>String of the serial number.</returns>
        private string GetSerialNumberString()
        {
            StringBuilder result = new StringBuilder();

            // Base Electronics
            if (string.IsNullOrEmpty(BaseHardware))
            {
                result.Append("00");
            }
            else
            {
                result.Append(BaseHardware.PadLeft(BASE_HDWR_NUM_BYTES, '0'));
            }

            // Subsystems
            if (string.IsNullOrEmpty(SubSystems))
            {
                result.Append("000000000000000");
            }
            else
            {
                // Set the subsystems, padding the end with 0's
                result.Append(SubSystems.PadRight(SUBSYSTEM_NUM_BYTES, '0'));
            }

            // Spare
            if (string.IsNullOrEmpty(Spare))
            {
                result.Append("000000000");
            }
            else
            {
                result.Append(Spare.PadRight(SPARE_NUM_BYTES, '0'));
            }

            // Serial number
            if (SystemSerialNumber == EMPTY_SERIAL_NUM)
            {
                result.Append("000000");
            }
            else
            {
                string serial = SystemSerialNumber.ToString();
                result.Append(serial.PadLeft(SERIAL_NUM_BYTES, '0'));
            }


            return(result.ToString());
        }