我正在一个项目中工作,我有一个本机(c ++)应用程序和一个COM DLL(c#.Net)。 我的要求是,从我的本机应用程序中我想在COM DLL中调用一个函数,该函数返回string(out参数)。
Bellow是代码
C#COM代码......
[ComVisible(true)]
public interface IUserDetais
{
bool GetUserConfigData(out string configData);
}
[
ComVisible(true),
ClassInterface(ClassInterfaceType.None),
GuidAttribute("GUID"),
]
public class AppUserDetais : IUserDetais
{
public bool GetUserConfigData(out string configData)
{
configData = "Some JSON content.";
reurn true;
}
}
C ++代码
void GetUserInfo(IUserDetais* pUserInfo)
{
// TODO, How to call the function. what should be the signature in C#(the out string length can vary and how to delete the memory allocated).
//pUserInfo->GetUserConfigData();
}
任何人都可以告诉我如何在C ++代码中调用GetUserConfigData。
更新
C ++不是.Net代码。它是C ++ win32或本机代码。