У меня есть модуль C ++ / CLI, который использует библиотеку COM.Функция библиотеки COM возвращает указатель на объект.Подпись вызова функции COM в C ++ / CLI выглядит следующим образом:
IntPtr p = myCOMObject->GetSettings();
В интерфейсе COM та же функция имеет следующую особенность
virtual HRESULT STDMETHODCALLTYPE GetSettings(
/* [retval][out] */ void *CSettings) = 0;
объект аргумента * CSettings является родным объектом C ++ некоторыхдругой класс создан в побочной функции GetSettings.
При вызове этой функции в C ++ / CLI.Я всегда получаю IntPtr как '0' и никакое значение не установлено к нему.Я проверил с чистым кодом C ++, я получаю правильный объект.что может быть причиной этого. Я делаю что-то не так, пожалуйста, предложите.