![]() |
#21 |
Участник
|
Если получится, скажи. Я тожен встречал такую защиту уже. Очень интересно, как ее умудрились провернуть.
Но вся прелесть той защиты в том, что никто не знает как ее сделали и, соответственно, как ее обойти ![]() |
|
![]() |
#22 |
Участник
|
Цитата:
![]() P.S.: Представьте себе, например, восстановить логику работы 12-ого кодеюнита. |
|
![]() |
#23 |
Участник
|
а в 12 кодюните есть логика?
![]() |
|
![]() |
#24 |
Участник
|
|
|
![]() |
#25 |
Участник
|
Вот только после доработок некоторых консалтеров она просто нереально безбашенная
![]()
__________________
Want to believe... |
|
![]() |
#26 |
Участник
|
Решил попробовать как все это работает, тем более что повод есть. Очень интересно добавить поле с системным номером (< 50000). Никаких лицензионных соглашений нарушать не собираюсь, просто в целях самообразования, поэтому просьба пост не трогать. Сохранил табличку в файлике. Редактором поменял номера полей (2 вхождения нашел для замены). Закачал измененный файлик в [BLOB Reference] напрямую, через адо. Открываю табличку в дизайнере, ничего не изменилось. Отсюда вопрос, что недоделал?
|
|
![]() |
#27 |
Участник
|
То что видно в дизайнере после манипуляций с объектом путем внешнего редактирования не всегда соответвует скомпилированной части объекта.
![]()
__________________
Want to believe... |
|
![]() |
#28 |
Участник
|
А как сделать, чтобы соответствовало?
|
|
![]() |
#29 |
Участник
|
|
|
![]() |
#30 |
Участник
|
С соотвествием я разобрался вопрос снят. Но вот после закачки блоба через адо, табличка перестала открываться в дизайнере. Ругается на размер сжатого блоба. И действительно DATALENGTH на [BLOB Reference] выдает удивительную цифру.
|
|
![]() |
#31 |
Moderator
|
Тут все несколько сложнее.
Все дело в том, что скомпилированный код хранится в [BLOB Reference] в сжатом и зашифрованном виде. Поэтому то Datalength([BLOB Reference]) и [BLOB Size] не совпадают. |
|
![]() |
#32 |
Moderator
|
В случае когда работаем через C/AL - в файл выгружается расжатый и расшифрованный код (в откомпилированном виде), размер которого совпадает с [BLOB Size]
|
|
![]() |
#33 |
Участник
|
А как же тогда загрузить измененный файлик обратно, чтобы система могла с ним работать. Может опишешь этот процесс поподробнее. Через CAL тоже загрузить не дает, ругается на отсутствие прав
|
|
![]() |
#34 |
Участник
|
|
|
![]() |
#35 |
Участник
|
таким:
WHILE (lFile.READ(lChar) > 0) DO BEGIN lVariant := lChar; lAdoRS.Fields.Item('BLOB').AppendChunk(lVariant); END; lAdoRS.Update; |
|
![]() |
#36 |
Участник
|
Цитата:
Objects.SETRANGE(Тип, Objects.Тип :: Codeunit); Objects.SETRANGE(ID, 12); IF Objects.FIND('-') THEN BEGIN Objects."BLOB Ссылка".IMPORT('C:\MyFile.txt'); Objects.MODIFY; END; |
|
![]() |
#37 |
Moderator
|
Цитата:
А как же тогда загрузить измененный файлик обратно, чтобы система могла с ним работать. Может опишешь этот процесс поподробнее. Через CAL тоже загрузить не дает, ругается на отсутствие прав
Цитата:
Если делать так, то ругаться не должен
|
|
![]() |
#38 |
Участник
|
|
|
![]() |
#39 |
Участник
|
Я же написал, что если из CAL загружать будет ругаться. Поэтому
Objects."BLOB Ссылка".IMPORT('C:\MyFile.txt'); не прокатит, если в таблице есть поля за пределами лицензии. Загружать нужно напрямую, но как автор не хочет открывать. Может на личку можно отправить ChuckGek@rbcmail.ru |
|
![]() |
#40 |
Участник
|
Цитата:
Цитата:
4.4. Запрещены реклама, продажа, обмен и распространение нелицензионного программного обеспечения. Запрещено любое обсуждение взлома, обхода защиты любого программного обеспечения. Запрещено размещение ссылок на нелицензионное программное обеспечение, на сайты, пиринговые сети, листы рассылки и т.п. с подобным содержанием.
__________________
Русский человек славится своим умением находить выход из самых трудных ситуаций, но еще более он славится своим умением находить туда вход. |
|