Мне нужно передать пустой массив вариантов в библиотеку DLL, написанную на C (и доступную во всех версиях Windows), а код C (который я не могу контролировать и не могу редактировать) заполнит пустой массив вариантовнекоторые возвращаемые значения.
По сути, когда я пытаюсь это сделать, массив ByRef всегда пуст, когда он должен содержать результаты вызова функции / sub (если я делаю то же самое в .NET, он работает).
Я думаю, мне нужно сделать пользовательское объявление, чтобы VB знал, как вызывать функцию C, или?
Вот как объявляется подпрограмма / функция C.Учитывая это, что мне нужно сделать, чтобы C мог правильно использовать мой пустой массив и получать результаты обратно?
HRESULT InvokeAction(
[in] BSTR bstrActionName,
[in] VARIANT varInActionArgs,
[in, out] VARIANT *pvarOutActionArgs,
[in, out] VARIANT *pvarRetVal
);
Подробнее об этой функции: http://msdn.microsoft.com/en-us/library/aa382237(VS.85).aspx
Спасибо