Код: Выделить всё
if (SteamAPI_InitEx(nullptr)) {
if (SteamUser()) {
printf("SteamUser() is valid.\n");
try {
CSteamID steamID = SteamUser()->GetSteamID();
printf("SteamID: %llu\n", steamID.ConvertToUint64());
} catch (const std::exception &e) {
printf("Exception occurred: %s\n", e.what());
}
} else {
printf("SteamUser() is nullptr.\n");
}
SteamAPI_Shutdown();
} else {
printf("Failed to initialize Steam API.\n");
}
Код: Выделить всё
SteamUser()Не исключение, просто сбой в этой функции GetSteamID()
С помощью gdb мы можем увидеть, в какой функции происходит сбой, что является следующим вызовом функции после GetSteamID ()
Код: Выделить всё
Thread 1 "MainThrd" received signal SIGSEGV, Segmentation fault. 0x00007ffa5a3de225 in steamclient64!Steam_NotifyMissingInterface () from C:\Program Files (x86)\Steam\steamclient64.dll
Я также пробовал использовать SteamAPI_Init() и SteamAPI_InitFlat() для загрузки API, но получил тот же результат. p>
В Linux все работает нормально.
Подробнее здесь: https://stackoverflow.com/questions/786 ... getsteamid