Я занимаюсь переносом старой надстройки Excel, написанной на VBA, на VB .NET. Надстройка Excel взаимодействует с рядом внешних объектов com. Код примерно выглядит так:
Dim hurr as Object
Dim durr as String
hurr = CreateObject("COM Object")
durr = hurr.getString
Что я пытаюсь сделать, так это прочитать строку из COM-объекта и получить ее в durr для последующего использования в моей программе.
Эта вторая строка приводит к исключению, опубликованному выше. Если я попытаюсь выполнить кастинг с помощью CStr/CType, я получу то же исключение. Окно наблюдения визуальной студии сообщает о типе hurr.getString как «System.__ComObject», тогда как окно наблюдения VBA сообщает о типе как «Variant/Object/String». Microsoft.VisualBasic.Information.TypeName(hurr.getString) говорит, что тип "String". Любые идеи, как я должен заставить это работать?
Спасибо!