Уважамые форумчане!
Помогите разобраться. Простите, если вопрос оказался слишком безграмотным.
Задача:
Хочу в VB.NET сделать прогу с доступными для других программ функциями (или методами).
(Api, COM, ActiveX или как точно называется).
Создал класс. Свойство Сom visible=true.
проги .NET его функции видят и выполняют.
VBA видит функции,
(и то после регистрации C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\RegAsm.exe /tlb),
но не может ничего запустить
"Automation error". и все...
Нашел инструкцию: http://support.microsoft.com/kb/317535/ru
Согласно ней (воспроизвел всё как там написано), сделал библиотеку классов (хотя изначально хотел сделать exe файл, а не dll. Ну думаю, хотя бы так. Нужные функции просто отделю в dll)
Библиотеку в проекте VBA зарегистрировал. Но опять "Automation error".
Решил проверить в VB6. Тут вышеупомянутый пример заработал .
В чем дело, какая тут принципиальная разница не пойму.
Но вообще нужно, чтобы именно в VBA работало.
К тому же сделал почти тоже самое - проект на VB.Net (обычное Windows приложение), но с классом COM visible.
Опять же он регистрируется, видны методы, но что в VBA, что в VB6 они не запускаются (Automation error).
Подскажите хоть приблизительно , как все таки решить мою задачу:
Программа на VB.Net (или хотя бы dll) с доступными из вне (из VBA) функциями.
Ответить
|