基本上我需要從Visual C++代碼調用C#代碼。 在閱讀了很多關於可能方式的文章後,我決定使用C++/CLI機制。從Visual C++調用C#代碼
最初我決定在C++本地代碼(dll庫項目)中使用一些函數,它們會從CLR項目中調用一些函數,它會從C#項目中調用一些函數。
之後,我想也許我可以擺脫橋樑項目(CLR項目),因爲它只是過渡到託管世界。我認爲我可以創建我的本地項目,並且可以向其中添加一個C++源文件,並且可以爲該文件啓用CLR支持,而不是整個項目。 所以這意味着我的本地項目將只包含一個可以使用C++/CLI語法的文件並且代表橋接。所有其他文件都只是本機C++源文件。 從設計的角度來看,這是正確的嗎?!
爲了達到上述目的,我想我必須將託管的C#dll文件添加到C++本機dll文件的Additional #using Directories屬性中。 問題是我不知道如何設置基於當前配置的C#dll調試或發佈版本的路徑。
另外我知道我不能將本機C++ DLL添加到C#項目引用。 但它看起來像我可以在本機C++項目中添加一個C#dll作爲參考。怎麼來的 ?!這甚至工作?! 如果我可以將C#dll添加到本機C++項目引用,是否需要設置這些#using目錄?!