Я уже пробовал ArrayList^и VB6 дает мне ошибку «Ошибка несоответствия». Я не вижу C++/CLI 'Collection' или 'List'.Что такое эквивалент C++/CLI для коллекции VB6?
Так что же эквивалент, если таковой имеется?
Я уже пробовал ArrayList^и VB6 дает мне ошибку «Ошибка несоответствия». Я не вижу C++/CLI 'Collection' или 'List'.Что такое эквивалент C++/CLI для коллекции VB6?
Так что же эквивалент, если таковой имеется?
Да, не работает, VB6 хочет собственный класс Collection. Я довольно шокирован, как это получилось. Я думал, легко peasy, просто добавьте ссылку на c: \ windows \ system32 \ msvbvm60.dll и используйте библиотеку interop, которая генерирует. Тогда:
VBA::Collection^ coll = gcnew VBA::Collection();
Kaboom:
Retrieving the COM class factory for component with CLSID {A4C4671C-499F-101B-BB78-00AA00383CBB} failed due to the following error: 80040154.
Класс не зарегистрирован. Просмотренный в реестре, он находится под HKLM \ CLSID, но ключ InprocServer32 пуст. Пустой. Это не хорошо. Изменил его, чтобы указать на msvbvm60.dll. Kaboom, 0x80040111, «ClassFactory не может предоставить запрошенный класс».
Это не будет летать. Оставь все надежды, как я это вижу, если вы не можете реорганизовать код VB6.
Или он может создать собственную фабрику 'VBA.Collection' в VB6 - многоцелевой класс с единственным методом' NewCollection', который возвращает 'New Collection' – wqw
Согласен, что это сработает. –
Я закончил отказываться от всякой надежды. :) Найден другой путь. Спасибо за помощь. –