如何从IDL Dll(C ++项目)创建和返回MyClass对象数组? Dll将用于C#项目。
//--- in idl file
[id(8)] HRESULT GetTest([out,retval] SAFEARRAY(IMYClass*)* arr_data)
//--- in .h file
STDMETHOD(GetTest)(SAFEARRAY * arr_data);
//--- in .cpp file
STDMETHODIMP CIMY_Interface::GetTest(SAFEARRAY * arr_data)
{
// Code ????
}
我的问题是应该在GetTest
函数
答案 0 :(得分:0)
COM允许您来回发送编组数据类型。这些是主要的核心数据类型,如整数,宽字符串,布尔等,其他COM对象,如果您愿意,您可以为自己的对象或数组编写编组代码。
你想做什么,例如。通过COM传递一个自己的对象数组并不可行。这里有很多选项