我有一個C++ DLL,其中導出了以下函數。傳遞wstring,字符串和從C#到C++的enum變量的引用(非託管DLL)
double getDouble(std::wstring filename, std::string ID, status &stCode);
int getInt(std::wstring filename, std::string ID, status &stCode);
float getFloat(std::wstring filename, std::string ID, status &stCode);
string getString(std::wstring filename, std::string ID, status &stCode);
int* getIntArray(std::wstring filename, std::string ID, status &stCode);
float* getFloatArray(std::wstring filename, std::string ID, status &stCode);
string* getStringArray(std::wstring filename, std::string ID, status &stCode);
其中狀態是枚舉類型的...
現在,我想在我的C#.NET應用程序使用此DLL ......誰能告訴我怎麼做我delclare在C#中推崇的方法和可以撥打此方法....在此先感謝...
可能重複http://stackoverflow.com/questions/158628/marshal-c-string-class-in-c-sharp -p-invoke) - 簡短的回答你需要改變你的方法來獲取字符緩衝區。 – shf301