mfarkan / E-Imza-iTextSharp-ESYA-Api

E-imza ESYA API ile iTextSharp kütüphaneleri kullanılarak PDF imzalama işlemleri.
Apache License 2.0
33 stars 7 forks source link

Dosyaların imzalanması sırasında bir hata oluştu #1

Closed hakancunier closed 5 years ago

hakancunier commented 5 years ago

Selamlar,

Öncelikle teşekkürler emeğiniz için. .net framework 3.5 kurmadan solution açılmadı. Onu kurduktan sonra hem KamuSM TEST sertifikası ile hem de TurkTrust normal sertifikası ile denedim ancak her ikisinde de SignatureManager:23 satırda aşağıdaki gibi bir çıktı alıyoruz.

"Empty path name is not legal" itext den Exception thrown: 'System.ArgumentException' in mscorlib.dll at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy) at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options, String msgPath, Boolean bFromProxy) at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access) at iTextSharp.text.pdf.PdfStamper.CreateSignature(PdfReader reader, Stream os, Char pdfVersion, String tempFile, Boolean append) at DesktopPdfSigner.PdfSigner.PdfSigner.SignPDF(PdfRequestDTO request, Byte[] PDFContent) in D:\E-Imza-iTextSharp-ESYA-Api\E-DesktopPdfSigner\PdfSigner\PdfSigner.cs:line 74 at DesktopPdfSigner.SignatureManager.SignatureManager.SignPdf(PdfRequestDTO requestDTO) in D:\E-Imza-iTextSharp-ESYA-Api\E-DesktopPdfSigner\SignatureManager\SignatureManager.cs:line 18

mfarkan commented 5 years ago

merhaba , ben teşekkür ederim.Uygulamanın frameworkü konusunu tekrar kontrol etmem gerekebilir.Hata aslında SignPDF methodunun 23.satırında değil de içerisinde. PdfSigner.cs:line 74 Olarak görüyorum , buraya kadar debug yaparak tam hatanın alınması durumuna bakmak gerekiyor Şuanda elimde herhangi bir imza aracı mevcut değil hata üstünden gitmek gerekiyor.

Ayrıca bu uygulamanın C:\ klasörüne yazma yetkisi olup olmadığını kontrol edebilir misiniz ? arattığımda dosya yazma işlemiyle ilgili bir sorun olduğunu tahmin ediyorum isterseniz uygulamanın altına bir klasöre PDF imzalatmayı deneyebilir misiniz ?

hakancunier commented 5 years ago

Merhaba,

Sorun dediğiniz gibi 74 satırını aşağıdaki şekilde değiştirince düzeldi.

PdfStamper pdfStamper = PdfStamper.CreateSignature(pdfReader, stream, '\0', null, true);

Bu uygulamaya XML signing eklemek mümkün mü? Önerebileceğiniz bir doküman var mıdır?

mfarkan commented 5 years ago

Teşekkürler , sanırım şuanda imzalama işlemini yaptınız diye algılıyorum.Bu arada itextSharpı ve Windows Uygulamasının frameworkünü güncelleyerek deneyebilirsiniz güncel framework iyidir.

Ayrıca benim zamanım kısıtlı olduğu için sadece PDF imzalama işlemlerine bakabildim , fakat tek yararlandığım kaynak buydu ;

KAMU SM

Sanırım issue'yu kapatabilirsiniz 👍

hakancunier commented 5 years ago

Ayrıca 70.nci satırı aşağıdaki gibi değiştirince deprecated hatası da gitti. ocsp = new OcspClientBouncyCastle(null);

mfarkan commented 5 years ago

Gerekli değişiklikleri yaptığınız için teşekkür ederim.Kamu SM'in dökümantasyonunda xml imzalama ile ilgili (özellikle e-fatura) kısımlar mevcut yardımcı olur diye düşünüyorum.

İyi günler dilerim 👍

enginhazar commented 3 years ago

Merhabalar Bu proje ile imzalanan PDF dosyaları imzager ile doğrulanmıyor bilginiz varmı