【发布时间】:2009-06-17 16:57:24
【问题描述】:
我正在尝试使用 C++ 和 ATL 开发一个 COM 对象,供 C++ 和 C# Windows Mobile 客户端使用。 COM 对象包含了连接到我们的服务器并使用我们的专有协议发送/接收数据的所有逻辑。我在想出与 C# 和 C++ 一起正常工作的 OnReceive 事件时遇到了一些困难。
我已经定义了这样的事件函数:
HRESULT OnReceive(BYTE* pBuffer, LONG lSize);
但是当我在 C# 或对象浏览器中查看该函数时,结果如下:
OnReceive(ref byte pBuffer, int lSize);
如何将“ref byte”视为 C# 中的指针?如何将二进制数据传递给 OnReceive 并允许 C++ 和 C# 客户端访问二进制数据?
【问题讨论】: