Помогите пожалуйста чайнику в VBA. Есть COM-dll написанная на С++, и в ней объект с несколькими методами. Почему-то вылетает ошибка либо вообще падает Excel при вызове тех методов которые возвращают какой либо объект. Падение происходит при выходе из метода.
IDL:
[
object,
uuid(37B826D5-3E69-40A8-B6F9-C320548A14ED),
dual,
helpstring("INIKAPI Interface"),
pointer_default(unique)
]
interface INIKAPI : IDispatch
{
[id(1)]
HRESULT LoadFile(BSTR bstrFile, [out,retval]long *res); [/code][/code]
[id(3)]
HRESULT GetObject([out, retval]IDispatch **ppiObject);
};
VBA или Visual Basic:
Sub LoadResults()
Dim Viewer As New NIKAPI
Dim Ret As Long
Dim Path As String
Dim Obj As Object
Path = "C:\1.fld"
Ret = Viewer.LoadFile(Path)
Set Obj = Viewer.GetObject() 'здесь при выходе из функции падает
End Sub