我有一個32位的應用程序,我無法控制。我目前正在與一個32位的C++ DLL進行通信,這個C++ DLL會對數據進行處理並將其傳遞給C#應用程序可以訪問的32位.NET DLL。我想將我的C#應用程序升級到64位以獲得更大的內存訪問權限。.NET Concurrent Collections可用於進程間x32與x64通信之間的進程嗎?
有沒有辦法讓我的32位C++ DLL與.NET Concurrent Collections交談,特別是ConcurrentQueue?這會允許進程間通信嗎?如果是這樣,有沒有我可以從中學習的例子?如果沒有,是否有人知道任何API或庫可以解決雙向32-64位進程間通信。
看來這對許多開發者來說是一個主要問題,但我的搜索還沒有發現一個快速,可靠,可能是簡單的解決方案。我感到奇怪的是,主要組件開發人員不提供任何解決方案(我發現)。
在此先感謝您的幫助。
COM互操作是獲取本機C++應用程序使用.NET對象的常用方法。適用於System.Collections中的類,它們具有[ComVisible]屬性。跨過程和邊界邊界工作。但不適用於併發集合,它們是通用的。 COM不支持泛型類。這就是它結束的地方。 –