Не возращает string

234
01 октября 2017, 23:20

Использую код импорта:

[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;
}
Answer 1

На С++ примерно так:

void Test()
{
    Process pr = ...;
    string s = summa(pr.ProcessName);
    Debug.Log(s.c_str());
}
READ ALSO
Разделение программы на модули (C# winforms)

Разделение программы на модули (C# winforms)

Скажите пожалуйста можно ли разделить программу на модули

237
Не удалось загрузить файл или сборку “MathParser.org-mXparser.Net46”

Не удалось загрузить файл или сборку “MathParser.org-mXparser.Net46”

Здравствуйте, скажите пожалуйста, что я делаю не так?

278
Вывод нуля после запятой TextView

Вывод нуля после запятой TextView

ЗдравствуйтеЧерез вот такой метод, элементу TextView присваивается значение

315
Ошибка при выполнении кода console application на мак ос

Ошибка при выполнении кода console application на мак ос

Ошибка при выполнении кода console application на мак ос

204