私はC ++でこの関数を持っています
extern "C" __declspec(dllexport) void SendPacketToServer(BYTE *packet, int Length)
{
_SendToServer(packet, Length);
}
c# でどのように使用できますか?
私はこれまでにこれを試しました:
[DllImport("DAFramework 1.0.dll", SetLastError = true)]
internal static extern void SendPacketToServer(IntPtr packet, int length);
unsafe
{
fixed (byte* pByte = new byte[] { 0x13, 0x00 })
{
IntPtr data = new IntPtr((void*)pByte);
SendPacketToServer(data, 2);
}
}
私は何か間違ったことをしていますか?もしそうなら、どうすればそれを機能させることができますか?エラーが発生します:Attempted to read or write protected memory. This is often an indication that other memory is corrupt.
もっと簡単な方法でできますか?