private void btAplicar_Click(object sender, EventArgs e) { try { for (int i = 1; i < dataGridViewAtualizarFirmware.Rows.Count; i++) { if ((null != dataGridViewAtualizarFirmware.Rows[i].Cells[COLUNA_DIRETORIO].Value) && (!String.IsNullOrEmpty(dataGridViewAtualizarFirmware.Rows[i].Cells[COLUNA_DIRETORIO].Value.ToString()))) { string origem = @"" + dataGridViewAtualizarFirmware.Rows[i].Cells[COLUNA_DIRETORIO].Value.ToString(); // Abrir a origem e verificar se é arquivo da TURBUS Arquivo_FIR af = new Arquivo_FIR(); Arquivo_FIR.IdentificacaoProduto produto = af.IdentificarProduto(origem); if (produto.nomeProduto.Contains(Util.Util.NOME_FIRMWARE_TURBUS)) { fachada.CopiarFirmwareTurbusParaProgramData(origem); } else { fachada.CopiarFirmwareParaProgramData(origem); } } } MessageBox.Show(this, rm.GetString("UPDATE_FIRMWARE_UPDATE_SUCCESS"), string.Empty, MessageBoxButtons.OK, MessageBoxIcon.Information); } catch { MessageBox.Show(this, rm.GetString("UPDATE_FIRMWARE_UPDATE_ERROR"), rm.GetString("MAIN_MENU_MBOX_OPEN_ERROR_TITLE"), MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void dataGridViewAtualizarFirmware_CellContentClick(object sender, DataGridViewCellEventArgs e) { if (e.ColumnIndex == COLUNA_ELLIPSIS) { string nomeArquivo = String.Empty; if (e.RowIndex == 0) { return; } try { OpenFileDialog openFileDialog = new OpenFileDialog(); openFileDialog.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData); openFileDialog.Filter = rm.GetString("FILTRO_FIRMWARES"); if (openFileDialog.ShowDialog(this) == DialogResult.OK) { nomeArquivo = openFileDialog.FileName; Arquivo_FIR.IdentificacaoProduto id = fachada.IdentificarProduto(nomeArquivo); if (id.nomeProduto == (dataGridViewAtualizarFirmware.Rows[e.RowIndex].Cells[COLUNA_PRODUTO].Value as string)) { if (id.versao.CompareTo(new Version(dataGridViewAtualizarFirmware.Rows[e.RowIndex].Cells[COLUNA_VERSAO].Value.ToString())) >= 0) { dataGridViewAtualizarFirmware.Rows[e.RowIndex].Cells[COLUNA_DIRETORIO].Value = nomeArquivo; dataGridViewAtualizarFirmware.Rows[e.RowIndex].Cells[COLUNA_VERSAO_ARQUIVO].Value = id.versao.ToString(); } else { MessageBox.Show(this, rm.GetString("UPDATE_FIRMWARE_VERSION_ERROR") + id.versao + ")", rm.GetString("MAIN_MENU_MBOX_OPEN_ERROR_TITLE"), MessageBoxButtons.OK, MessageBoxIcon.Error); } } else if ((id.nomeProduto.Equals(Util.Util.NOME_FIRMWARE_TURBUS)) && (dataGridViewAtualizarFirmware.Rows[e.RowIndex].Cells[COLUNA_PRODUTO].Value as string).Equals(Util.Util.NOME_FIRMWARE_CONTROLADOR)) { dataGridViewAtualizarFirmware.Rows[e.RowIndex].Cells[COLUNA_PRODUTO].Value = id.nomeProduto; dataGridViewAtualizarFirmware.Rows[e.RowIndex].Cells[COLUNA_VERSAO].Value = id.versao.ToString(); dataGridViewAtualizarFirmware.Rows[e.RowIndex].Cells[COLUNA_DIRETORIO].Value = nomeArquivo; dataGridViewAtualizarFirmware.Rows[e.RowIndex].Cells[COLUNA_VERSAO_ARQUIVO].Value = id.versao.ToString(); } else { MessageBox.Show(this, rm.GetString("UPDATE_FIRMWARE_PRODUCT_ERROR") + id.nomeProduto + ")", rm.GetString("MAIN_MENU_MBOX_OPEN_ERROR_TITLE"), MessageBoxButtons.OK, MessageBoxIcon.Error); } } } catch { } } else if (e.ColumnIndex == COLUNA_UPDATES) { indiceLinhaDownload = e.RowIndex; string produto = dataGridViewAtualizarFirmware.Rows[e.RowIndex].Cells[COLUNA_PRODUTO].Value.ToString(); Version versao = new Version(dataGridViewAtualizarFirmware.Rows[e.RowIndex].Cells[COLUNA_VERSAO].Value.ToString()); string sw_fw = (produto == Application.ProductName) ? "SW" : "FW"; string familia = versao.Major.ToString(); string url = fachada.VerificarAtualizarSistemas(familia, produto, sw_fw, versao.ToString()); string filename = "\\" + produto + "_" + familia + "_" + sw_fw + "_" + versao.ToString().Replace(".", "_"); if (!String.IsNullOrEmpty(url)) { dataGridViewAtualizarFirmware.Rows[e.RowIndex].Cells[COLUNA_DIRETORIO].Value = url; Uri uri = new Uri(url); webList[indiceLinhaDownload].DownloadFileAsync(new Uri(url), Fachada.diretorio_downloads + "\\" + filename + Path.GetExtension(uri.PathAndQuery)); } else { dataGridViewAtualizarFirmware.Rows[indiceLinhaDownload].Cells[COLUNA_PERCENTUAL].Value = rm.GetString("UPDATE_FIRMWARE_MSG_ATUALIZADO"); } } }