Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Замена DLL на DLL с другим именем.
|
|||
|---|---|---|---|
|
#18+
Взаимодействие проекта с приложением А осуществляется через a.dll. Имеем также приложение B, Взаимодействие с которым возможно через b.dll. Интерфейсы необходимые для взаимодействия в a.dll & b.dll абсолютно идентичны. Остальное может различаться. Для a.dll имеем файл a.lib и h-файлы. Для b.dll нет ничего. Как наш проект заставить работать через b.dll с приложением B? "Есть многое на свете, друг Горацио, что и не сразу в голову придет." М. Твен "Приключения Геккельбери Финна" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2013, 15:59 |
|
||
|
Замена DLL на DLL с другим именем.
|
|||
|---|---|---|---|
|
#18+
авторКак наш проект заставить работать через b.dll с приложением B?Если интерфейсы действительно идентичны, что мешает взять a.h и сделать копию под названием b.h? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2013, 16:01 |
|
||
|
Замена DLL на DLL с другим именем.
|
|||
|---|---|---|---|
|
#18+
Abstraction, в h-файлах нет никаких упоминаний о a.dll. Там прототипы и пр. определения. Да они и не a.h. Линковка осуществляется с помощью а.lib. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2013, 16:11 |
|
||
|
Замена DLL на DLL с другим именем.
|
|||
|---|---|---|---|
|
#18+
YUBAЛинковка осуществляется с помощью а.lib. Ну так возьми b.dll и создай b.lib с помощью dlltool или чего-то подобного из комплекта твоего компилятора. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2013, 16:20 |
|
||
|
Замена DLL на DLL с другим именем.
|
|||
|---|---|---|---|
|
#18+
Просто переименовать a.dll в b.dll невозможно, т.к. b.dll используется приложением B. Она не пассивна. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2013, 16:20 |
|
||
|
Замена DLL на DLL с другим именем.
|
|||
|---|---|---|---|
|
#18+
YUBAAbstraction, в h-файлах нет никаких упоминаний о a.dll. Там прототипы и пр. определения. Да они и не a.h. Линковка осуществляется с помощью а.lib.А ограничиться динамическим связыванием нельзя? С компоновщиком, подозреваю, выкрутиться не удастся. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2013, 16:22 |
|
||
|
Замена DLL на DLL с другим именем.
|
|||
|---|---|---|---|
|
#18+
AbstractionА ограничиться динамическим связыванием нельзя? С компоновщиком, подозреваю, выкрутиться не удастся. Это как? Dll не регится, и в референс ее не добавишь. Никакой инфы кроме точек входа из нее не получишь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2013, 16:37 |
|
||
|
Замена DLL на DLL с другим именем.
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovНу так возьми b.dll и создай b.lib с помощью dlltool или чего-то подобного из комплекта твоего компилятора. В VC 2010 как утилита называетя? В watcom вроде есть, но watcoma нет. Бум искать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2013, 16:47 |
|
||
|
Замена DLL на DLL с другим именем.
|
|||
|---|---|---|---|
|
#18+
YUBAВ VC 2010 как утилита называетя? VC использует .DEF файлы для импорта. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2013, 17:17 |
|
||
|
Замена DLL на DLL с другим именем.
|
|||
|---|---|---|---|
|
#18+
YUBAВ VC 2010 как утилита называетя? DEF файл делается несложной манипуляцией с выдачей dumpbin /EXPORT ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2013, 17:23 |
|
||
|
Замена DLL на DLL с другим именем.
|
|||
|---|---|---|---|
|
#18+
YUBA, Переименовать b.dll в a.dll и прожить вместо a.dll в тог место, откуда оно грузится. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2013, 17:38 |
|
||
|
Замена DLL на DLL с другим именем.
|
|||
|---|---|---|---|
|
#18+
Изопропил, Dimitry Sibiryakov Уже нашел, работаю. Пока ошибку пишет почти по все м функциям. команда - lib /def:e:\b.def /out:e:\b.lib /machine:x86 e:\b.def(1) : warning LNK4017: оператор PLUGIN_Init не поддерживается на конечной платформе; пропущен ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2013, 17:38 |
|
||
|
Замена DLL на DLL с другим именем.
|
|||
|---|---|---|---|
|
#18+
YUBAПросто переименовать a.dll в b.dll невозможно, т.к. b.dll используется приложением B. Она не пассивна. Скопируй. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2013, 17:39 |
|
||
|
Замена DLL на DLL с другим именем.
|
|||
|---|---|---|---|
|
#18+
MasterZiv, невозможно. ДЛЛ активная и работает с приложением. 2. ДЛЛ разные, кроме нужного нам интерфейса. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2013, 17:43 |
|
||
|
Замена DLL на DLL с другим именем.
|
|||
|---|---|---|---|
|
#18+
Невозможно скопировать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2013, 18:24 |
|
||
|
Замена DLL на DLL с другим именем.
|
|||
|---|---|---|---|
|
#18+
maytonНевозможно скопировать?М.б. я не понял, о чем речь? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2013, 18:27 |
|
||
|
Замена DLL на DLL с другим именем.
|
|||
|---|---|---|---|
|
#18+
Всем спасибо. lib-файл сделал, все прилинковалось. Тестовые запросы в dll прошли. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2013, 18:49 |
|
||
|
Замена DLL на DLL с другим именем.
|
|||
|---|---|---|---|
|
#18+
YUBAДЛЛ активная и работает с приложением. Переведи. Вообще-то обычно бывает наоборот: приложение работает с DLL... Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2013, 20:47 |
|
||
|
Замена DLL на DLL с другим именем.
|
|||
|---|---|---|---|
|
#18+
offКак при КПСС. Не человек в партии работает а партия проводит работу с человеком ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2013, 20:52 |
|
||
|
Замена DLL на DLL с другим именем.
|
|||
|---|---|---|---|
|
#18+
YUBAMasterZiv, невозможно. ДЛЛ активная и работает с приложением. 2. ДЛЛ разные, кроме нужного нам интерфейса. Не получится ПЕРЕНЕСТИ или ПЕРЕИМЕНОВАТЬ, но скопировать получится. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2013, 22:25 |
|
||
|
Замена DLL на DLL с другим именем.
|
|||
|---|---|---|---|
|
#18+
MasterZiv,в чем смысл копирования? Что это нам дает? И куда и что копировать? Наша a.dll работать с приложением B не будет, она внутри другая. Уже все работает, но давайте посмотрим и этот вариант, т.к. есть еще задачка перенаправить чужую программу на другую DLL. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2013, 22:31 |
|
||
|
Замена DLL на DLL с другим именем.
|
|||
|---|---|---|---|
|
#18+
YUBAMasterZiv,в чем смысл копирования? Что это нам дает? И куда и что копировать? Наша a.dll работать с приложением B не будет, она внутри другая. Уже все работает, но давайте посмотрим и этот вариант, т.к. есть еще задачка перенаправить чужую программу на другую DLL. Просто скопировать файл. Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2013, 22:36 |
|
||
|
Замена DLL на DLL с другим именем.
|
|||
|---|---|---|---|
|
#18+
vvm, a.dll и b.dll разные по фунrциональности. Приложение будет работать только с b.dll. Мы в своей программе для взаимодействия с приложением используем только часть функционала, которая идентична a.dll. Теперь есть чужая программа, работающая с приложением через a.dll. Нужно ее заставить работать с b.dll. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2013, 22:45 |
|
||
|
Замена DLL на DLL с другим именем.
|
|||
|---|---|---|---|
|
#18+
YUBAvvm, a.dll и b.dll разные по фунrциональности. Приложение будет работать только с b.dll. Мы в своей программе для взаимодействия с приложением используем только часть функционала, которая идентична a.dll. Теперь есть чужая программа, работающая с приложением через a.dll. Нужно ее заставить работать с b.dll. Что ж ты хочешь -то тогда ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2013, 22:55 |
|
||
|
Замена DLL на DLL с другим именем.
|
|||
|---|---|---|---|
|
#18+
"Проект", "Приложение", "Приложение А", "Приложение В", "Своя программа", "Чужая программа" - как-то много сущностей... :( YUBAvvm, a.dll и b.dll разные по фунrциональности. Приложение будет работать только с b.dll. Мы в своей программе для взаимодействия с приложением используем только часть функционала, которая идентична a.dll. Теперь есть чужая программа, работающая с приложением через a.dll. Нужно ее заставить работать с b.dll. "Наша программа" -> b.dll - > "Приложение" "Чужая программа" -> а.dll - > "Приложение" YUBAВзаимодействие проекта с приложением А осуществляется через a.dll. Имеем также приложение B, Взаимодействие с которым возможно через b.dll. Интерфейсы необходимые для взаимодействия в a.dll & b.dll абсолютно идентичны. Остальное может различаться. Для a.dll имеем файл a.lib и h-файлы. Для b.dll нет ничего. Как наш проект заставить работать через b.dll с приложением B? ... "Проект" -> a.dll - > "Приложение A" "?" ->b.dll - > "Приложение B" ...моск сломан. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2013, 22:59 |
|
||
|
Замена DLL на DLL с другим именем.
|
|||
|---|---|---|---|
|
#18+
Да все тут понятно было изначально написано, что вы как дети малые к словам цепляетесь :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2013, 23:17 |
|
||
|
Замена DLL на DLL с другим именем.
|
|||
|---|---|---|---|
|
#18+
vvm, 1-й вопрос решен. "Наша программа" -> а.dll < - > "Приложение A" "Наша программа" -> b.dll < - > "Приложение B" Все уже работает. Путем линковки b.dll к нашей программе через b.lib. Без каких либо изменений в теле программы, т.к. используемые нами интерфейсы a.dll и b.dll полностью идентичны. Вопрос закрыт. ------------------------------------------------------------------------------------- 2- вопрос "Чужая программа для работы с А" -> а.dll < - > "Приложение А" -функционирует "Чужая программадля работы с А" ->????? b.dll <- > "Приложение В" Как? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2013, 23:17 |
|
||
|
Замена DLL на DLL с другим именем.
|
|||
|---|---|---|---|
|
#18+
YUBAВсе уже работает. Путем линковки b.dll к нашей программе через b.lib. Без каких либо изменений в теле программы, т.к. используемые нами интерфейсы a.dll и b.dll полностью идентичны. Как? Если в программе вызывается xxx(), то оно вызывается из a.dll или из b.dll? Как оно угадывает? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2013, 23:21 |
|
||
|
Замена DLL на DLL с другим именем.
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, a.lib заменена Компоновщик - Ввод - Доп. зависимости на b.lib. Все. :) Код не менялся. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2013, 23:29 |
|
||
|
Замена DLL на DLL с другим именем.
|
|||
|---|---|---|---|
|
#18+
YUBAvvm, 2- вопрос "Чужая программа для работы с А" -> а.dll < - > "Приложение А" -функционирует "Чужая программадля работы с А" ->????? b.dll <- > "Приложение В" Как? Так же, как и со своей программой, не ? Как бы компоновщик не занимается линковкой с DLL в рантайме, это делает сам Windows уже, приложение с DLL полностью собрано, и оно, если без исходников или хотя бы объектников, уже на другую .dll не пересоберётся. Если только обе DLL имеют абсолютно идентичный бинарный интерфейс (API и ABI), то можно одну dll заменить на другую (например, переименовав). Но для этого надо гарантированно знать, что они совместимы, а для этого они должны быть специально созданы именно так для этого. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2013, 00:19 |
|
||
|
Замена DLL на DLL с другим именем.
|
|||
|---|---|---|---|
|
#18+
MasterZiv, DLL идентичны только по используемым нами интерфейсам, в остальном они несовместимы. a.dll не будет работать с приложением B. Но взаимодействие с ними из сторонних программ идентично. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2013, 00:27 |
|
||
|
Замена DLL на DLL с другим именем.
|
|||
|---|---|---|---|
|
#18+
YUBAMasterZiv, DLL идентичны только по используемым нами интерфейсам, в остальном они несовместимы. a.dll не будет работать с приложением B. Но взаимодействие с ними из сторонних программ идентично. кто на ком стоял ? Они либо совместимы, либо нет. Видимо, нет. Тогда это невозможно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2013, 00:44 |
|
||
|
Замена DLL на DLL с другим именем.
|
|||
|---|---|---|---|
|
#18+
MasterZiv, но я сейчас уже работаю из своей программы. Дел, как оказалось, только другую ДЛЛ прилинковать. В коде вообще ничего не менял. Надо чужую прогу обмануть. Различающиеся функции ей не нужны, она их и не увидит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2013, 00:54 |
|
||
|
Замена DLL на DLL с другим именем.
|
|||
|---|---|---|---|
|
#18+
Выход видится такой. Пишем ДЛЛ с именем а.dll. В экспорте пишем функции Fn(...) с именами, аналогичными экспорту b.dll. Fn(...) перенаправляется на импорт и вызывает из b.dll функцию с тем-же именем. Получаем Программа работы с А -> самописная a.dll -> b.dll <-> приложение В. В статик классе СС определяем функции, запросы к b.dll XZdatatype fn() {return Fn()} В программе, вне классов определяем функции, запрашиваемые программой работы с прил. А XZdatatype Fn() {return CC.fn()} ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2013, 09:56 |
|
||
|
Замена DLL на DLL с другим именем.
|
|||
|---|---|---|---|
|
#18+
YUBAMasterZiv, но я сейчас уже работаю из своей программы. Дел, как оказалось, только другую ДЛЛ прилинковать. В коде вообще ничего не менял. Надо чужую прогу обмануть. Различающиеся функции ей не нужны, она их и не увидит. Я вот так понимаю: обманывать нехорошо. Если у тебя есть малолетки этой программы, то просто пересобери. Если нет — это невозможно, если ты не профессионал. А ты не он, иначе бы не задавал такие вопросы (да ты и описать-то толком ничего не можешь). Я не собираюсь тут рассказывать все нюансы, их дофига. Профессионал с этим разберется, но и тогда нет гарантии, что это можно вообще сделать. Так что для тебя думаю есть один практически полезный совет — доверь эту работу профессионалу, наймите кого-то что бы это сделал. Или сказал, что это невозможно. Успехов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2013, 12:01 |
|
||
|
|

start [/forum/topic.php?all=1&fid=57&tid=2020452]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
170ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
62ms |
get tp. blocked users: |
1ms |
| others: | 13ms |
| total: | 291ms |

| 0 / 0 |
