Программа вылетает после обработки SteamAPI_RunCallbacks(). [MinGW+SteamSDK]

Я пытаюсь использовать результаты вызова CCallResult из библиотеки Steam. Взял самый простой пример отсюда для нахождения числа активных игроков SteamUserStats()->GetNumberOfCurrentPlayers(). Скомпилированная программа вылетает после успешной обработки вызова. После вылета я вижу результат (число активных игроков) в текстовом файле.

void CGameManager::OnGetNumberOfCurrentPlayers( NumberOfCurrentPlayers_t *pCallback, bool bIOFailure )
{
    if ( bIOFailure || !pCallback->m_bSuccess )
    {
        printf( "NumberOfCurrentPlayers_t failed!\n" );
        return;
    }
    printf( "Number of players currently playing: %ld\n", pCallback->m_cPlayers );

    //СОХРАНИТЬ ДАННЫЕ
    FILE* fsav;
    fsav=fopen("Error.log","w");
    fprintf(fsav,"Number of players currently playing: %ld\n", pCallback->m_cPlayers);
    fclose(fsav);
}

Использую компилятор MinGw под Windows отсюда скорее всего и проблемы. В интернете находил пару человек которые тоже утыкались в эту проблему. Информации нашёл крайне мало - буквально пару страниц. Вобщем варианта предлагалось два - использовать C Wrapper или использовать компилятор Visual Studio. Пробовал и другие вызовы например SteamMatchmaking()->RequestLobbyList() с тем же результатом. Также пробовал использовать "steam_api_flat.h" что в случае с вызовами не принесло положительного результата. Зато при переходе на "steam_api_flat.h" перестали вылетать функции возвращающие CSteamID - например GetFriendByIndex(int iFriend, int iFriendFlags).


Ответы (0 шт):