簡體   English   中英

使用COM對象在C ++應用程序和C#應用程序之間的C#共享內存

[英]C# shared memory between C++ application and C# application using COM object

是否可以在COM對象中擁有共享內存,以供使用C#和/或C ++構建的應用程序使用?
C#可以訪問COM對象中的共享內存而不會崩潰嗎?

謝謝,
阿迪·巴爾達

是的,這就是您需要的-您所需要做的就是創建一個內存映射文件 如果您不能直接在.NET中執行此操作,則需要使用您嵌入並從.NET應用程序中調用的C / C ++代碼來執行。

要使其防崩潰,就需要正確地理解底層的細微之處,因為boost :: interprocess可以很好地抽象這些細微之處,因此可能會有所幫助。

我真的看不到COM對象在其中扮演什么角色。 但是,沒有,沒有什么可以使MMF從根本上與托管代碼不兼容的。 它們只是非常尷尬,因為您需要使用指針來訪問它們。

.NET 4.0中將提供對MMF的支持。 在生產代碼中使用它可能為時過早。 但是,請務必查看一下API,以便您現在所做的工作在切換時能夠很好地適合API。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM