C# 调用COM报出异常的问题
COM接口在C++ 中的格式为virtual HRESULT __stdcall StartConversationEx (
/*[in]*/ struct CALL_INFO callInfo,
/*[in]*/ enum CALL_MEDIA_TYPE eCallMediaType,
/*[out]*/ long * pConversationId ) = 0;
在C#工程中添加引用后,元数据中的格式为
void StartConversationEx(CALL_INFO callInfo, CALL_MEDIA_TYPE eCallMediaType, out int pConversationId);
采用下面方式调用:
CALL_INFO callInfo;
callInfo.addressType = ADDRESS_TYPE.ADDRESS_URI;
callInfo.bstrValue = m_strTelnos;
m_phone.StartConversationEx(callInfo, CucRtxExeProviderLib.CALL_MEDIA_TYPE.CALL_MEDIA_VIDEO,
out m_ConversationId);
运行时报出异常,像是内存访问异常
未处理的“System.AccessViolationException”类型的异常出现在 SDKTestClientSampleCodeCSharp.exe 中。
其他信息: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.
void StartConversationEx(CALL_INFO callInfo, CALL_MEDIA_TYPE eCallMediaType, out int pConversationId);
可能是什么原因,怎么改正,求指教
--------------------编程问答-------------------- CALL_INFO的定义如下:
CALL_INFO
{
enum ADDRESS_TYPE addressType;
BSTR bstrValue;
}; --------------------编程问答-------------------- 自己顶一下。。 --------------------编程问答-------------------- 有人知道吗 ,帮忙啊
补充:.NET技术 , C#