Форум программистов, компьютерный форум, киберфорум
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
 Аватар для Л. А.
20 / 9 / 0
Регистрация: 25.06.2011
Сообщений: 74
.NET 4.x

Работа с плагинами (Проверка присутствия DLL)

08.07.2012, 16:40. Показов 1950. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем здравия и приятного времечка!

Есть проект состоящий из одного EXE файла и допустим 3 библиотек. В каждой библиотеке присутствует свой UserControl. И так: Подключаю dllки к проекту, импортирую. Программно размещаю Контролы библиотек на форме екзешника и два из них скрываю. Есть менюшка из 3 пунктов сделанная из LinkLabel. При нажатии на каждую должен открываться свой UserControl. Все работает как надо но стоит убрать из проекта хоть одну Dll то при запуске сразу выходит ошибка что отсутствует библиотека. Как сие исправить? Допустим при отсутствии какой либо dll не вылетала ошибка а только при нажатии на linkLabel вместо UserControl выходило сообщение типа : Компонент не установлен. Знаю что нужно курить в сторону плагинов. Поискал сию тему по разным форумам но ничего толкового не нашел. А то что нашел то ли не работает то ли я чего то недопонимаю. Народ помогите разобраться с проблемой.
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
08.07.2012, 16:40
Ответы с готовыми решениями:

Проверка присутствия узлов сети
Ребята, помогите с кодом, который проверяет присутствие узлов сети. Как сделать чтоб он все время работал и давал сообщение только...

Проверка присутствия своего html кода на стороннем сайте
как проверить присутсвие своего html кода(баннер 88х31) на стороннем сайте если код установлен о сделать ubdate в базе пометку что код...

работа с плагинами
Всем привет. Скажите плиз как отобразить виджеты плагинов в шаблоне, который сам создал.Плагины активированы но я не знаю как их...

4
 Аватар для Ciberst
559 / 436 / 21
Регистрация: 16.12.2010
Сообщений: 953
08.07.2012, 17:09
Подключай библиотеку как подключаются библиотеки для работы с winAPI. Но предупреждаю сразу: твоя программа становится потенциально уязвимой.
0
 Аватар для Л. А.
20 / 9 / 0
Регистрация: 25.06.2011
Сообщений: 74
08.07.2012, 17:47  [ТС]
Цитата Сообщение от Ciberst Посмотреть сообщение
Подключай библиотеку как подключаются библиотеки для работы с winAPI. Но предупреждаю сразу: твоя программа становится потенциально уязвимой.
С этого места можно по подробнее?
0
 Аватар для Ciberst
559 / 436 / 21
Регистрация: 16.12.2010
Сообщений: 953
08.07.2012, 19:37
Лучший ответ Сообщение было отмечено как решение

Решение

test222.dll
VB.NET
1
2
3
4
5
6
Public Class helloWorld
    Public Shared Function helloWorld(ByVal txt As String) As String
        MsgBox(txt, MsgBoxStyle.Information, "HelloWorld")
        Return Nothing
    End Function
End Class

основная программа
VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Imports System.Runtime.InteropServices
Public Class Form1
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim asmA1 As Reflection.Assembly 'для загрузки Dll
        Dim objO1 As Object 'для работы с функцией 
        Dim strPathDll As String 'путь к DLL
        strPathDll = "test222.dll"
        asmA1 = Reflection.Assembly.LoadFrom(strPathDll) 'загрузили DLL
        objO1 = asmA1.CreateInstance("Test222.helloWorld")
        Dim dyn As Object = objO1.GetType
        Dim met As Reflection.MethodInfo = dyn.GetMethod("helloWorld")
        Dim g As String = met.Invoke(dyn, New Object() {"Привет"})
    End Sub
End Class
9
 Аватар для Л. А.
20 / 9 / 0
Регистрация: 25.06.2011
Сообщений: 74
09.07.2012, 21:18  [ТС]
Ciberst, Спасибо за направление. Будем ковыряться.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
09.07.2012, 21:18
Помогаю со студенческими работами здесь

Работа с плагинами программы
Пишу программу с поддержкой плагинов. Нужно как-то в метод Run(объект_формы) плагину передать объект главной формы приложения, чтобы при...

Работа с плагинами через интерфейс
В общем я сподвигся на такое Есть интерфейс public interface IPlugin { string PluginName { get; } // имя плагина...

Проверка зависимостей DLL
Гружу через LoadLibrary какую либо dll. Через GetLastError() проверяю код ошибки. Есть код ошибки 126, который означает, что модуль не...

Эффект присутствия.
Все знают что это за штука, он действительно существует, но есть ли ему какое-нибудь объяснение? И вообще, были ли какие-то исследования?

Датчик присутствия
Есть задача: датчик обнаружения (приcутствия/движения - не принципиально) человека в комнате. Поиском по интернету наткнулся на микросхему...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru