如何使用SteamWorks API检索Steam用户名?

时间:2016-02-08 23:03:10

标签: steam steamworks-api

如何使用Steam API(已启动并正在运行)获取我的应用程序中当前使用的(已登录)帐户的Steam用户名。

Steam id可以(例如)通过以下方式获得:

CSteamID id = SteamUser.GetSteamID();

但我找不到获取用户名的方法。

1 个答案:

答案 0 :(得分:7)

帐户名称

获取帐户名称很困难,因为据我所知,没有API功能 但是SteamAppData.vdf文件夹中有一个<SteamInstallPath>/config文件,看起来与此类似:

"SteamAppData"
{
    "RememberPassword"  "<0|1>"
    "AutoLoginUser"     "<accountName>"
}

您可以使用SteamAPI_GetSteamInstallPath()中定义的steam_api.h命令获取Steam安装路径 然后,您可以读取该文件并从中提取帐户名称。

玩家姓名

获取玩家名称非常简单:

isteamfriends.h中你应该找到这个方法:

// returns the local players name - guaranteed to not be NULL.
// this is the same name as on the users community profile page
// this is stored in UTF-8 format
// like all the other interface functions that return a char *, it's important that this pointer is not saved
// off; it will eventually be free'd or re-allocated
virtual const char *GetPersonaName() = 0;

所以SteamFriends.GetPersonaName()应该给你玩家名字。