|   |   | 
| 
 | Можно ли расширением заменить полностью общий модуль? | ☑ | ||
|---|---|---|---|---|
| 0
    
        Гена гуру 25.02.25✎ 12:14 | 
        Вопрос теоретический. 
 Есть общий модуль ABC. Можно ли его полностью заменить на EF_01_ABC и надо ли потом во всех местах конфигурации делать замену в обращении к ABC на EF_01_ABC ? | |||
| 1
    
        Fedor-1971 25.02.25✎ 12:17 | 
        (0) Целиком - это для каждой процедуры/функции сделать заглушку Вместо и потом изменять алгоритмы работы оных
 Вот только зачем всё забивать? | |||
| 2
    
        Гена гуру 25.02.25✎ 12:18 | 
        (1) Увы... Сам модуль скрыт под сообщением: 
 "Исходный текст модуля отсутствует". | |||
| 3
    
        Волшебник 25.02.25✎ 12:19 | 
        (2) Можно взломать, декомпилировать     | |||
| 4
    
        Доминошник 25.02.25✎ 12:20 | 
        (0)  Можно ли его полностью заменить на EF_01_ABC Заменить - можно. надо ли потом во всех местах конфигурации делать замену в обращении к ABC на EF_01_ABC ? Нет, не надо. | |||
| 5
    
        Fedor-1971 25.02.25✎ 12:23 | 
        (2) тогда придётся выкопать все обращения к данному модулю из конфигурации и написать свои алгоритмы, а вызовы изменять не придётся     | |||
| 6
    
        Fedor-1971 25.02.25✎ 12:26 | 
        (3) Можно, но, возможно, что простая реализация процедур/функций займёт сравнимое время     | |||
| 7
    
        Регистр 25.02.25✎ 12:27 | 
        (3) Что, уже началось ?
 (как в известном анекдоте: "Так, я гляжу, товарищ полковник все время то на часы смотрит, то на *, то на часы, то на *! А потом как товарищ полковник ему по роже дал, так я подумал, что по всей стране началось") | |||
| 8
    
        Гена гуру 25.02.25✎ 12:27 | 
        (3) Хочется легально... почти )
 (4) Итак, я вижу по коду какие на выходе из чёрного ящика ABC есть внутри функции и процедуры. Создаю расширение EF_01_ABC, внутри прописываю эти функции и процедуры. И всё? Во всех местах конфы, где есть, например, Что-то = ABC.Процедура_1(); не надо заменять на EF_01_ABC.Процедура_1(); ? Что-то слишком гладко получится, нет? | |||
| 9
    
        Волшебник 25.02.25✎ 12:28 | 
        (7)(8) Если кому-то нужно моё разрешение, то я его даю.     | |||
| 10
    
        Регистр 25.02.25✎ 12:28 | 
        (6) ты тот самый d.Fedor ? Или ты другой Fedor ?     | |||
| 11
    
        Fedor-1971 25.02.25✎ 12:30 | 
        (8) Попробуй добавить в расширение любую функцию из открытого общего модуля с префиксом "Вместо" и проверь отладчиком её вызов
 Тупо попадёшь в расширение | |||
| 12
    
        Волшебник 25.02.25✎ 12:30 | 
        ГК РФ. Статья 1280. Свободное воспроизведение программ для ЭВМ и баз данных. Декомпилирование программ для ЭВМ
 3. Лицо, правомерно владеющее экземпляром программы для ЭВМ, вправе без согласия правообладателя и без выплаты дополнительного вознаграждения воспроизвести и преобразовать объектный код в исходный текст (декомпилировать программу для ЭВМ) или поручить иным лицам осуществить эти действия, если они необходимы для достижения способности к взаимодействию независимо разработанной этим лицом программы для ЭВМ с другими программами, которые могут взаимодействовать с декомпилируемой программой, при соблюдении следующих условий:
 1) информация, необходимая для достижения способности к взаимодействию, ранее не была доступна этому лицу из других источников; 2) указанные действия осуществляются в отношении только тех частей декомпилируемой программы для ЭВМ, которые необходимы для достижения способности к взаимодействию; 3) информация, полученная в результате декомпилирования, может использоваться лишь для достижения способности к взаимодействию независимо разработанной программы для ЭВМ с другими программами, не может передаваться иным лицам, за исключением случаев, когда это необходимо для достижения способности к взаимодействию независимо разработанной программы для ЭВМ с другими программами, а также не может использоваться для разработки программы для ЭВМ, по своему виду существенно схожей с декомпилируемой программой для ЭВМ, или для осуществления другого действия, нарушающего исключительное право на программу для ЭВМ. | |||
| 13
    
        Fedor-1971 25.02.25✎ 12:30 | 
        (10) Походу другой     | |||
| 14
    
        Гена гуру 25.02.25✎ 12:35 | 
        (11) Да это ежу понятно. Но! когда в коде ЕСТЬ заменяемая функция. Но ведь её явно НЕТ в скрытом модуле.     | |||
| 15
    
        Bigbro 25.02.25✎ 12:36 | 
        модуль в ошибки падает крашится или зависает надолго?
 если нет так просто после возврата свой алгоритм допилить и все. в свое время с Рарус-автотранспортом именно так пришлось обойтись, поскольку там был кривой расчет. а исправлять они отказались, предложили УАТ купить))) | |||
| 16
    
        Fedor-1971 25.02.25✎ 12:42 | 
        (12) Это слабо подойдёт, т.к. правообладатель ОДИН и по его решению часть кода спрятана.
 Тут если только скрытый код содержит явную ошибку, мешающую работе и не исправляемую, например, за неделю и нет возможности откатиться к предыдущей версии. Примерный план действий: Официальное письмо разработчику - тра-ля-ля (переписка, что работа остановлена) - результат: отдайте деньги козлодоевы или мы сами починим и вы нам "И с деньгами не нать, и без денег не нать" | |||
| 17
    
        Волшебник 25.02.25✎ 12:46 | 
        (16) Почитайте внимательно. Деньги за программу заплачены. В закрытом модуле содержится ошибка. Чтобы её исправить, вы имеете законное право декомпилировать модуль.     | |||
| 18
    
        Fedor-1971 25.02.25✎ 12:46 | 
        (14) Как это нет, берёшь и пишешь руками, т.е. имя функции тебе известно, место вызова то же
 примерно так: &Вместо("ВызываемаяФункция") Функция EF_01_ВызываемаяФункция() А параметры достанешь из обращения в открытой части кода | |||
| 19
    
        Доминошник 25.02.25✎ 12:54 | 
        (14) Заимствуем модуль целиком в расширение
 И далее - как сказано в (18) начинаем в расширении писать свои обработки процедур и функций (не забывая про параметры). Проблема может быть, если в параметрах оригинальных процедур и функций есть что-то типа "ЗНАЧ", " = Неопределено" и т.п. | |||
| 20
    
        Гена гуру 25.02.25✎ 13:04 | 
        (18) Ладно. Спасибо. Поверю. Пока поверю... )
 Что-то как-то сомнюк... Может при обращении кода к чёрному ящику там компиллируется наименование функции и наше "Вместо" квакнет... Но... поверю специалистам, что сработает. | |||
| 21
    
        bolder 25.02.25✎ 13:07 | 
        (0) это другой подход.Мне нравится предложение (1) и (11).Все входы черного ящика переопределяем в расширении.Работает на ура.     | |||
| 22
    
        bolder 25.02.25✎ 13:08 | 
        (20) Вместо сработает первым.     | |||
| 23
    
        Гена гуру 25.02.25✎ 13:10 | 
        (21) (22) Мерси. 
 Ну и на фига тогда прятать модуль, если на раз обходится? [вопрос риторический] | |||
| 24
    
        Волшебник 25.02.25✎ 13:12 | 
        (23) Прятать исходники бизнес-программы — это вообще преступление.     | |||
| 25
    
        bolder 25.02.25✎ 13:14 | 
        (23) Нетривиальный код )))И деньги.     | |||
| 26
    
        Злоп 25.02.25✎ 13:40 | 
        А что в этих закрытых может быть нетривиального? Ладно я понимаю, какая-нибудь оптимизационная задача спрятана или что-нить сложное неочевидное...     | |||
| 27
    
        bolder 25.02.25✎ 13:43 | 
        (26) Ну допустим.Просто массивный код с каким то ноу хау.Продающийся на известном ресурсе с доступом на определенный период.     | |||
| 28
    
        Доминошник 25.02.25✎ 13:55 | 
        (26) В типовой БП закрыты (как минимум) несколько ОМ по работе с ЛК ЕНС: ЕдиныйНалоговыйСчетЛичныйКабинет, ЕдиныйНалоговыйСчетИнтеграцияБП, ЕдиныйНалоговыйСчетИнтеграцияВызовСервера, ЕдиныйНалоговыйСчетИнтеграцияВызовСервераБП, ЕдиныйНалоговыйСчетИнтеграцияПовтИсп, ЕдиныйНалоговыйСчетЛичныйКабинет     | |||
| 29
    
        Fedor-1971 25.02.25✎ 14:00 | 
        (26) Например, проверка лицензионного ключа и несколько расчётных процедур, чтобы тупо не отключили     | |||
| 30
    
        Eiffil123 25.02.25✎ 14:00 | 
        (24) покупатель может не покупать программу без исходников, если он за опенсорс-решения     | |||
| 31
    
        bolder 25.02.25✎ 14:01 | 
        (28) И правильно.Нефиг всяким хакерам в ЛС ФНС лазить.     | |||
| 32
    
        stix2010 25.02.25✎ 14:13 | 
        (0) если он не глобальный     | |||
| 33
    
        Bigbro 25.02.25✎ 14:52 | 
        (26) рарус там прятал расчет себестоимости.
 видимо от стыда прятал, поскольку работал он криво, приходилось править выходные данные. | |||
| 34
    
        eddy_n 25.02.25✎ 15:07 | 
        (26) Любая вещь, связанная с шифрованием.     | |||
| 35
    
        Волшебник 25.02.25✎ 15:10 | 
        (34) Алгоритм шифрования должен быть открытым. Вся секретность должна быть обеспечена секретным ключом.     | |||
| 36
    
        bolder 25.02.25✎ 15:11 | 
        (32) Глобальный заменяется на неглобальный.С такими же именами процедур. Вызов будет по методу в (0), прийдется везде менять.Все заработает.     | |||
| 37
    
        _Дайвер_ 25.02.25✎ 17:01 | 
        Префиксы EF расширений только для исправлений от 1С, там через БСП подрубаются они как то, не помню точно, но свои расширения работать вроде как отказываются. Делай свой префикс расширения и херачь везде &Вместо     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |