Документация Steamworks
Интерфейс ISteamClient
Используется для создания нового экземпляра Steam или для соединения с существующим, вне зависимости от того, в каком процессе — другом или локальном.

В большинстве случаев эти процессы автоматически управляются с помощью SteamAPI_Init.
Вам потребуется использовать этот интерфейс, только если у вас есть сложная схема управления версиями, либо если вы хотите реализовать мультиплексный игровой сервер с несколькими SteamID, который позволяет управлять несколькими играми с помощью одного процесса.

Функции-члены

Функции-члены ISteamClient вызываются с помощью глобальной функции доступа SteamClient().

BReleaseSteamPipe

bool BReleaseSteamPipe( HSteamPipe hSteamPipe );
НазваниеТипОписание
hSteamPipeHSteamPipeКанал, который требуется освободить.

Освобождает ранее созданный канал коммуникаций.

НЕ ПОТОКОБЕЗОПАСНЫЙ: при вызове убедитесь, что API Steamworks не используются другими потоками!

Возвращаемые значения: bool
true, если канал действителен и был освобождён, в противном случае false.

BShutdownIfAllPipesClosed

bool BShutdownIfAllPipesClosed();
Вызывает глобальное закрытие элемента доп. контента, если все каналы закрыты.

Возвращаемые значения: bool

ConnectToGlobalUser

HSteamUser ConnectToGlobalUser( HSteamPipe hSteamPipe );
НазваниеТипОписание
hSteamPipeHSteamPipeКанал соединения, к которому необходимо подключиться.

Соединяет с существующим глобальным пользователем. Если ни одного не существует, вызов не удаётся.

Используется игрой для координации с пользовательским интерфейсом Steam.

НЕ ПОТОКОБЕЗОПАСНЫЙ: при вызове убедитесь, что API Steamworks не используются другими потоками!

Возвращает: HSteamUser
Дескриптор HSteamUser глобального пользователя. Если вызов не удался (поток недействителен или глобальный пользователь не найден), возвращает 0.

CreateLocalUser

HSteamUser CreateLocalUser( HSteamPipe *phSteamPipe, EAccountType eAccountType );
НазваниеТипОписание
phSteamPipeHSteamPipe *
eAccountTypeEAccountType

Создаёт пользователя Steam, который не будет виден никому другому. Используется только игровыми серверами.

НЕ ПОТОКОБЕЗОПАСНЫЙ: при вызове убедитесь, что API Steamworks не используются другими потоками!

Возвращаемые значения: HSteamUser
Создаётся новый дескриптор SteamUser.

CreateSteamPipe

HSteamPipe CreateSteamPipe();
Обращение к каналу коммуникации с клиентом Steam.
НЕ ПОТОКОБЕЗОПАСНЫЙ: при вызове убедитесь, что API Steamworks не используются другими потоками!

Возвращает: HSteamPipe

GetIPCCallCount

uint32 GetIPCCallCount();
Возвращает число межпроцессных вызовов, сделанных с последнего вызова этой функции.

Используется для отладки производительности и понимания того, какова покадровая частота межпроцессных вызовов, совершаемых игрой. Каждый межпроцессный вызов переключает если не сам процесс, то по крайней мере контекст потока, так что рекомендуется выполнять вызовы аккуратно и контролировать их частоту.

Возвращает: uint32

GetISteamApps

ISteamApps * GetISteamApps( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion );
НазваниеТипОписание
hSteamUserHSteamUserДескриптор пользователя для получения интерфейса.
hSteamPipeHSteamPipeКанал для доступа к интерфейсу.
pchVersionconst char *Строка, которая идентифицирует получаемую версию интерфейса.

Запрашивает интерфейс ISteamApps, связанный с указанным дескриптором пользователя.

Константой, содержащей текущую версию интерфейса, является STEAMAPPS_INTERFACE_VERSION.

Вы не должны пользоваться этой функцией в нормальных условиях, обычно она является функциональным эквивалентом вызова глобальной функции доступа SteamApps().

Возвращает: ISteamApps *
Указатель на реализацию SteamApps, связанную с данным HSteamUser.

Возвращает NULL, если хотя бы один аргумент недействителен.

GetISteamController

ISteamController * GetISteamController( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion );
НазваниеТипОписание
hSteamUserHSteamUserДескриптор пользователя для получения интерфейса.
hSteamPipeHSteamPipeКанал для доступа к интерфейсу.
pchVersionconst char *Строка, которая идентифицирует получаемую версию интерфейса.

Запрашивает интерфейс ISteamController, связанный с указанным дескриптором пользователя.

Константой, содержащей текущую версию интерфейса, является STEAMCONTROLLER_INTERFACE_VERSION.

Вы не должны пользоваться этой функцией в нормальных условиях, обычно она является функциональным эквивалентом вызова глобальной функции доступа SteamController().

Возвращает: ISteamController *
Указатель на реализацию SteamController, связанную с данным HSteamUser.

Возвращает NULL, если хотя бы один аргумент недействителен.

GetISteamFriends

ISteamFriends * GetISteamFriends( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion );
НазваниеТипОписание
hSteamUserHSteamUserДескриптор пользователя для получения интерфейса.
hSteamPipeHSteamPipeКанал для доступа к интерфейсу.
pchVersionconst char *Строка, которая идентифицирует получаемую версию интерфейса.

Запрашивает интерфейс ISteamFriends, связанный с указанным дескриптором пользователя.

Константой, содержащей текущую версию интерфейса, является STEAMFRIENDS_INTERFACE_VERSION.

Вы не должны пользоваться этой функцией в нормальных условиях, обычно она является функциональным эквивалентом вызова глобальной функции доступа SteamFriends().

Возвращаемые значения: ISteamFriends *
Указатель на реализацию SteamFriends, связанную с данным HSteamUser.

Возвращает NULL, если хотя бы один аргумент недействителен.

GetISteamGameServer

ISteamGameServer * GetISteamGameServer( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion );
НазваниеТипОписание
hSteamUserHSteamUserДескриптор пользователя для получения интерфейса.
hSteamPipeHSteamPipeКанал для доступа к интерфейсу.
pchVersionconst char *Строка, которая идентифицирует получаемую версию интерфейса.

Запрашивает интерфейс ISteamGameServer, связанный с указанным дескриптором пользователя.

Константой, содержащей текущую версию интерфейса, является STEAMGAMESERVER_INTERFACE_VERSION.

Вы не должны пользоваться этой функцией в нормальных условиях, обычно она является функциональным эквивалентом вызова глобальной функции доступа SteamGameServer().

Возвращает: ISteamGameServer *
Указатель на реализацию SteamGameServer, связанную с данным HSteamUser.

Возвращает NULL, если хотя бы один аргумент недействителен.

GetISteamGameServerStats

ISteamGameServerStats * GetISteamGameServerStats( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion );
НазваниеТипОписание
hSteamUserHSteamUserДескриптор пользователя для получения интерфейса.
hSteamPipeHSteamPipeКанал для доступа к интерфейсу.
pchVersionconst char *Строка, которая идентифицирует получаемую версию интерфейса.

Запрашивает интерфейс ISteamGameServerStats, связанный с указанным дескриптором пользователя.

Константой, содержащей текущую версию интерфейса, является STEAMGAMESERVERSTATS_INTERFACE_VERSION.

Вы не должны пользоваться этой функцией в нормальных условиях, обычно она является функциональным эквивалентом вызова глобальной функции доступа SteamGameServerStats().

Возвращаемые значения: ISteamGameServerStats *
Указатель на реализацию SteamGameServerStats, связанную с данным HSteamUser.

Возвращает NULL, если хотя бы один аргумент недействителен.

GetISteamGenericInterface

void * GetISteamGenericInterface( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion );
НазваниеТипОписание
hSteamUserHSteamUserДескриптор пользователя для получения интерфейса.
hSteamPipeHSteamPipeКанал для доступа к интерфейсу.
pchVersionconst char *Строка, которая идентифицирует получаемую версию интерфейса.

Запрашивает интерфейс универсального типа, связанный с дескриптором пользователя.

Вы не должны пользоваться этой функцией в нормальных условиях.

Возвращает: void *
Указатель на реализацию интерфейса, связанную с данным HSteamUser.

Возвращает NULL, если хотя бы один аргумент недействителен.

GetISteamHTMLSurface

ISteamHTMLSurface * GetISteamHTMLSurface( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion );
НазваниеТипОписание
hSteamUserHSteamUserДескриптор пользователя для получения интерфейса.
hSteamPipeHSteamPipeКанал для доступа к интерфейсу.
pchVersionconst char *Строка, которая идентифицирует получаемую версию интерфейса.

Запрашивает интерфейс ISteamHTMLSurface, связанный с указанным дескриптором пользователя.

Константой, содержащей текущую версию интерфейса, является STEAMHTMLSURFACE_INTERFACE_VERSION.

Вы не должны пользоваться этой функцией в нормальных условиях, обычно она является функциональным эквивалентом вызова глобальной функции доступа SteamHTMLSurface().

Возвращает: ISteamHTMLSurface *
Указатель на реализацию SteamHTMLSurface, связанную с данным HSteamUser.

Возвращает NULL, если хотя бы один аргумент недействителен.

GetISteamHTTP

ISteamHTTP * GetISteamHTTP( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion );
НазваниеТипОписание
hSteamUserHSteamUserДескриптор пользователя для получения интерфейса.
hSteamPipeHSteamPipeКанал для доступа к интерфейсу.
pchVersionconst char *Строка, которая идентифицирует получаемую версию интерфейса.

Запрашивает интерфейс ISteamHTTP, связанный с указанным дескриптором пользователя.

Константой, содержащей текущую версию интерфейса, является STEAMHTTP_INTERFACE_VERSION.

Вы не должны пользоваться этой функцией в нормальных условиях, обычно она является функциональным эквивалентом вызова глобальной функции доступа SteamHTTP().

Возвращает: ISteamHTTP *
Указатель на реализацию SteamHTTP, связанную с данным HSteamUser.

Возвращает NULL, если хотя бы один аргумент недействителен.

GetISteamInventory

ISteamInventory * GetISteamInventory( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion );
НазваниеТипОписание
hSteamUserHSteamUserДескриптор пользователя для получения интерфейса.
hSteamPipeHSteamPipeКанал для доступа к интерфейсу.
pchVersionconst char *Строка, которая идентифицирует получаемую версию интерфейса.

Запрашивает интерфейс ISteamInventory, связанный с указанным дескриптором пользователя.

Константой, содержащей текущую версию интерфейса, является STEAMINVENTORY_INTERFACE_VERSION.

Вы не должны пользоваться этой функцией в нормальных условиях, обычно она является функциональным эквивалентом вызова глобальной функции доступа SteamInventory().

Возвращает: ISteamInventory *
Указатель на реализацию SteamInventory, связанную с данным HSteamUser.

Возвращает NULL, если хотя бы один аргумент недействителен.

GetISteamMatchmaking

ISteamMatchmaking * GetISteamMatchmaking( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion );
НазваниеТипОписание
hSteamUserHSteamUserДескриптор пользователя для получения интерфейса.
hSteamPipeHSteamPipeКанал для доступа к интерфейсу.
pchVersionconst char *Строка, которая идентифицирует получаемую версию интерфейса.

Запрашивает интерфейс ISteamMatchmaking, связанный с указанным дескриптором пользователя.

Константой, содержащей текущую версию интерфейса, является STEAMMATCHMAKING_INTERFACE_VERSION.

Вы не должны пользоваться этой функцией в нормальных условиях, обычно она является функциональным эквивалентом вызова глобальной функции доступа SteamMatchmaking().

Возвращает: ISteamMatchmaking *
Указатель на реализацию SteamMatchmaking, связанную с данным HSteamUser.

Возвращает NULL, если хотя бы один аргумент недействителен.

GetISteamMatchmakingServers

ISteamMatchmakingServers * GetISteamMatchmakingServers( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion );
НазваниеТипОписание
hSteamUserHSteamUserДескриптор пользователя для получения интерфейса.
hSteamPipeHSteamPipeКанал для доступа к интерфейсу.
pchVersionconst char *Строка, которая идентифицирует получаемую версию интерфейса.

Запрашивает интерфейс ISteamMatchmakingServers, связанный с указанным дескриптором пользователя.

Константой, содержащей текущую версию интерфейса, является STEAMMATCHMAKINGSERVERS_INTERFACE_VERSION.

Вы не должны пользоваться этой функцией в нормальных условиях, обычно она является функциональным эквивалентом вызова глобальной функции доступа SteamMatchmakingServers().

Возвращает: ISteamMatchmakingServers *
Указатель на реализацию SteamMatchmakingServers, связанную с данным HSteamUser.

Возвращает NULL, если хотя бы один аргумент недействителен.

GetISteamMusic

ISteamMusic * GetISteamMusic( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion );
НазваниеТипОписание
hSteamUserHSteamUserДескриптор пользователя для получения интерфейса.
hSteamPipeHSteamPipeКанал для доступа к интерфейсу.
pchVersionconst char *Строка, которая идентифицирует получаемую версию интерфейса.

Запрашивает интерфейс ISteamMusic, связанный с указанным дескриптором пользователя.

Константой, содержащей текущую версию интерфейса, является STEAMMUSIC_INTERFACE_VERSION.

Вы не должны пользоваться этой функцией в нормальных условиях, обычно она является функциональным эквивалентом вызова глобальной функции доступа SteamMusic().

Возвращает: ISteamMusic *
Указатель на реализацию SteamMusic, связанную с данным HSteamUser.

Возвращает NULL, если хотя бы один аргумент недействителен.

GetISteamMusicRemote

ISteamMusicRemote * GetISteamMusicRemote( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion );
НазваниеТипОписание
hSteamUserHSteamUserДескриптор пользователя для получения интерфейса.
hSteamPipeHSteamPipeКанал для доступа к интерфейсу.
pchVersionconst char *Строка, которая идентифицирует получаемую версию интерфейса.

Запрашивает интерфейс ISteamMusicRemote, связанный с указанным дескриптором пользователя.

Константой, содержащей текущую версию интерфейса, является STEAMMUSICREMOTE_INTERFACE_VERSION.

Вы не должны пользоваться этой функцией в нормальных условиях, обычно она является функциональным эквивалентом вызова глобальной функции доступа SteamMusicRemote().

Возвращает: ISteamMusicRemote *
Указатель на реализацию SteamMusicRemote, связанную с данным HSteamUser.

Возвращает NULL, если хотя бы один аргумент недействителен.

GetISteamNetworking

ISteamNetworking * GetISteamNetworking( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion );
НазваниеТипОписание
hSteamUserHSteamUserДескриптор пользователя для получения интерфейса.
hSteamPipeHSteamPipeКанал для доступа к интерфейсу.
pchVersionconst char *Строка, которая идентифицирует получаемую версию интерфейса.

Запрашивает интерфейс ISteamNetworking, связанный с указанным дескриптором пользователя.

Константой, содержащей текущую версию интерфейса, является STEAMNETWORKING_INTERFACE_VERSION.

Вы не должны пользоваться этой функцией в нормальных условиях, обычно она является функциональным эквивалентом вызова глобальной функции доступа SteamNetworking().

Возвращает: ISteamNetworking *
Указатель на реализацию SteamNetworking, связанную с данным HSteamUser.

Возвращает NULL, если хотя бы один аргумент недействителен.

GetISteamRemoteStorage

ISteamRemoteStorage * GetISteamRemoteStorage( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion );
НазваниеТипОписание
hSteamUserHSteamUserДескриптор пользователя для получения интерфейса.
hSteamPipeHSteamPipeКанал для доступа к интерфейсу.
pchVersionconst char *Строка, которая идентифицирует получаемую версию интерфейса.

Запрашивает интерфейс ISteamRemoteStorage, связанный с указанным дескриптором пользователя.

Константой, содержащей текущую версию интерфейса, является STEAMREMOTESTORAGE_INTERFACE_VERSION.

Вы не должны пользоваться этой функцией в нормальных условиях, обычно она является функциональным эквивалентом вызова глобальной функции доступа SteamRemoteStorage().

Возвращаемые значения: ISteamRemoteStorage *
Указатель на реализацию SteamRemoteStorage, связанную с данным HSteamUser.

Возвращает NULL, если хотя бы один аргумент недействителен.

GetISteamScreenshots

ISteamScreenshots * GetISteamScreenshots( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion );
НазваниеТипОписание
hSteamUserHSteamUserДескриптор пользователя для получения интерфейса.
hSteamPipeHSteamPipeКанал для доступа к интерфейсу.
pchVersionconst char *Строка, которая идентифицирует получаемую версию интерфейса.

Запрашивает интерфейс ISteamScreenshots, связанный с указанным дескриптором пользователя.

Константой, содержащей текущую версию интерфейса, является STEAMSCREENSHOTS_INTERFACE_VERSION.

Вы не должны пользоваться этой функцией в нормальных условиях, обычно она является функциональным эквивалентом вызова глобальной функции доступа SteamScreenshots().

Возвращает: ISteamScreenshots *
Указатель на реализацию SteamScreenshots, связанную с данным HSteamUser.

Возвращает NULL, если хотя бы один аргумент недействителен.

GetISteamUGC

ISteamUGC * GetISteamUGC( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion );
НазваниеТипОписание
hSteamUserHSteamUserДескриптор пользователя для получения интерфейса.
hSteamPipeHSteamPipeКанал для доступа к интерфейсу.
pchVersionconst char *Строка, которая идентифицирует получаемую версию интерфейса.

Запрашивает интерфейс ISteamUGC, связанный с указанным дескриптором пользователя.

Константой, содержащей текущую версию интерфейса, является STEAMUGC_INTERFACE_VERSION.

Вы не должны пользоваться этой функцией в нормальных условиях, обычно она является функциональным эквивалентом вызова глобальной функции доступа SteamUGC().

Возвращает: ISteamUGC *
Указатель на реализацию SteamUGC, связанную с данным HSteamUser.

Возвращает NULL, если хотя бы один аргумент недействителен.

GetISteamUnifiedMessages

ISteamUnifiedMessages * GetISteamUnifiedMessages( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion );
НазваниеТипОписание
hSteamUserHSteamUserДескриптор пользователя для получения интерфейса.
hSteamPipeHSteamPipeКанал для доступа к интерфейсу.
pchVersionconst char *Строка, которая идентифицирует получаемую версию интерфейса.

Запрашивает интерфейс ISteamUnifiedMessages, связанный с указанным дескриптором пользователя.

Константой, содержащей текущую версию интерфейса, является STEAMUNIFIEDMESSAGES_INTERFACE_VERSION.

Вы не должны пользоваться этой функцией в нормальных условиях, обычно она является функциональным эквивалентом вызова глобальной функции доступа SteamUnifiedMessages().

Возвращает: ISteamUnifiedMessages *
Указатель на реализацию SteamUnifiedMessages, связанную с данным HSteamUser.

Возвращает NULL, если хотя бы один аргумент недействителен.

GetISteamUser

ISteamUser * GetISteamUser( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion );
НазваниеТипОписание
hSteamUserHSteamUserДескриптор пользователя для получения интерфейса.
hSteamPipeHSteamPipeКанал для доступа к интерфейсу.
pchVersionconst char *Строка, которая идентифицирует получаемую версию интерфейса.

Запрашивает интерфейс ISteamUser, связанный с указанным дескриптором пользователя.

Константой, содержащей текущую версию интерфейса, является STEAMUSER_INTERFACE_VERSION.

Вы не должны пользоваться этой функцией в нормальных условиях, обычно она является функциональным эквивалентом вызова глобальной функции доступа SteamUser().

Возвращает: ISteamUser *
Указатель на реализацию SteamUser, связанную с данным HSteamUser.

Возвращает NULL, если хотя бы один аргумент недействителен.

GetISteamUserStats

ISteamUserStats * GetISteamUserStats( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion );
НазваниеТипОписание
hSteamUserHSteamUserДескриптор пользователя для получения интерфейса.
hSteamPipeHSteamPipeКанал для доступа к интерфейсу.
pchVersionconst char *Строка, которая идентифицирует получаемую версию интерфейса.

Запрашивает интерфейс ISteamUserStats, связанный с указанным дескриптором пользователя.

Константой, содержащей текущую версию интерфейса, является STEAMUSERSTATS_INTERFACE_VERSION.

Вы не должны пользоваться этой функцией в нормальных условиях, обычно она является функциональным эквивалентом вызова глобальной функции доступа SteamUserStats().

Возвращаемые значения: ISteamUserStats *
Указатель на реализацию SteamUserStats, связанную с данным HSteamUser.

Возвращает NULL, если хотя бы один аргумент недействителен.

GetISteamUtils

ISteamUtils * GetISteamUtils( HSteamPipe hSteamPipe, const char *pchVersion );
НазваниеТипОписание
hSteamPipeHSteamPipeКанал для доступа к интерфейсу.
pchVersionconst char *Строка, которая идентифицирует получаемую версию интерфейса.

Запрашивает интерфейс ISteamUtils, связанный с указанным дескриптором пользователя.

Константой, содержащей текущую версию интерфейса, является STEAMUTILS_INTERFACE_VERSION.

Вы не должны пользоваться этой функцией в нормальных условиях, обычно она является функциональным эквивалентом вызова глобальной функции доступа SteamUtils().

Возвращает: ISteamUtils *
Указатель на реализацию SteamUtils, связанную с данным HSteamUser.

Возвращает NULL, если хотя бы один аргумент недействителен.

GetISteamVideo

ISteamVideo * GetISteamVideo( HSteamUser hSteamUser, HSteamPipe hSteamPipe, const char *pchVersion );
НазваниеТипОписание
hSteamUserHSteamUserДескриптор пользователя для получения интерфейса.
hSteamPipeHSteamPipeКанал для доступа к интерфейсу.
pchVersionconst char *Строка, которая идентифицирует получаемую версию интерфейса.

Запрашивает интерфейс ISteamVideo, связанный с указанным дескриптором пользователя.

Константой, содержащей текущую версию интерфейса, является STEAMVIDEO_INTERFACE_VERSION.

Вы не должны пользоваться этой функцией в нормальных условиях, обычно она является функциональным эквивалентом вызова глобальной функции доступа SteamVideo().

Возвращает: ISteamVideo *
Указатель на реализацию SteamVideo, связанную с данным HSteamUser.

Возвращает NULL, если хотя бы один аргумент недействителен.

ReleaseUser

void ReleaseUser( HSteamPipe hSteamPipe, HSteamUser hUser );
НазваниеТипОписание
hSteamPipeHSteamPipeКанал соединения для удаления пользователя.
hUserHSteamUserПользователь, которого нужно удалить.

Удаляет выделенного пользователя.

НЕ ПОТОКОБЕЗОПАСНЫЙ: при вызове убедитесь, что API Steamworks не используются другими потоками!

SetLocalIPBinding

void SetLocalIPBinding( uint32 unIP, uint16 usPort );
НазваниеТипОписание
unIPuint32Локальный IP-адрес для привязки.
usPortuint16Порт для привязки.

Задаёт локальный IP-адрес и порт для привязки.

Это необходимо задать до вызова CreateLocalUser!

SetWarningMessageHook

void SetWarningMessageHook( SteamAPIWarningMessageHook_t pFunction );
НазваниеТипОписание
pFunctionSteamAPIWarningMessageHook_tУказатель функции на функцию обратного вызова.

Задаёт обработчик предупреждающих сообщений, который получает предупреждения SteamAPI и информационные сообщения в функции обратного вызова.

Прототип функции должен соответствовать определению в SteamAPIWarningMessageHook_t. Включает в себя привязку к C и соглашение о вызове __cdecl.

'int nSeverity' показывает серьёзность: 0 для сообщений, 1 для предупреждений. Если вы работаете через отладчик, будут отправляться только предупреждения. Если в командной строке добавить -debug_steamapi, также будут отправляться информационные сообщения.
'const char * pchDebugText' — это текст сообщения.
Обратные вызовы будут выполняться сразу после вызова функции API, которая генерирует предупреждение или сообщение.

Передача NULL прервёт обработку.

Пример:
extern "C" void __cdecl SteamAPIDebugTextHook( int nSeverity, const char *pchDebugText ) { ::OutputDebugString( pchDebugText ); if ( nSeverity >= 1 ) { // место для задания точки останова для обнаружения ошибок API int x = 3; x = x; } } void EnableWarningMessageHook() { SteamUtils()->SetWarningMessageHook( &SteamAPIDebugTextHook ); }

Typedefs

Далее приведён список объявлений typedef, которые определены для использования с ISteamClient.

НазваниеБазовый типОписание
HSteamPipeint32Обращение к каналу коммуникации с клиентом Steam.
HSteamUserint32Обращение к одному экземпляру пользователя.