2012-08-15 8 views
7

Mam plik PDF innej firmy z niektórymi polami formularza, który muszę wypełnić programowo. Plik PDF jest zabezpieczony. Szczegółowe ustawienia zabezpieczeń: SecurityMethod: Password Security, Document Open Password: No, ... Form Field Fill-in or Signing: Allowed... Kiedy próbuję otworzyć i wypełnić dokument ręcznie, wszystko jest ok, a ja nie jestem proszony o podanie hasła. Ale z kodem, zawiedzie z wyjątkiem. Oto kod (używam biblioteki iTextSharp):Niepoprawny wyjątek BadPasswordException podczas wypełniania pliku pdf za pomocą iTextSharp

var str = new MemoryStream(); 
var reader = new PdfReader(_path); 
var stamper = new PdfStamper(reader, str); 

Tworzenie obiektu PdfStamper nie z wyjątkiem: BadPasswordException. PdfReader not opened with owner password.

Wszelkie pomysły, dlaczego nie jest on z kodem, ale nie ręcznie? Z góry dzięki.

Odpowiedz

19

Czy próbowałeś dodanie

PdfReader.unethicalreading = true; 

przed inicjalizacji reader?

+0

Dzięki, pomogło. – Skog

+1

@Michal Klouda: Nie otrzymuję nieetycznych właściwości. – Ankur

+0

Dziękuję za tę wskazówkę. To naprawdę pomogło! @Ankur to działało dla mnie, gdy używam tego kodu: PdfReader.unethicalreading = true; Czytnik PdfReader = new PdfReader (sourceFiles [counter]); – bernhardrusch