2012-09-17 98 views
0

我需要一個解決方案,如何從Visual Studio 2010中的其他項目讀取數組。在這個數學程序中,我生成了一個2d數組來保存一些球體的數據。由於一些錯誤,我不能建立一個程序來訪問和加載這兩個API。現在我已經在一個項目文件夾中編寫了兩個獨立的程序(項目),並且需要訪問Array。從另一個Visual Studio C++項目讀取數組?

我的第一個解決方案是用數組的值生成一個文件,並由另一個程序讀出它。但由於我的程序需要快速,最大。每次迭代20ms,我不認爲這對我有很大的幫助。

有沒有辦法解決這個問題?

預先感謝您

編輯:

我解決我的問題。我碰巧讓我的程序運行在短短的一個應用。我的錯誤是在NXOpen的主函數中調用MatLab-Engine,而不是自己的函數。無論如何,謝謝你激勵我找到一個「一個程序解決方案」:)

+1

設計你自己的通信協議只是要求麻煩,因爲你必須處理併發的所有危害。雖然一個體面的方法是隻使用像SQLite這樣的內存數據庫,但是解決你所接收的錯誤並在單個應用程序中順序執行事情不是更容易嗎?順便說一下,您收到了哪些錯誤,您是否也可以爲它們提供一些相關的代碼? –

+0

由於程序在執行應用程序後關閉,我不知道如何處理該問題。 我使用MatLab-Engine和一個名爲Siemens NX8.0的CAD程序,更確切地說是NXOpen API。這些程序本身工作起來非常完美,但只要添加了所有圖庫,幷包含從MatLab引擎到CAD應用程序,並啓動應用程序,只要MatLab引擎啓動,它就會關閉。 所以我真的不知道如何處理這個問題,需要一個替代方案。 – user1678188

+0

有趣。 [Event Log](http://windows.microsoft.com/en-NZ/windows-vista/Open-Event-Viewer)是否提供了任何線索?應用程序很少沒有理由死亡,特別是那些高調的應用程序。 –

回答

2

要在多個進程之間共享數據,可以使用文件映射。檢查Sharing Files and Memory,這裏是很好的例子:Creating Named Shared Memory

雖然將您的解決方案分成兩個應用程序似乎並不正確。在你的解決方案變得更加複雜之前,先試着檢查一下是否有辦法讓它變得更簡單。

+0

謝謝,我會試試這個。我真的很想在一個應用程序中找到一種方法來做到這一點,但我沒有想法來解決它。 – user1678188

相關問題