|
7 / 6 / 5
Регистрация: 16.07.2015
Сообщений: 147
|
||||||
.NET 4.x Дополнение MAF — почему не находит?10.03.2017, 10:31. Показов 1497. Ответов 9
Метки нет (Все метки)
Здравствуйте. Пробую сделать поддержку дополнений MAF dotNET4
Всё компилируется, работает, но не находит дополнения. После вызова
Но в файле AddIns.store видны записи о дополнении и приложение запускается. У кого было такое, с чем это может быть связано? Приложил архив с проектами (пароль 000). Много компонент MAF. Здесь в листинг не удобно выложить. Описание: 20170310 это проект, приложение хост Programmer (оно WCF сервер), остальное компоненты MAF AddInARKbase дополнение, у него 2 метода, которые сейчас просто возвращают true Compil всё скоспиленное DebugClient клиент, чтобы попробовать подключиться к Programmer. Запускать не обязательно. Для проверки достаточно в Compil запустить Programmer И прочитать строки. AddIns AddIns find 0 ok Почему 0? Спасибо
0
|
||||||
| 10.03.2017, 10:31 | |
|
Ответы с готовыми решениями:
9
Простой VAF-MAF переходник. Почему не находит индекс? Дополнение к вопросу "Если свет - электромагнитная волна, почему она распространяется в вакууме" |
|
7 / 6 / 5
Регистрация: 16.07.2015
Сообщений: 147
|
||||||
| 20.03.2017, 15:07 [ТС] | ||||||
|
Почти разобрался. Оказалось дело в том, что параметры методов дополнений обязательно должны быть сериализуемые.
Вопрос. Танцы с бубнами пока никак не позволили сделать enum Side сериализуемым, чтобы MAF заработал. Кто знает, как описывать сериализуемые типы для MAF?
0
|
||||||
|
6691 / 4102 / 1607
Регистрация: 09.05.2015
Сообщений: 9,573
|
|
| 20.03.2017, 15:52 | |
|
У меня вообще ваш код никак не работает, в консоль ничего не пишет, попытки расставить брякпойнты по коду тоже не увенчались успехом. Но компилится нормально... Атрибут
[Serializable] на enum пробовали добавлять?
0
|
|
|
7 / 6 / 5
Регистрация: 16.07.2015
Сообщений: 147
|
|
| 20.03.2017, 15:59 [ТС] | |
|
Код скомпилен в SharpDevelop и запускается нормально. Наверное у вас dotNET 4 не стоит.
[Serializable] пробовал, дополнение не работает. Добавлено через 1 минуту Код выше теперь вообще не нужен. Проблема. Как сделать, чтобы методы дополнения могли принимать enum .
0
|
|
|
6691 / 4102 / 1607
Регистрация: 09.05.2015
Сообщений: 9,573
|
|
| 20.03.2017, 17:13 | |
|
У меня .NET 4.6.2 стоит, который должен запускать 4.0 без проблем. Проверял в VS2015 и VS2017, не работает вообще ничего. Консоль появляется и закрывается не выводя ничего, ошибок тоже никаких не возникает.
Добавлено через 1 час 10 минут Еще есть атрибут [ServiceKnownType].
0
|
|
|
7 / 6 / 5
Регистрация: 16.07.2015
Сообщений: 147
|
|
| 21.03.2017, 11:28 [ТС] | |
|
Спасибо
Как этим атрибутом пользоваться для этого случая? Тестовый проект прилагается TestMAF это просто проект с методом в дополнении, который можно вызвать. Для запуска всё компилируется по пути: TestMAF\TestMAF\bin\Debug Можно запустить TestMAF.exe и увидеть вывод с вызовами метода дополнения 3 раза: Test MAF Test AddIn Find: 1 Addin.Test() = True Addin.Test() = True Addin.Test() = True Дальше этот проект доработан, чтобы был тип enum Side, который будет передаваться в метод дополнения. Проект TestMAF2. Тип определён в сборке MyTypes, заданы атрибуты для сериализации: [Serializable] [DataContract] [EnumMember] . Ничего не работает. Файлы прилагаются. Почему не работает TestMAF2? Как правильно определить enum для MAF?
0
|
|
|
7 / 6 / 5
Регистрация: 16.07.2015
Сообщений: 147
|
|||||||||||
| 31.03.2017, 12:04 [ТС] | |||||||||||
|
Всем привет.
Разобрался. Есть дополнения MAF, которые используют сборки с типами. Программа тоже использует эти сборки. Чтобы работало нужны следующие условия: - Тип нужно сделать сериализуемым
В AssemblyInfo.cs сборки с типами нужно добавить [assembly: AssemblyKeyFile(@"MyTypes.snk")] и выставить версию сборки. - После этого в дополнении можно указать путь к сборке с типами в app.config (ПосмотретьpublicKeyToken можно с помощью команды sn.exe -Tp имяфайла.dll)
Test MAF Test AddIn Find: 1 Addin.Test() = True Addin.Test() = True Addin.Test() = True Press any key to continue . . . Спасибо
0
|
|||||||||||
|
7 / 6 / 5
Регистрация: 16.07.2015
Сообщений: 147
|
|
| 04.04.2017, 11:45 [ТС] | |
|
Ещё небольшая проблема.
Сделал библиотеку, назвал сборку Version.dll . Так вот при работе приложения выдаёт ошибку (скриншот прилагается). Если сборку переименовать в Version_.dll, то всё в порядке. Кто-нибудь знает Version.dll название файла имеет какое то специальное значение в dotNET?
0
|
|
|
6691 / 4102 / 1607
Регистрация: 09.05.2015
Сообщений: 9,573
|
|
| 04.04.2017, 14:03 | |
|
Есть предположение что mscoree.dll обращается к системной DLL version.dll для вызова WinAPI GetFileVersionInfoSizeW, а т.к. в текущем каталоге имеется DLL с именем version.dll, то поиск системной DLL заканчивается и происходит неудачная попытка вызова GetFileVersionInfoSizeW из вашей сборки...
1
|
|
|
7 / 6 / 5
Регистрация: 16.07.2015
Сообщений: 147
|
|
| 04.04.2017, 14:59 [ТС] | |
|
Похоже так. При освоении MAF сделал множество косяков. Теперь работает ☺ Основные пункты перечислены выше, чтобы проект заработал.
0
|
|
| 04.04.2017, 14:59 | |
|
Помогаю со студенческими работами здесь
10
Почему код не находит ссылку? Почему не находит часть кода Swift почему else if не находит условие Почему не находит обратные ссылки? Почему test не находит файл? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop?
Ниже её машинный перевод.
После долгих разбирательств я наконец-то вернула себе. . .
|
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод
Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод.
Thinkpad X220 Tablet —. . .
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|