![]() |
Модераторы: Partizan, gambit |
![]() ![]() ![]() |
|
dimonpage1 |
|
||||
Новичок Профиль Группа: Участник Сообщений: 41 Регистрация: 6.6.2007 Репутация: нет Всего: нет |
Добрый день.
Опишу проект... 1. Создал проект с формой MDI контейнера и хочу в этом проекте открывать окна которые будут храниться в DLL 2. Создал DLL с формой, функциями и процедурами. 3. Подключил в проект DLL черер ADD REFERENCE все чудово! Но так как я использую ClickOnce, при каждом изменении одной из своих DLL мне приходится создавать новый Publish основного проекта. хотелось бы скинуть все dll в папочку и новые версии DLL подкидывать в нее не создавая паблишей. т.е. что бы программа при запуске динамически подгружала все DLL создал тестовый проект и пробую на нем обращение к DLL
в Dll такое:
при нажатии на кнопку выдает эту ошибку Unable to find an entry point named 'ShowForm1' in DLL 'd:\Мои документы\Visual Studio 2005\Projects\DLLForm\DLLForm\bin\Debug\DLLForm.dll'. ошибка говорит о отсутсвтии точки вхождения ============================================ ВОПРОС: как создать точку вхождения в DLL я немного порылся в нете и там пишут, что к библиотекам(DLL) написанным под .NET нужно обращаться только через ADD REFERENCE, а мне так неудобно.... подскажите что я делаю не так в DLL или может есть другое решение организации всего проекта? спасибо за внимание... |
||||
|
|||||
iad |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 66 Регистрация: 10.9.2007 Где: Москов Репутация: -2 Всего: -2 |
нужно в отдельной сборке объявить интерфейс который будет доступен и в приложени и в dll, в dll реализуешь этот интерфейс, а в основном приложении загружаешь dll примерно так:
и using System.Reflection; не забудь зы ачепятку поправил Это сообщение отредактировал(а) iad - 15.10.2007, 12:30 |
|||
|
||||
tol05 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1632 Регистрация: 21.12.2006 Где: Харьков Репутация: 63 Всего: 170 |
dimonpage1, а почему у тебя в dll функция описана, как возвращающая void, а в твоем коде она уже bool возвращать должна?
-------------------- На хорошей работе и сны хорошие снятся. |
|||
|
||||
dimonpage1 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 41 Регистрация: 6.6.2007 Репутация: нет Всего: нет |
сори, это я пробовал... но суть вопроса в другом ) iad, можно немного коментов про блок внутри foreach? Это сообщение отредактировал(а) dimonpage1 - 15.10.2007, 12:00 |
|||
|
||||
iad |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 66 Регистрация: 10.9.2007 Где: Москов Репутация: -2 Всего: -2 |
||||
|
||||
dimonpage1 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 41 Регистрация: 6.6.2007 Репутация: нет Всего: нет |
спасибо за наводку, но можно немного прокомментировать ваш вариант, особенно меня интересует класс "IMyTypeExportedFromDll" как эта схема работает? ![]() |
|||
|
||||
iad |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 66 Регистрация: 10.9.2007 Где: Москов Репутация: -2 Всего: -2 |
Это твой класс, точнее интерфейс который должен быть реализован в твоей dll и виден и в dll и в приложении. Обозвать его можешь как хочешь. Но по большому заморачиваться на динамическую загрузку сборок имет смысл если ты озаботился поддержкой плагинов... а так непонятно в чем у тебя проблема при использовании автоматически загружаемых сборок.. Просто создай солюшн в котором будут все проекты: и длл и основной программы..
|
|||
|
||||
tol05 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1632 Регистрация: 21.12.2006 Где: Харьков Репутация: 63 Всего: 170 |
Увидел [DllImport("")] и просто не заметил, что библиотека управляемая.
Просто: - вызывай Assembly.Load(...) -создавай свой тип, без всяких интерфейсов
-------------------- На хорошей работе и сны хорошие снятся. |
|||
|
||||
iad |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 66 Регистрация: 10.9.2007 Где: Москов Репутация: -2 Всего: -2 |
||||
|
||||
tol05 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1632 Регистрация: 21.12.2006 Где: Харьков Репутация: 63 Всего: 170 |
-------------------- На хорошей работе и сны хорошие снятся. |
|||
|
||||
iad |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 66 Регистрация: 10.9.2007 Где: Москов Репутация: -2 Всего: -2 |
||||
|
||||
tol05 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1632 Регистрация: 21.12.2006 Где: Харьков Репутация: 63 Всего: 170 |
опять от тебя грубость! Да что ж такое!!! Уже и минус один не помогает... Так что еще один ставить - смысла нет.
Гм.. нужно бороться со своими комплексами. Иначе, раньше или позже, iad, ваше (почему "ваше" с маленькой буквы, думаю понятно) психическое здоровье будет непоправимо нарушено. А пока буду считать, что вы не совсем четко себя контролируете, и находились (в момент "постерства" ![]() -------------------- На хорошей работе и сны хорошие снятся. |
|||
|
||||
iad |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 66 Регистрация: 10.9.2007 Где: Москов Репутация: -2 Всего: -2 |
||||
|
||||
tol05 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1632 Регистрация: 21.12.2006 Где: Харьков Репутация: 63 Всего: 170 |
ну так в чем проблема, любезный?
Повторите свой последний пост еще 36 раз и вперед, "на кнопочки"... -------------------- На хорошей работе и сны хорошие снятся. |
|||
|
||||
dimonpage1 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 41 Регистрация: 6.6.2007 Репутация: нет Всего: нет |
вот что я нарыл...
всем спасибо за подсказки |
|||
|
||||
![]() ![]() ![]() |
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |