Объясню смысл приложения: вам нужно загрузить dll-файл в редактор C#, чтобы можно было работать с этим позже. Я решил загрузить его через C++ LoadLibraryW. Следующий код делает это:
Код: Выделить всё
#ifndef EDITOR_INTERFACE
#define EDITOR_INTERFACE extern "C" __declspec(dllexport)
#endif
EDITOR_INTERFACE uint32_t LoadDll(const wchar_t* dll_path)
{
if (game_code_dll) return 0;
game_code_dll = LoadLibraryW(dll_path);
assert(game_code_dll);
if (game_code_dll != nullptr) return 1;
else return 0;
}
Код: Выделить всё
namespace Editor.DllWrappers
{
public static class Utilities
{
private const string _dllName = "EngineDLL.dll";
[DllImport(_engineDLLName, CharSet = CharSet.Unicode)]
public static extern int LoadDll(string dll_path);
}
}
Почему это происходит?< /п>
Подробнее здесь: https://stackoverflow.com/questions/786 ... characters