Использую код импорта:
[DllImport("Project1.dll", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
[return: MarshalAs(UnmanagedType.LPStr)]
public static extern string summa(string names);
void Test()
{
Process pr = Process.GetCurrentProcess();
Debug.Log(summa(pr.ProcessName));
}
Но Project1 почему-то не возвращает string - хотя с int работает
extern "C" __declspec(dllexport) std::string summa(std::string name)
{
return "12345" + name;
}
На С++ примерно так:
void Test()
{
Process pr = ...;
string s = summa(pr.ProcessName);
Debug.Log(s.c_str());
}
Сборка персонального компьютера от Artline: умный выбор для современных пользователей