|
интерфейс
|
|||
---|---|---|---|
#18+
Дико извиняюсь. Продолжаю мучить тему плагинов. В отрыве от темы плагинов.. Необходимо как-то достучаться до реализации интерфейса в .net dll. Наружу вижу только описание самого интерфейса. Интерфейс по идее должен иметь свою реализацию внутри dll, т.к.имеет атрибут HostSide. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2015, 16:42 |
|
интерфейс
|
|||
---|---|---|---|
#18+
sevasel, И в чем проблема? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2015, 16:46 |
|
интерфейс
|
|||
---|---|---|---|
#18+
не знаю как получить доступ к объекту, реализующему интерфейс.. куда смотреть? что читать? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2015, 16:49 |
|
интерфейс
|
|||
---|---|---|---|
#18+
со стороны плагина все понятно, я сам реализую все необходимые интерфейсы, точнее классы реализуют. но как запросить посредством интерфейсов стороны хоста ЕГО функциональность? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2015, 16:50 |
|
интерфейс
|
|||
---|---|---|---|
#18+
sevasel, Посредством доступа к свойствам и методам. Так и не понял что именно хотите... ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2015, 16:58 |
|
интерфейс
|
|||
---|---|---|---|
#18+
sevaselсо стороны плагина все понятно, я сам реализую все необходимые интерфейсы, точнее классы реализуют. но как запросить посредством интерфейсов стороны хоста ЕГО функциональность?хост должен передать плагину ссылку на себя через какое-нибудь свойство или метод интерфейса плагина. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2015, 17:03 |
|
интерфейс
|
|||
---|---|---|---|
#18+
это Код: c# 1. 2. 3. 4.
или это Код: c# 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2015, 17:06 |
|
интерфейс
|
|||
---|---|---|---|
#18+
Вот есть dll, в ней выставлен наружу интерфейс IOperDayInfo например с методами GetOperator(), GetOperDayNum() и т.д. Эта dll подключена в Resources. Как мне создать объект, класс которого реализует интерфейс IOperDayInfo? Если я не вижу какой класс его реализует, но знаю наверняка что реализация внутри dll. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2015, 17:07 |
|
интерфейс
|
|||
---|---|---|---|
#18+
Antonariy, да есть такое, передает при инициализации плагина. Но ведь это интерфейсная опять же ссылка., а не некоторый объект, у которого я могу этот интерфейс запросить. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2015, 17:09 |
|
интерфейс
|
|||
---|---|---|---|
#18+
sevasel, иять... тогда рефлекшеном перебираешь все типы в сборке и ищешь реализующие нужный интерфейс... далее создаёшь инстанс через активатор и кастишь к этому интерфейсу... ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2015, 17:10 |
|
интерфейс
|
|||
---|---|---|---|
#18+
sevaselВот есть dll, в ней выставлен наружу интерфейс IOperDayInfo например с методами GetOperator(), GetOperDayNum() и т.д. Эта dll подключена в Resources. Как мне создать объект, класс которого реализует интерфейс IOperDayInfo? Если я не вижу какой класс его реализует, но знаю наверняка что реализация внутри dll.таки никак, нужно любым способом узнать имя класса. или рефлексией перебрать все классы и насоздавать экземпляров тех, кто поддерживает нужный интерфейс. а что за странная постановка вопроса? как правило плагины прописываются в реестре в разделе настроек приложения-хоста, откуда хост и узнает их названия. или они могут прописываться в файле настроек. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2015, 17:16 |
|
интерфейс
|
|||
---|---|---|---|
#18+
buser, спасибо за подсказку! попробую разобраться ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2015, 17:17 |
|
интерфейс
|
|||
---|---|---|---|
#18+
sevaselAntonariy, да есть такое, передает при инициализации плагина. Но ведь это интерфейсная опять же ссылка., а не некоторый объект, у которого я могу этот интерфейс запросить.какой "этот"? у них названия есть. хост создает экземпляр плагина и через свойство передает себя самого, "некоторый объект" по твоей терминологии, со всеми своими интерфейсами. какого лешего еще тебе надо? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2015, 17:19 |
|
интерфейс
|
|||
---|---|---|---|
#18+
Antonariy, я про то, что свойство Host это интерфейсная ссылка на объект, который должен реализовывать этот (IPayPluginHost) интерфейс, но не сам объект. Я ни с чем не спорю, просто пытаюсь понять. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2015, 17:26 |
|
интерфейс
|
|||
---|---|---|---|
#18+
sevaselэто интерфейсная ссылка на объект ... но не сам объект.вообще-то это одно и тоже. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2015, 17:44 |
|
интерфейс
|
|||
---|---|---|---|
#18+
нет никакой разницы между "экземпляром класса", "объектом" или "ссылкой на объект", будь она хоть трижды интерфейсной. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2015, 17:46 |
|
интерфейс
|
|||
---|---|---|---|
#18+
Antonariy, большое спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2015, 17:50 |
|
интерфейс
|
|||
---|---|---|---|
#18+
может так понятней будет? Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23.
я заметил, что семантика сидиеза не облегчает мозгу усвоение принципов ООП. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2015, 17:51 |
|
|
start [/forum/topic.php?fid=20&msg=39000741&tid=1401379]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
42ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
58ms |
get tp. blocked users: |
1ms |
others: | 336ms |
total: | 481ms |
0 / 0 |