Снимаю, порчу

Обсуждение проектов наших жителей.
Вы можете выставить проект на тест или найти помощников для его реализации.

Модератор: BV

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Снимаю, порчу

Сообщение tyomitch » 01.10.2005 (Сб) 22:02

Попался мне тут на днях PDF, запрещающий копирование в клипборд и печать.

И показал мне тогда GSerg тулзу от ElcomSoft для обхода этой защиты. Тулза сия стоит денег, что возмутительно.

Сел тогда я и написал её замену. Прога моя предназначалась исключительно для личного пользования, т.ч. я не гарантирую, что ваши файлы она вскроет так же лихо, как мой :-)

Итак, synopsis:
снимаю защиту с PDF, если просмотр без пароля разрешён
порчу те из PDF, которые непохожи на доставшийся мне (возможно, вам таких тоже не достанется).

Как и положено исключительно личной проге, имена входного-выходного файлов прописываются в исходнике :-P

Жду отзывов, если у кого будут ;-)
У вас нет доступа для просмотра вложений в этом сообщении.
Изображение

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 01.10.2005 (Сб) 22:18

Хм... Ты знаешь, у крэкнутой версии перестаёт работать оглавление :)
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 01.10.2005 (Сб) 22:29

Ссылки-то? А зачем их крэкать, они же не копируются и не печатаются всё равно? :-?
А с экрана можно и некрэкнутый вариант читать.

[update]
Кому надо, чтобы ссылки тоже крэкались, добавьте в конец DecryptPDFObject строки:
Код: Выделить всё
    ElseIf TypeOf o Is pdfArray Then
        For Each o In o.Members
            DecryptPDFObject o, ObjNo, Key
        Next

[/update]
Изображение

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 01.10.2005 (Сб) 22:39

Не, я к тому, что когда документ большой, то придётся его листать вручную, потому что дерево-оглавление не только не работает в плане перехода по ссылкам, но даже не даёт открыть некоторые ноды, а некоторые открывает частично, после чего перестаёт перерисовываться...

Хотя да, в плане печати конечно... А вот если хочется крэкнуть с целью копирования? Листать-таки вручную придётся :)
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 01.10.2005 (Сб) 22:43

Update рулит :)
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

BV
Thinker
Thinker
Аватара пользователя
 
Сообщения: 3987
Зарегистрирован: 12.09.2004 (Вс) 0:55
Откуда: Молдавия, г. Кишинёв

Сообщение BV » 01.10.2005 (Сб) 23:18

Для каждой функции свой класс? Зачем?
const char *out = "|*0>78-,+<|"; size_t cc = char_traits<char>::length(out);
for (size_t i=0;i<cc;i++){cout<<static_cast<char>((out[i]^89));}cout<<endl;

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 02.10.2005 (Вс) 13:02

BV писал(а):Для каждой функции свой класс? Зачем?

А ты посмотри повнимательнее ;-)
Где у меня функции, и зачем у меня классы.
Изображение


Вернуться в Наши проекты

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6

    TopList