Переключение на Главную Страницу Страницы: [1]  ОтправитьПечать
Очень популярная тема (более 25 ответов) Помогите с загрузкой dll (число прочтений - 21414 )
Alex2013
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 56
Зарегистрирован: 18. Апреля 2013
Помогите с загрузкой dll
06. Декабря 2013 :: 13:33
Печать  
Есть клиенты,  у которых в глобальном модуле прописана загрузка внешней компоненты  древней 1С++ и Formex  когда они были в одной dll. Отчет мой использует последние версии когда они в рознь.  Глобальный  модуль изменять нельзя. Подложить например свежую 1С++ и потом подгрузить Formex тоже не вариант, так как повторюсь изменять глобальный нельзя, а грузиться они должны в глобальном обе!  Вижу вариант только написание  dll которая при загрузке, подгрузить свежие 1С++ и Formex! Это вообще реализуемо?
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Помогите с загрузкой dll
Ответ #1 - 07. Декабря 2013 :: 07:59
Печать  
Alex2013 писал(а) 06. Декабря 2013 :: 13:33:
Есть клиенты,  у которых в глобальном модуле прописана загрузка внешней компоненты  древней 1С++ и Formex  когда они были в одной dll. Отчет мой использует последние версии когда они в рознь.  Глобальный  модуль изменять нельзя. Подложить например свежую 1С++ и потом подгрузить Formex тоже не вариант, так как повторюсь изменять глобальный нельзя, а грузиться они должны в глобальном обе!  Вижу вариант только написание  dll которая при загрузке, подгрузить свежие 1С++ и Formex! Это вообще реализуемо?

реализуемо если знаешь с++.
но как бы гораздо правильнее прописать загрузку в глобальнике
двух библиотек и все.

  
Наверх
 
IP записан
 
Alex2013
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 56
Зарегистрирован: 18. Апреля 2013
Re: Помогите с загрузкой dll
Ответ #2 - 09. Декабря 2013 :: 06:14
Печать  
с++ не знаю Печаль, а может можно как-то через препроцессор 1С++, в нем загрузить Formex, кто что думает?
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Помогите с загрузкой dll
Ответ #3 - 09. Декабря 2013 :: 06:41
Печать  
Примитив - измени обработку ОбновлениеИБ и им подобные, которые запущаются в ПриНачалеРаботыСистемы.
Туда воткни загрузку ВК..
Профит.
  
Наверх
 
IP записан
 
Alex2013
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 56
Зарегистрирован: 18. Апреля 2013
Re: Помогите с загрузкой dll
Ответ #4 - 09. Декабря 2013 :: 07:35
Печать  
Глобальный модуль зашифрован защитой, его ни как не подправишь, служебные обработки тоже зашифрованы! Да и конфу вообще не хочется менять, чтобы она обновлялась автоматом.
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Помогите с загрузкой dll
Ответ #5 - 09. Декабря 2013 :: 08:28
Печать  
Тогда никак. Ибо в старой 1cpp были немного другие методы для работы .. Типа Сервиса и т.д.
  
Наверх
 
IP записан
 
Alex2013
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 56
Зарегистрирован: 18. Апреля 2013
Re: Помогите с загрузкой dll
Ответ #6 - 09. Декабря 2013 :: 08:33
Печать  
так, а препроцессор ни как нельзя подстроить? Я так понимаю, что при загрузке 1CPP.dll она читает defcls, а там написать код загрузки Formex? Правда препроцессором не использовал, смутно представляю как это можно сделать
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Помогите с загрузкой dll
Ответ #7 - 09. Декабря 2013 :: 08:39
Печать  
Даже если загрузишь удачно обе вк, кто текст модулей зашифрованных править будет ?
Ты таки уверен, что они работают с новыми версиями ?
  
Наверх
 
IP записан
 
Alex2013
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 56
Зарегистрирован: 18. Апреля 2013
Re: Помогите с загрузкой dll
Ответ #8 - 09. Декабря 2013 :: 09:31
Печать  
Дело в том, что править то ни надо зашифр. модули, отчет мой использует свежие dll, а в глобальнике прописана загрузка старой 1С++ когда она вместе с Формексам, если заменить старую dll, на свежую  то надо догрузить Формекс просто. Мой отчет могут использовать, а могут не запустить, если догружать, уже в моем отчете формекс, так что это вариант не катит, вот подумал может препроцессор поможет когда загружается 1С++, подгрузить Формекс и править ничего ни надо. Вообще идеальный вариант подменить dll которая прописана в глоб. модуле на другую dll, которая подгрузить 1С++ и Формекс, но опыта разработки внеш. компонент не имею Печаль  
  
Наверх
 
IP записан
 
Alex2013
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 56
Зарегистрирован: 18. Апреля 2013
Re: Помогите с загрузкой dll
Ответ #9 - 09. Декабря 2013 :: 09:39
Печать  
Я как то у Альфа спрашивал, сказал что это реализуемо, и вроде бы как поможет сделать эту dll, когда время у него появится, но че-то он пропал куда-то в асе уже нету пару месяцев, сайт его kzk2.ru не работает! Мож кто знает что с ним?
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Помогите с загрузкой dll
Ответ #10 - 09. Декабря 2013 :: 09:44
Печать  
Не вкурил.
Нафига тогда конфа вообще использует старую версию 1cpp ???
Если ты утверждаешь, что конфу править не придётся вообще.
В чем проблема тогда ?

Заменяешь 1cpp на новую в каталоге/бине и т.д..
В своей поделке смотришь, загружен ли формекс, если нет грузишь его и всё.
  
Наверх
 
IP записан
 
Alex2013
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 56
Зарегистрирован: 18. Апреля 2013
Re: Помогите с загрузкой dll
Ответ #11 - 09. Декабря 2013 :: 09:52
Печать  
Ну, это франч один ее использует, старую потому что они какой-то функционал заложили давно и используют ее по минимум, если я просто поменяю dll, тогда формекс не подгрузиться, а у них он используется минимально в журналах, соответственно Журналы документов не откроются. В глоб. модуле в принципе можно добавить загрузку Формекса, но при обновлении затрут эту строку и будет потом кипешь
  
Наверх
 
IP записан
 
chessman
God Member
*****
Отсутствует



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Помогите с загрузкой dll
Ответ #12 - 09. Декабря 2013 :: 10:25
Печать  
Я где-то год назад разбирался с kzk из чисто спортивного интереса. Было просто интересно, как это работает.

Предположим, что у нас есть доступ к коду глобальника. Что нужно в итоге сделать - я так и не понял.
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Помогите с загрузкой dll
Ответ #13 - 09. Декабря 2013 :: 10:49
Печать  
chessman писал(а) 09. Декабря 2013 :: 10:25:
Я где-то год назад разбирался с kzk из чисто спортивного интереса. Было просто интересно, как это работает.

Предположим, что у нас есть доступ к коду глобальника. Что нужно в итоге сделать - я так и не понял.


С какой версией ?
Со второй или с первой.. ?...

  
Наверх
 
IP записан
 
chessman
God Member
*****
Отсутствует



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Помогите с загрузкой dll
Ответ #14 - 09. Декабря 2013 :: 10:58
Печать  
Не могу с уверенностью сказать, во второй вроде появилось "затирание" нумерации.
  
Наверх
 
IP записан
 
Alex2013
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 56
Зарегистрирован: 18. Апреля 2013
Re: Помогите с загрузкой dll
Ответ #15 - 09. Декабря 2013 :: 11:47
Печать  
chessman писал(а) 09. Декабря 2013 :: 10:25:
Я где-то год назад разбирался с kzk из чисто спортивного интереса. Было просто интересно, как это работает.

Предположим, что у нас есть доступ к коду глобальника. Что нужно в итоге сделать - я так и не понял.


Нужно загрузить Formex и 1C++, 2 - dll-ки, но в глобальном прописана одна  dll: Storage.dll (это переименованная старая 1С++ вместе с Формексом когда была), глобальный трогать нельзя, на обновлениях он. Вот поэтому мысли вместо Storage.dll  - подложить свежую версию 1С++, а формекс загрузить например препроцессором 1С++ если это возможно. А вообще идеальный вариант создать dll поместить ее вместо Storage.dll и чтоб она загрузила Формекс и 1С++, но внешние компоненты создавать не умею
  
Наверх
 
IP записан
 
chessman
God Member
*****
Отсутствует



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Помогите с загрузкой dll
Ответ #16 - 09. Декабря 2013 :: 12:26
Печать  
Напомни, какой там в ГМ код загрузки дешифровальщика.
  
Наверх
 
IP записан
 
Alex2013
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 56
Зарегистрирован: 18. Апреля 2013
Re: Помогите с загрузкой dll
Ответ #17 - 09. Декабря 2013 :: 12:57
Печать  
Там не Альфа защита! Загрузка так:
Если ЗагрузитьВнешнююКомпоненту("Decoder.dll") = 0 Тогда
     Предупреждение("Компонента защиты недоступна!");
КонецЕсли;
  
Наверх
 
IP записан
 
chessman
God Member
*****
Отсутствует



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Помогите с загрузкой dll
Ответ #18 - 09. Декабря 2013 :: 13:03
Печать  
Alex2013 писал(а) 09. Декабря 2013 :: 12:57:
Там не Альфа защита!


Откуда такая уверенность?
  
Наверх
 
IP записан
 
Alex2013
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 56
Зарегистрирован: 18. Апреля 2013
Re: Помогите с загрузкой dll
Ответ #19 - 09. Декабря 2013 :: 13:07
Печать  
У Альфа precomp.dll, а не Decoder.dll, разные это dll, по атрибутам видно, у Decoder.dll название продукта Inserter 2.2 Encoder Edition Prof.HDD
  
Наверх
 
IP записан
 
chessman
God Member
*****
Отсутствует



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Помогите с загрузкой dll
Ответ #20 - 09. Декабря 2013 :: 13:08
Печать  
Я понимаю, что глобальник менять нельзя, а что если это будет делаться автоматом:  после получения МД от франча, обрабатываем MD, путем дописывания туда своего кода, до строк загрузки Decoder.dll?
  
Наверх
 
IP записан
 
chessman
God Member
*****
Отсутствует



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Помогите с загрузкой dll
Ответ #21 - 09. Декабря 2013 :: 13:08
Печать  
Alex2013 писал(а) 09. Декабря 2013 :: 13:07:
У Альфа precomp.dll, а не Decoder.dll, разные это dll, по атрибутам видно, у Decoder.dll название продукта Inserter 2.2 Encoder Edition Prof.HDD


Можешь выложить его тут?
  
Наверх
 
IP записан
 
Alex2013
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 56
Зарегистрирован: 18. Апреля 2013
Re: Помогите с загрузкой dll
Ответ #22 - 09. Декабря 2013 :: 13:26
Печать  
Дописывать не совсем вариант, тогда надо тем у кого мой отчет говорить после обновления вставлять строку в глобальник , я же их обновлять не буду... если забудут после обновления вставить, 1С-ка не запуститься. Как крайний вариант конечно так и придёться делать, но хотелось бы сделать отчету не зависимость от обновления! Можно конечно с франчем поговорить чтоб он в глобальнике изменил немного код, ему это не сложно, но вряд ли пойдет на это, зачем ему что-то менять если это и так работает, а у него клиентов под 1,5 тысячи.
  
Наверх
 
IP записан
 
Alex2013
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 56
Зарегистрирован: 18. Апреля 2013
Re: Помогите с загрузкой dll
Ответ #23 - 09. Декабря 2013 :: 13:26
Печать  
Что выложить Decoder.dll?
  
Наверх
 
IP записан
 
Alex2013
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 56
Зарегистрирован: 18. Апреля 2013
Re: Помогите с загрузкой dll
Ответ #24 - 09. Декабря 2013 :: 13:28
Печать  
А есть кто с опытом создания внешних компонент, не ужели сложно создать dll которая подгрузить 2 dll (1С++ и Формекс) ?
  
Наверх
 
IP записан
 
chessman
God Member
*****
Отсутствует



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Помогите с загрузкой dll
Ответ #25 - 09. Декабря 2013 :: 13:40
Печать  
Alex2013 писал(а) 09. Декабря 2013 :: 13:26:
Дописывать не совсем вариант, тогда надо тем у кого мой отчет говорить после обновления вставлять строку в глобальник , я же их обновлять не буду... если забудут после обновления вставить, 1С-ка не запуститься. Как крайний вариант конечно так и придёться делать, но хотелось бы сделать отчету не зависимость от обновления! Можно конечно с франчем поговорить чтоб он в глобальнике изменил немного код, ему это не сложно, но вряд ли пойдет на это, зачем ему что-то менять если это и так работает, а у него клиентов под 1,5 тысячи.    


Так я ж не предлагаю дописывать код руками. Файл конфы можно скармливать скрипту, который будет дописывает нужный код.
  
Наверх
 
IP записан
 
Alex2013
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 56
Зарегистрирован: 18. Апреля 2013
Re: Помогите с загрузкой dll
Ответ #26 - 09. Декабря 2013 :: 13:50
Печать  
Не совсем понятно как это реализовать?
  
Наверх
 
IP записан
 
chessman
God Member
*****
Отсутствует



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Помогите с загрузкой dll
Ответ #27 - 09. Декабря 2013 :: 13:54
Печать  
Alex2013 писал(а) 09. Декабря 2013 :: 13:50:
Не совсем понятно как это реализовать?


А ты можешь предварительно убедиться, что если пропивать загрузку 1С++ и Formex до дешифровки, то эта конструкция заработает.
Дописать программно в MD текст уже не так сложно.
  
Наверх
 
IP записан
 
Alex2013
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 56
Зарегистрирован: 18. Апреля 2013
Re: Помогите с загрузкой dll
Ответ #28 - 09. Декабря 2013 :: 14:22
Печать  
все пробито уже, работает до дешифровки! Суть какая  я в конце глобальника пишу одной строчкой ОткрытьФорму() - внешнего  отчета,  т.е. код который срабатывает до процедуры ПриНачалеРаботы который подгружает нужные dll и кстати заметил, что в этом случаи, старая 1С++ не грузиться (которая прописана ПриНачалеРаботы) - это очень хорошо. Просто если открывать через Файл Открыть - МойВнешний Отчет, тогда новая версия 1С++ и Formex подгружаются + вначале была загружена старая 1С++, и 1С-ка глючить начинает! Просто в моём случаи, получается для запуска отчета надо одну строку добавлять в глоб модуль, тогда все гуд! А если через файл открыть то феил.
  
Наверх
 
IP записан
 
Alex2013
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 56
Зарегистрирован: 18. Апреля 2013
Re: Помогите с загрузкой dll
Ответ #29 - 09. Декабря 2013 :: 14:41
Печать  
Хотя у меня есть открытый их глобальник старый 3-х летней давности, если запускаю на нем то старая dll ка подгружается, наверно в новом релизе они добавили проверку загружена компонента или нет поэтому не подгружается старая dll, код не могу увидеть так как зашит, а в старом тупо ЗагрузитьВнешКомп, поэтому и грузить! Я то вначале подумал, что мож 1С++ блокирует повторную загрузку себя же
  
Наверх
 
IP записан
 
Alex2013
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 56
Зарегистрирован: 18. Апреля 2013
Re: Помогите с загрузкой dll
Ответ #30 - 09. Декабря 2013 :: 14:43
Печать  
Рано обрадывался... Улыбка
  
Наверх
 
IP записан
 
chessman
God Member
*****
Отсутствует



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Помогите с загрузкой dll
Ответ #31 - 09. Декабря 2013 :: 15:23
Печать  
Alex2013 писал(а) 09. Декабря 2013 :: 14:22:
все пробито уже, работает до дешифровки! Суть какая  я в конце глобальника пишу одной строчкой ОткрытьФорму() - внешнего  отчета,  т.е. код который срабатывает до процедуры ПриНачалеРаботы который подгружает нужные dll и кстати заметил, что в этом случаи



Добавление в конец МД этой строки, думаю, можно сделать скриптом. Вопрос - на сколько это актуально.
  
Наверх
 
IP записан
 
Alex2013
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 56
Зарегистрирован: 18. Апреля 2013
Re: Помогите с загрузкой dll
Ответ #32 - 09. Декабря 2013 :: 15:47
Печать  
может приходиться, только как скрипт это сделать на автодобавление в глобальник?
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Помогите с загрузкой dll
Ответ #33 - 09. Декабря 2013 :: 15:57
Печать  
Alex2013 писал(а) 09. Декабря 2013 :: 09:31:
Дело в том, что править то ни надо зашифр. модули, отчет мой использует свежие dll, а в глобальнике прописана загрузка старой 1С++ когда она вместе с Формексам, если заменить старую dll, на свежую  то надо догрузить Формекс просто. Мой отчет могут использовать, а могут не запустить, если догружать, уже в моем отчете формекс, так что это вариант не катит, вот подумал может препроцессор поможет когда загружается 1С++, подгрузить Формекс и править ничего ни надо. Вообще идеальный вариант подменить dll которая прописана в глоб. модуле на другую dll, которая подгрузить 1С++ и Формекс, но опыта разработки внеш. компонент не имею Печаль  


Так по моему тогда все получается.
1с++ замени на новую,
а при  первом открытии любого твоего отчета грузи FormEx.

Признак что грузишь первый раз
что объекта Сервис ( из FormEx )  не существует.
  
Наверх
 
IP записан
 
Alex2013
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 56
Зарегистрирован: 18. Апреля 2013
Re: Помогите с загрузкой dll
Ответ #34 - 09. Декабря 2013 :: 16:13
Печать  
Z1, дело в том что если мой отчет то не запустят...., Formex то не загрузится, а его методы использует конфигурации! При запуске 1С должно загрузиться и 1С++ и Formex, сама конфа их использует методы, но для работы конфы достаточно старой 1С++ когда она была в одной dll с Formex, вот загрузка этой одной dll и зашито в глобальнике! А чтоб мой функционал заработал нужен свежий 1С++
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Помогите с загрузкой dll
Ответ #35 - 09. Декабря 2013 :: 16:39
Печать  
(Alex2013)
кто тебе сказал что она должна грузиться именно при начале работы системы ?
У меня по описаному мной способом грузиться Йоксел.
Т.е. если отчеты (в которых работает  Йоксел )
приоткрытии грузят сам Йоксел.
Если пользователь не вызывает отчетов где есть Йоксел
то эта компонента и не загружается.
В таком подходе есть и плюс. Не подгружается то что не используется.
Каких то падений, неудобст от такого варианта у себя не видел.

Как бы минус один если так подгружать несколько разных библиотек то может быть разный порядок загруженных библиотек и это тоже может приводить к ошибкам но пока у тебя идет речь только об одной такой библиотеке.
  
Наверх
 
IP записан
 
Alex2013
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 56
Зарегистрирован: 18. Апреля 2013
Re: Помогите с загрузкой dll
Ответ #36 - 09. Декабря 2013 :: 17:03
Печать  
Z1, мы с тобой про разные вещи говорим, я понимаю, что компоненты можно грузить по мере необходимости, ты наверно не с самого начало тему читал. Есть конфигурация  одного франчайза, она зашифрована в ней загружается в глобал. процедуре ПриНачРаб
Storage.dll - Это переименованная 1CPP.dll старой версии 1.7. 0. 4 когда она была вместе с Formex в одной dll, потом в новых версиях 1С++ -  Formex вышел из состава 1С++. Мой дополнительный функционал требует свежие версии 1С++ и Formex когда они в разных dll! Если Storage.dll заменить на свежую версию 1С++, то приходиться изменять глобальный догружать Formex, либо наоборот (сама конфа использует и 1С++ и Formex, если они не загрузятся вместе в глобальнике конфа правильно работать не будет ).  мне хотелось просто, чтобы не изменяя глобальный модуль, загрузить вместо одной dll две.
Видел это так:
1) создание отдельной dll, которая просто подгрузит 1С++ и Formex нужный версий, задать имя ей Storage.dll. -> ни каких правок конфигурации ни надо.
Либо:
2) Если это возможно Storage.dll - заменить на свежую версию 1С++ (переименовав 1С++ в Storage.dll и заменив в каталоге ИБ), и используя препроцессор встроенный в 1С++, подгрузить Formex например из defcls -> ни каких правок конфигурации ни надо.
  
Наверх
 
IP записан
 
vladimirmir2012
Senior Member
****
Отсутствует


1C++ rocks!

Сообщений: 426
Зарегистрирован: 18. Мая 2011
Re: Помогите с загрузкой dll
Ответ #37 - 09. Декабря 2013 :: 17:23
Печать  
.
« Последняя редакция: 03. Июня 2014 :: 15:23 - vladimirmir2012 »  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Помогите с загрузкой dll
Ответ #38 - 10. Декабря 2013 :: 04:52
Печать  
Какой-то хней маешься. Если в глобальнике в зашифрованном написано
ЗагрузитьВнешнююКомпоненту("storage.dll") и она нигде в зашифрованных кусках не используется, то достаточно просту удалить storage.dll и ВСЁ..

В своей поделке загружать нужные ВК в случае необходимости по условию их загрузки и привет.
О чем собственно, еще раньше писал.
  
Наверх
 
IP записан
 
Alex2013
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 56
Зарегистрирован: 18. Апреля 2013
Re: Помогите с загрузкой dll
Ответ #39 - 10. Декабря 2013 :: 05:54
Печать  
Eprst писал(а) 10. Декабря 2013 :: 04:52:
Какой-то хней маешься. Если в глобальнике в зашифрованном написано
ЗагрузитьВнешнююКомпоненту("storage.dll") и она нигде в зашифрованных кусках не используется, то достаточно просту удалить storage.dll и ВСЁ..

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

Я писал, что минимально функционал используется самой конфой ( 1С++  и Formex в Storage.dll) если не загрузить 1С++  и Formex сама конфа правельно работать не будет
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Помогите с загрузкой dll
Ответ #40 - 10. Декабря 2013 :: 05:55
Печать  
Где ты это писал ?
Я тебя об этом изначально спрашивал - ты ответил, что в зашифрованных модулях нет использования библиотек.

А так, смотришь стек вызовов, смотришь, какая обработка типа обновлениеИБ/получениеКурса/еще всякая муть с типовых стартует в ПриНачалеРаботыСистемы .. и туда и пихаешь загрузку ВК.

ЗЫ: а таких поделок там вагон  - новости, реклама / информационные блоки и т.д..
  
Наверх
 
IP записан
 
chessman
God Member
*****
Отсутствует



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Помогите с загрузкой dll
Ответ #41 - 10. Декабря 2013 :: 06:30
Печать  
Eprst писал(а) 10. Декабря 2013 :: 05:55:
А так, смотришь стек вызовов, смотришь, какая обработка типа обновлениеИБ/получениеКурса/еще всякая муть с типовых стартует в ПриНачалеРаботыСистемы .. и туда и пихаешь загрузку ВК.


А это реально увидеть в зашифрованном варианте?

Конфа все равно на поддержке, тогда какая разница, куда дописывать Загрузку 1С++?
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Помогите с загрузкой dll
Ответ #42 - 10. Декабря 2013 :: 06:36
Печать  
chessman писал(а) 10. Декабря 2013 :: 06:30:
А это реально увидеть в зашифрованном варианте?

Конфа все равно на поддержке, тогда какая разница, куда дописывать Загрузку 1С++?


А хз, я не проверял..

ЗЫ:
Если на поддержке, тогда не вижу вообще проблем - пусть тот, кто поддерживает и внесёт правку сам в зашифрованный модуль.
Какая-то проблема на пустом месте.
  
Наверх
 
IP записан
 
Alex2013
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 56
Зарегистрирован: 18. Апреля 2013
Re: Помогите с загрузкой dll
Ответ #43 - 10. Декабря 2013 :: 07:08
Печать  
Eprst писал(а) 10. Декабря 2013 :: 05:55:
Где ты это писал ?
Я тебя об этом изначально спрашивал - ты ответил, что в зашифрованных модулях нет использования библиотек.

А так, смотришь стек вызовов, смотришь, какая обработка типа обновлениеИБ/получениеКурса/еще всякая муть с типовых стартует в ПриНачалеРаботыСистемы .. и туда и пихаешь загрузку ВК.

ЗЫ: а таких поделок там вагон  - новости, реклама / информационные блоки и т.д..

Значит не правильно поняли друг друга, старая 1С++ и Formex используется минимально самой конфой (не знаю зачем они вообще ее прикрутили, там используется один класс на четыре строки кода  и ПолучитьАтрибут() - Formexa) и если к примеру не загрузить Storage.dll, а загрузить свежие 1С++ и Формекс все работать она будет нормально, совместимость полная, поэтому код править под свежие dll ни надо. Поэтому и думал как если в зашифр. глобальнике написано ЗагрузитьВнешнююКомпоненту("storage.dll") подсунуть загрузку двух dll.

Все обработки которые запускаются ПриНачалеРаботы они не внешние, а в составе конфы, изначально вопрос стоял как это сделать без изменения конфы
  
Наверх
 
IP записан
 
chessman
God Member
*****
Отсутствует



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Помогите с загрузкой dll
Ответ #44 - 10. Декабря 2013 :: 07:16
Печать  
Eprst писал(а) 10. Декабря 2013 :: 06:36:
А хз, я не проверял..


На сколько помню, вряд ли что-то можно увидеть.
  
Наверх
 
IP записан
 
chessman
God Member
*****
Отсутствует



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Помогите с загрузкой dll
Ответ #45 - 10. Декабря 2013 :: 07:20
Печать  
Я могу попробовать написать скрипт, который дописывает в глобальник.
Если это подойдет, как костыль, то дайте знать.
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Помогите с загрузкой dll
Ответ #46 - 10. Декабря 2013 :: 07:23
Печать  
Alex2013 писал(а) 10. Декабря 2013 :: 07:08:
там используется один класс на четыре строки кода


Экземпляр класса где создается ?
Если там же, в ПриНачалеРаботы , то воткни загрузку формекса в тело класса.
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Помогите с загрузкой dll
Ответ #47 - 10. Декабря 2013 :: 07:24
Печать  
В общем, 1 удаляешь storage.dll нафик  и смотришь, где ругается
Дальше думаешь, надо ли вообще грузить что-то в глобальнике, это для начала.
  
Наверх
 
IP записан
 
Alex2013
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 56
Зарегистрирован: 18. Апреля 2013
Re: Помогите с загрузкой dll
Ответ #48 - 10. Декабря 2013 :: 09:13
Печать  
chessman скрипт на чем будет написан?
  
Наверх
 
IP записан
 
chessman
God Member
*****
Отсутствует



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Помогите с загрузкой dll
Ответ #49 - 10. Декабря 2013 :: 10:16
Печать  
Alex2013 писал(а) 10. Декабря 2013 :: 09:13:
chessman скрипт на чем будет написан?

на vbs
  
Наверх
 
IP записан
 
pari
YaBB Newbies
*
Отсутствует


I Love YaBB 2!

Сообщений: 11
Зарегистрирован: 08. Мая 2008
Re: Помогите с загрузкой dll
Ответ #50 - 10. Декабря 2013 :: 11:10
Печать  
Цитата:
Все обработки которые запускаются ПриНачалеРаботы они не внешние, а в составе конфы, изначально вопрос стоял как это сделать без изменения конфы

Изначально вопрос стоял как это сделать без изменения глобального модуля Улыбка
Если я правильно угадываю франча и конфигурацию, то в ПриНачалеРаботыСистемы открывается справочник "ТорговоеОборудование". Тогда загрузку компонент можно записать в ПриОткрытии() формы списка справочника. Код справочника открытый.
PS. Не уверен, что не будет конфликта версий 1С++ (в частности в части создания объектов компонент и методов, связанных со встроенным в старую версию формэксом)
  
Наверх
 
IP записан
 
Alex2013
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 56
Зарегистрирован: 18. Апреля 2013
Re: Помогите с загрузкой dll
Ответ #51 - 10. Декабря 2013 :: 13:11
Печать  
chessman, если не тяжело то было интересно посмотреть на скрипт, который добавлял в конце гл. модуля строку запуска: "ОткрытьФорму("отчет",,Путь)", Путь  -  определял по реестру где установлено мое дополнение, и также было бы здорово отключать, удалять эту строку при ниобходимости
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Помогите с загрузкой dll
Ответ #52 - 10. Декабря 2013 :: 13:40
Печать  
Можно тупо загрузку из Табло слепить.. так еще проще - всего то нужно в реестре прописать..
И выкинуть сторадже.длл из диска.

Но это решение для гурманов, типа Абрахамса..
ЗЫ: была у него поделка - "калькуляторы идут" на этом принципе.
  
Наверх
 
IP записан
 
chessman
God Member
*****
Отсутствует



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Помогите с загрузкой dll
Ответ #53 - 10. Декабря 2013 :: 13:52
Печать  
Alex2013 писал(а) 10. Декабря 2013 :: 13:11:
chessman, если не тяжело то было интересно посмотреть на скрипт, который добавлял в конце гл. модуля строку запуска: "ОткрытьФорму("отчет",,Путь)", Путь  -  определял по реестру где установлено мое дополнение, и также было бы здорово отключать, удалять эту строку при ниобходимости


Мне нужно какое-то время, чтобы посмотреть.
Да, еще потребуется COM-объект DynamicWrapperX.
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: [1] 
ОтправитьПечать