我有一个C ++ DLL文件,我需要使用它来自C#的函数。 C ++文件在ServiceState中有一个名为“Status”的方法。该块的C ++代码如下所示。
STDMETHODIMP ServiceState::Status(/*[out]*/VARIANT *Primary,VARIANT *Secondary )
{
if(primary())
Primary->boolVal = TRUE;
else
Secondary->boolVal = FALSE;
return true;
}
我编译了C ++项目并获得了 Status.dll 输出。 我在C#代码中初始化如下。
[DllImport(@"c:\Status.dll")]
public static extern void ServiceState.Status(IntPtr Primary,IntPtr Secondary);
1)初始化是否正确?
2)由于该方法在C ++中有指针,因此必须将C#数据类型传递给该方法&怎么样?请指导我。
由于