コード例 #1
0
 public NcaInfoWindowManager(string path, Window window, LoggerWindowManager logger)
 {
     Path   = path;
     Window = window;
     Logger = logger;
     FwInfo = new FirmwareInfo(Path);
     if (FwInfo.SystemVersionNca != null)
     {
         Logger.Log($"Opened Firmware {FwInfo.VersionInfo.VersionString}");
     }
 }
コード例 #2
0
        public IActionResult Create([FromBody] FirmwareInfo item)
        {
            if (item == null)
            {
                return(BadRequest());
            }

            item.Id = db.GetSequence <FirmwareInfo>();
            db.InsertData <FirmwareInfo>(item);

            return(Ok(new { id = item.Id }));
        }
コード例 #3
0
        /// <summary>
        /// Read firmware information
        /// after the information is returned, get the detail from FirmwareInfo property
        /// </summary>
        /// <returns></returns>
        public bool ReadFWInfo()
        {
            Request(EnumCommand.REQ_FIRMWARE_INFO, out byte[] buff);

            if (buff == null)
            {
                return(false);
            }
            else
            {
                return(FirmwareInfo.Parse(buff));
            }
        }
コード例 #4
0
        private async void btnUploadHex_Click(object sender, EventArgs e)
        {
            LoadingButton(btnUploadHex);
            try
            {
                byte[]       buffer       = this.intelHex.ToBinary();
                FirmwareInfo firmwareInfo = new FirmwareInfo();
                firmwareInfo.Set("Version", intelHex.Headers.Version);
                firmwareInfo.Set("Description", intelHex.Headers.Description);
                firmwareInfo.Set("FirmwareGUID", intelHex.Headers.FirmwareGUID);
                Task <dynamic> task = Task.Factory.StartNew(() => device.SendFirmwareInfo(firmwareInfo));
                dynamic        responseFirmwareInfo = await task;

                ResponseFirmware response = device.ParseFirmwareInfoResponse(responseFirmwareInfo);
                if (response.IsSuccess)
                {
                    panelUploadProgress.Visible = true;
                    Task <dynamic> taskSend = Task.Factory.StartNew(() => device.SendHexFile(buffer));
                    dynamic        responseFirmwareUpload = await taskSend;
                    ResetButton(btnUploadHex);
                    panelUploadProgress.Visible = false;
                    response = device.ParseFirmwareUploadResponse(responseFirmwareUpload);
                    if (response.IsSuccess)
                    {
                        ShowInfoMessage(ECRDictionary.GetTranslation("Hex file was uploaded successfully"));
                    }
                    else
                    {
                        if (response.Error.Length > 0)
                        {
                            ShowErrorMessage(response.Error);
                        }
                    }
                }
                else
                {
                    ResetButton(btnUploadHex);
                    if (response.Error.Length > 0)
                    {
                        ShowErrorMessage(response.Error);
                    }
                }
            }
            catch (IntelHexParserException)
            {
                panelUploadProgress.Visible = false;
                ResetButton(btnUploadHex);
                ShowErrorMessage(ECRDictionary.GetTranslation("Invalid HEX format"));
            }
        }
コード例 #5
0
        public IActionResult PutData([FromRoute] int id, [FromBody] FirmwareInfo item)
        {
            if (item == null)
            {
                return(BadRequest());
            }

            if (item.Id > 0)
            {
                db.InsertData <FirmwareInfo>(item);
            }

            return(Ok(new { id = item.Id }));
        }