Я создал библиотеку классов vb.net. Это интерфейс для устройства хранения. Он предоставляет некоторые объекты и методы для чтения и записи данных на устройство.импортировать библиотеку классов vb.net в проект vb6
Проблема заключается в том, что у клиента есть приложение vb6, где мы хотим добавить функциональность библиотеки классов, чтобы манипулировать устройством. я изменил классы на классы com, проверил флажок com interopt и зарегистрировал библиотеку с .net framework 2.0 regasm.exe.
Я добавил библиотеку в качестве ссылки на пустой проект vb6 и создал объект.
dim t as comlib.obj
объект был равен 'ничего'
когда я добавил:
t = new comlib.obj
или
t = createobject("comlib.obj")
я получил следующее сообщение об ошибке:
run-time error '2147024894 (80070002)': Automation
что я делаю неправильно?
Пожалуйста, прочитайте справку о том, как форматировать сообщения и применять их в следующий раз. Абсолютно не нужно использовать теги '
'. –
Это обычная ошибка Windows, «Файл не найден». Коэффициенты хороши, которые генерируются, потому что вы забыли использовать параметр/codebase, когда вы использовали Regasm.exe. Вы можете использовать служебную программу Procmon от SysInternals, если вы не знаете, какой файл может отсутствовать. –
Другая возможность заключается в том, что оболочка COM не могла быть создана или зарегистрирована с учетом x86 или x64. Я столкнулся с этой проблемой со старым классическим ASP-приложением в прошлом. Он работал в режиме x86, и мне потребовалось создать мою оболочку с помощью x86, а также зарегистрироваться с помощью версии regasm.exe на x86. С тех пор я привык предоставлять инсталляторы/сборки как для x86, так и для x64, и потребитель может выбрать более подходящий. – killthrush