Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.59/37: Рейтинг темы: голосов - 37, средняя оценка - 4.59
2 / 2 / 0
Регистрация: 11.10.2013
Сообщений: 24

Подключение сторонней DLL. Нужно, чтобы программа могла работать с разными версиями dll

11.10.2013, 17:52. Показов 7356. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть dll с неким драйвером для фискального регистратора.
Требуется прицепить ее к программе на C#.
Проблема в том, что эти драйвера периодически обновляются и мне нужно, чтобы программа могла работать с разными версиями dll.
Если подключать через "ссылки", то все работает нормально:
C#
1
2
FprnM1C.FprnM45 AtolFR = new FprnM1C.FprnM45Class();
AtolFR.ShowProperties();
НО при установке новой версии драйверов программа перестает их видеть... Я так понимаю, что это происходит поскольку прога привязывается к dll через "Interop.FprnM1C.dll" в которой как-то жестко прописана привязка к определенной версии dll.

При попытке подключения через:
C#
1
Assembly FRAssembly = Assembly.LoadFrom("FprnM1C.dll");
получаю ошибку при загрузке dll: "Ожидалось, что модуль содержит манифест сборки."

При подключении через:
C#
1
2
3
4
5
    class AtolFR
    {
        [DllImport("FprnM1C.dll")]
        public static extern void ShowProperties();
    }
При вызове:
C#
1
AtolFR.ShowProperties();
Получаю ошибку: "Не удается найти точку входа "ShowProperties" в DLL "FprnM1C.dll""
Вот здесь я думаю, что чего-то не доделываю, но чего?
Описание этого драйвера в pdf здесь
Буду благодарен за подсказку, куда копать...
1
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
11.10.2013, 17:52
Ответы с готовыми решениями:

Подключение двух dll, работающих под разными версиями .net
Добрый день! Проблема такая: к проекту на c# необходимо подключить две библиотеки dll. Одна из них не работает, если целевой платформой...

Подключение dll из ресурсов внутри другой dll
Здравствуйте! Есть сторонняя dll и собственная dll. Собственная dll написана для удобной работы со сторонней dll. Обе dll приходится...

Патчинг dll - подключение своей dll
Здрасти, та среда где я нахожусь. Тут уже давным навно актуально что разные моды и протекты делаются для игры методом подключения своих DLL...

6
 Аватар для SharpDeveloper
141 / 138 / 22
Регистрация: 16.02.2012
Сообщений: 453
12.10.2013, 21:43
Поймите разницу между сборкой (.net assembly) и нативной dll.
0
w@
15 / 15 / 5
Регистрация: 11.04.2012
Сообщений: 28
03.04.2014, 11:16
zen2s, как вышел из положения?
0
2 / 2 / 0
Регистрация: 11.10.2013
Сообщений: 24
04.04.2014, 14:59  [ТС]
Цитата Сообщение от w@ Посмотреть сообщение
zen2s, как вышел из положения?
Никак! Сам не разобрался, здесь никто так и не помог :-(
Перекомпилирую прогу под каждый новый релиз драйверов...
0
548 / 355 / 120
Регистрация: 17.08.2014
Сообщений: 1,351
13.01.2015, 11:49
zen2s, w@,
почитайте про позднее связывание и многое прояснится.
0
85 / 75 / 15
Регистрация: 18.01.2014
Сообщений: 359
10.07.2018, 09:32
Цитата Сообщение от zen2s Посмотреть сообщение
Если подключать через "ссылки", то все работает нормально:
Можно, пожалуйста по подробнее, я только в самом начале этого пути. Мне тоже надо прикрутить эту длл к своей программе на vb.net.

Я скачал эту длл по первой попавшейся ссылке, пытаюсь в разделе Ссылки прикрутить её, но получаю ошибку "убедитесь что файл доступен и является допустимой сборкой com"

Как у вас получилось прикрутить эту длл?

Или у вас Com-версия этой длл? Если так то подскажите где такую достать
0
2 / 2 / 0
Регистрация: 11.10.2013
Сообщений: 24
25.07.2018, 18:58  [ТС]
Цитата Сообщение от _Radik_ Посмотреть сообщение
Можно, пожалуйста по подробнее
Эта dll входит в состав пакета драйверов "АТОЛ: Драйвер ККМ v.8", так что просто "прикрутить" ее не получится, тем более, что там еще куча вспомогательных dll из нее вызываемых. Так что качайте с сайта АТОЛа и устанавливайте "АТОЛ: Драйвер ККМ", тогда в ссылках в СОМ-ах и появится "АТОЛ: Драйвер ККМ".
Правда, поддержку 8-ой версии драйверов АТОЛ собирается прекратить, так что рекомендуется использовать v.10, однако там другие dll и другие методы, так что пока пользуюсь v.8, ибо она у меня уже прикручена.
Вам же советовал бы взвесить, использовать v.8 или сразу прикручивать v.10
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
25.07.2018, 18:58
Помогаю со студенческими работами здесь

Кто может поделиться файлами ogg.dll, vorbis.dll и vorbisfile.dll - 32-х и 64-битными версиями?
Движок перевожу на платформу Win64 и нужно, чтобы разрядность ЕХЕ и DLL совпадали, а в интернете искал 64-битные версии ogg.dll, vorbis.dll...

Подключение Сторонней Dll
Есть библа от стороннего разработчика, которую необходимо подключить к Lotus и использовать ее методы и т.д. Эта библиотека...

Подключение сторонней dll
Hi2All Есть библиотека WinSign.dll В ресурсах у неё форма. Как программно подключить эту библиотечку к своему проекту и вызвать это...

Подключение сторонней dll к пректу.
Все поиски излазил, задолбался, не найду ничего путного. Есть чужая dll (единственный файл, без lib, h и т.д.) Есть подробное описание...

Подключение сторонней DLL библиотеки в проекте Qt
Пытаюсь подключить библиотеку tagLib к проекту через опцию "Добавить библиотеку", указываю тип библиотеки "динамический" но...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru