импортировать библиотеку классов vb.net в проект vb6 - PullRequest
2 голосов
/ 19 декабря 2011

Я создал библиотеку классов vb.net.Это интерфейс для устройства хранения.Он предоставляет некоторые объекты и методы для чтения и записи данных на устройство.

Проблема заключается в том, что у клиента есть приложение vb6, в которое мы хотим добавить функциональность библиотеки классов, чтобы манипулировать устройством.,я изменил классы на com классы, установил флажок com interopt и зарегистрировал библиотеку с помощью .net framework 2.0 regasm.exe.

Я добавил библиотеку как ссылку на пустой проект vb6 и создал объект.

dim t as comlib.obj

объект был равен 'ничто'

, когда я добавил:

t = new comlib.obj

или

 t = createobject("comlib.obj")

Я получил следующую ошибку:

ошибка времени выполнения '2147024894 (80070002)': автоматизация

что я делаю не так?

Ответы [ 2 ]

1 голос
/ 19 декабря 2011

Простое затемнение переменной не присваивает ей значение (то же самое, что и .NET private TypeName variableName;), вам нужно сначала создать его, используя Set T = New Comlib.Obj.

Если вы получили сообщение об ошибкеВам нужно использовать стандартные методы отладки, чтобы сузить его, или, возможно, опубликовать полное сообщение об ошибке, и кто-то может посоветовать.

0 голосов
/ 19 декабря 2011

Я бы сказал, что у @Deanna есть решение, но если это не удастся, тогда

Я бы посоветовал вам взглянуть на ваш конструктор в сборке .NET и убедиться, что он не выбрасывает какую-либо среду выполнения.ошибка.

Даже если в вашем новом Sub есть обработчик ошибок, он не будет повышен до приложения VB6.

Я придерживался соглашения о том, чтобы мой конструктор .NET был минимальным изатем используйте дополнительный метод для построения кода (например, LoadData).Таким образом, вы можете иметь соответствующий обработчик ошибок.Если выдается ошибка - она ​​корректно поднимается в VB6.

...