2010-03-19 28 views
0

所以我現在已經發展到具有幾乎運作包裝。
關於我的包裝問題的其他職位:
C# wrapper and Callbacks &
C# wrapper for array of three pointersC#的包裝和問題與受保護的內存

我使用包裝用建立與Dallmeier的連接如下:

_dallmeier.SessionHandle = DallmeierSDK.dlm_connect(_handle, _ip, "", _pass, null, null, connectionCallback, pInPut) 

這將返回會話處理器。一段時間後,我得到一個關於嘗試讀取或寫入受保護內存的AccessVoilationException。

我覺得這事做用Marshal.Read和/或Marshal.Copy(如上面的職位之一規定),但我不知道在哪裏使用這些命令。

一些可以請告知我在此和/或例子嗎?

回答

1

,也許你可以嘗試包裝你的代碼在fixed塊,以防止移動指針在內存中或正在GC回收。