private void btnVerify_Click(object sender, EventArgs e) { SignHelper signHelper = new SignHelper(); string signedERecetePath = tBoxSignedERecetePath.Text; string verifyResultStr = signHelper.verifySignature(signedERecetePath); MesajiIsle(verifyResultStr, 0); }
private void btnAddParalelSignature_Click(object sender, EventArgs e) { SignHelper signHelper = new SignHelper(); string eRecetePath = tBoxERecetePath.Text; string estFilePath = signHelper.createParalelSignature(eRecetePath); if (estFilePath != null) { tBoxSignedERecetePath.Text = estFilePath; MesajiIsle(estFilePath + " konumunda paralel imzalı E-Reçete oluşturuldu.", 0); } }
private void btnAddTimeStamp_Click(object sender, EventArgs e) { SignHelper signHelper = new SignHelper(); string signedERecetePath = tBoxSignedERecetePath.Text; string estFilePath = signHelper.upgradeToEST(signedERecetePath); if (estFilePath != null) { tBoxSignedERecetePath.Text = estFilePath; MesajiIsle(estFilePath + " konumunda zaman damgalı imzalı E-Reçete oluşturuldu.", 0); } }
// dll embed icin //// dll handler //System.Reflection.Assembly CurrentDomain_AssemblyResolve(object sender, ResolveEventArgs args) //{ // string keyName = new AssemblyName(args.Name).Name; // // If DLL is loaded then don't load it again just return // if (_libs.ContainsKey(keyName)) return _libs[keyName]; // // using (Stream stream = Assembly.GetExecutingAssembly().GetManifestResourceStream(DllResourceName("itextsharp.dll"))) // <-- To find out the Namespace name go to Your Project >> Properties >> Application >> Default namespace // using (Stream stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("EsyaXMLSignatureExample." + keyName + ".dll")) // <-- To find out the Namespace name go to Your Project >> Properties >> Application >> Default namespace // { // byte[] buffer = new BinaryReader(stream).ReadBytes((int)stream.Length); // Assembly assembly = Assembly.Load(buffer); // _libs[keyName] = assembly; // return assembly; // } //} // dll embed icin //private string DllResourceName(string ddlName) //{ // string resourceName = string.Empty; // foreach (string name in Assembly.GetExecutingAssembly().GetManifestResourceNames()) // { // if (name.EndsWith(ddlName)) // { // resourceName = name; // break; // } // } // return resourceName; //} private void btnEReceteImzala_Click(object sender, EventArgs e) { SignHelper signHelper = new SignHelper(); // string signedFilePath = signHelper.eReceteImzala(tBoxERecetePath.Text, tBoxSignedERecetePath.Text); // dosyayiBase64Yaz(signedFilePath); if (Program.ParamXML == "" && Program.ParamPath == "" && tBoxERecetePath.Text == "") { MesajiIsle("EReçete verisi string olarak da path olarak da gelmedi, kaynak dosyayı seçiniz!", 0); } if (rbString.Checked && Program.ParamXML == "") { MesajiIsle("EReçete verisi string olarak gelmedi, kaynak dosya üzerinden işlem yapınız!", 0); rbFile.Checked = true; if (Program.ParamOto == "0") { return; } //return; } if (Program.Hata == 1) { Environment.Exit(1); } if (tbPinKodu.Text == "") { MesajiIsle("Pin kodunu giriniz!", 0); if (Program.ParamOto == "0") { return; } if (Program.ParamOto == "1") { Environment.Exit(1); } //return; } if (Program.Hata == 1) { Environment.Exit(1); } // dosya yapisi kontrolu if (Program.ParamOto != "1") { if (txtXML.Text.Contains("<ereceteBilgisi>") && txtXML.Text.Contains("</ereceteBilgisi>") && txtXML.Text.Contains("<takipNo>") && txtXML.Text.Contains("<doktorTcKimlikNo>")) { // if (MessageBox.Show("E-Reçete bilgisini 'Güvenli Elektronik İmza' ile imzalamak istediğinizden emin misiniz?", "Dikkat", MessageBoxButtons.OKCancel) == DialogResult.OK) // { } // else MesajiIsle("", 1); } else { if (txtXML.Text.Contains("<") && txtXML.Text.Contains("</") && txtXML.Text.Contains(">")) { //if (MessageBox.Show("İmzalanacak bilgi, bir XML ve e-Reçete değil. 'Güvenli Elektronik İmza' ile imzalamak istediğinizden emin misiniz?", "Dikkat", MessageBoxButtons.OKCancel) == DialogResult.OK) //{ } //else MesajiIsle("", 1); } else { if (MessageBox.Show("İmzalanacak XML, geçerli bir e-Reçete değil. Yine de 'Güvenli Elektronik İmza' ile imzalamak istediğinizden emin misiniz?", "Dikkat", MessageBoxButtons.OKCancel) == DialogResult.OK) { } else { MesajiIsle("", 1); } } } } if (Program.Hata == 1) { Environment.Exit(1); } Program.PinKodu = tbPinKodu.Text; string XML = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" + signHelper.eReceteImzala(tBoxERecetePath.Text, tBoxSignedERecetePath.Text, Program.ParamXML, cbDosyayaYaz.Checked); if (Program.Hata == 1) { Environment.Exit(1); } // dosyaya yazilacaksa eReceteImzala icinde imzalanmis xsig dosyasi olusuyor // sonra bu dosya alttaki prosedurde okunup base64'e cevriliyor ve sonu _64.txt olacak sekilde kaydediliyor. if (cbDosyayaYaz.Checked) { dosyayiBase64Yaz(tBoxSignedERecetePath.Text.Replace(".xml", ".xsig")); } // ONEMLI, base64 olarak console ciktisi veriyorum. ikazanci byte[] signStream = System.Text.Encoding.UTF8.GetBytes(XML); // hata varsa parametreyi geri dondurmeden evvel cik if (Program.Hata == 1) { Environment.Exit(1); } System.Console.WriteLine("esignerbase64:" + System.Convert.ToBase64String(signStream) + ":esignerbase64"); if (XML != "") { Application.Exit(); } //TextWriter tw = new StreamWriter(tBoxSignedERecetePath.Text.Replace(".xml", ".xsig")+"-String_64.txt"); //// write a line of text to the file //tw.WriteLine(System.Convert.ToBase64String(signStream)); //// close the stream //tw.Close(); //Akıllı kartla doğrudan imzala // string signedFilePath = signHelper.eReceteImzala_SmartCardSigner(tBoxERecetePath.Text); // path donusunu kaldirip mesaji ereceteImzala'mnin icine aldim... ikazanci 20.6.2014 //if (signedFilePath != null) //{ // tBoxSignedERecetePath.Text = signedFilePath; // MessageBox.Show(signedFilePath + " konumunda imzalı E-Reçete oluşturuldu."); //} // string eReceteImzalaBase64 = signHelper.eReceteImzalaBase64(tBoxERecetePath.Text); //MessageBox.Show(eReceteImzalaBase64); }