private void labelControl6_Click(object sender, EventArgs e) { OpenFileDialog dosyaac = new OpenFileDialog(); dosyaac.Filter = "Zip files (*.zip)|*.zip|All files (*.*)|*.*"; dosyaac.Title = "Hitit Zip Dosyası Seçiniz"; if (dosyaac.ShowDialog() == DialogResult.OK) { //SaveFileDialog dosyakaydet = new SaveFileDialog(); //dosyakaydet.Filter = "Zip files (*.zip)|*.zip|All files (*.*)|*.*"; //dosyakaydet.Title = "Kaydedilecek Yer Seçiniz"; //dosyakaydet.FileName = dosyaac.FileName.Substring(0,dosyaac.FileName.Length-4); //if (dosyakaydet.ShowDialog() == DialogResult.OK) Digerislemler.ZipAc(dosyaac.FileName); //Process.Start(dosyakaydet.InitialDirectory); //OpenFileDialog dosyaac2 = new OpenFileDialog(); //dosyaac2.ShowDialog(); //MessageBox.Show(dosyaac.FileName + " Geri Yüklendi."); } }
private void YedekAl() { DateTime Tarih = DateTime.Now; string Yer = Tarih.ToString("yyyyMMddHHmm") + ".bak"; try { labelControl1.Text = "Veritabanı Shrink Yapılıyor..."; if (DB.VeriTabaniAdi == "") { DB.VeriTabaniAdi = "MTP2012"; } DB.ExecuteSQL("DBCC SHRINKDATABASE (" + DB.VeriTabaniAdi + ", 10);"); } catch (Exception) { //a } Application.DoEvents(); labelControl1.Text = "Yedek Alınıyor Lütfen Bekleyiniz..."; try { string YerSil = Tarih.AddDays(-10).ToString("yyyyMMddHHmm") + ".bak"; DataTable dt = DB.GetData("select top 1 Sirket from Sirketler with(nolock)"); string Sirket = dt.Rows[0]["Sirket"].ToString(); Sirket = Sirket.Replace("*", ""); Yer = yedekalinacakyer + "\\" + Sirket + Yer; //Sirket + Dosya string sql = "BEGIN TRY BACKUP DATABASE [" + DB.VeriTabaniAdi + "] TO DISK = '@yer'" + @" WITH NOFORMAT, NOINIT, NAME = N'Full Database Backup', SKIP, NOREWIND, NOUNLOAD, STATS = 10 select ('1') as sonuc END TRY BEGIN CATCH; SELECT ERROR_MESSAGE() AS sonuc; END CATCH"; sql = sql.Replace("@yer", Yer); DataTable dt1 = DB.GetData(sql); if (dt1.Rows.Count == 0) { MessageBox.Show("Yedek Alınamadı. MSSQL Hatası Oluştu"); return; } string sonuc = dt1.Rows[0][0].ToString(); if (sonuc == "1") { if (File.Exists(yedekalinacakyer + "\\" + Sirket + YerSil)) { File.Delete(yedekalinacakyer + "\\" + Sirket + YerSil); } labelControl1.Text = "Veritabanı yedeği alındı."; btnKlasorAc.Enabled = true; pictureBox1.Visible = false; //ArrayList list = new ArrayList(); //list.Add(new SqlParameter("@yedekalinacakyer", yedekalinacakyer)); //list.Add(new SqlParameter("@YedekSaati", dateEdit2.DateTime.ToString("HH:mm:ss"))); //Degerler.YedekSaati = dateEdit2.DateTime.ToString("HH:mm:ss"); //DB.ExecuteSQL("UPDATE Sirketler SET yedekalinacakyer=@yedekalinacakyer,YedekSaati=@YedekSaati", list); DB.ExecuteSQL("INSERT INTO Logs (LogTipi,LogAciklama,Tarih,Sonuc) VALUES(3,convert(varchar(20),getdate(),120)+' Yedek Alındı',getdate(),1)"); } else { DevExpress.XtraEditors.XtraMessageBox.Show("Yedek Alınırken Hata Oluştur.\nHata Mesajı: " + sonuc, Degerler.mesajbaslik, MessageBoxButtons.OK, MessageBoxIcon.Error); DB.ExecuteSQL("INSERT INTO Logs (LogTipi,LogAciklama,Tarih,Sonuc,HataAciklama,fkKullanicilar) " + " VALUES(3,'Yedek Alınırken Hata Oluştur',getdate(),0,'" + sonuc + "'," + DB.fkKullanicilar + ")"); return; } } catch (Exception exp) { DevExpress.XtraEditors.XtraMessageBox.Show("Program veritabanı yedek alınırken Hata Oluştu." + exp.Message.ToString(), "Personel Takip Sistemi", MessageBoxButtons.OK, MessageBoxIcon.Error); pictureBox1.Visible = false; return; } //sıkıştır bool bsonuc = Digerislemler.Ziple(Yer); //sıkıştırdıktan sonra bak dosyasını sil if (File.Exists(Yer)) { File.Delete(Yer); } //DB.epostagonder("*****@*****.**", sirketadi.Text + " Yedek Aldı", "", ServerAdi.Text); }