Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#Steamworks GetSteamID AccessViolationException异常_C#_Steamworks Api - Fatal编程技术网

C#Steamworks GetSteamID AccessViolationException异常

C#Steamworks GetSteamID AccessViolationException异常,c#,steamworks-api,C#,Steamworks Api,因此,我目前正在尝试在基于C#的mod中使用Steamworks API来制作游戏 到目前为止还不错,但是由于游戏没有内置函数,我正在尝试使用SteamWorksAPI(游戏中打包的DLL)获取玩家的Steam ID,以便以后在另一个进程中使用 为了开始这个过程,我尝试在字符串中定义它,并调用streamuser.getstreamid来获取所需的信息: public static string playerSteamID { get

因此,我目前正在尝试在基于C#的mod中使用Steamworks API来制作游戏

到目前为止还不错,但是由于游戏没有内置函数,我正在尝试使用SteamWorksAPI(游戏中打包的DLL)获取玩家的Steam ID,以便以后在另一个进程中使用

为了开始这个过程,我尝试在字符串中定义它,并调用streamuser.getstreamid来获取所需的信息:

    public static string playerSteamID
        {
            get
            {
                return SteamUser.GetSteamID().ToString();
            }
        }

这在VS中不会出现错误,但是当mod调用此函数时,它会抛出System.AccessViolationException“试图读取或写入受保护内存”

我已经尝试适应ulogn版本的streamuser.getstreamid().m_streamid,但仍然得到相同的结果

目前,我让国防部做的只是:

InformationManager.DisplayMessage(new InformationMessage($"Steam ID is: {genStrings.playerSteamID}", Color.White));
注意,第一部分是游戏代码在使用中的一些方面,我不想再写字符串了,只要读一下就可以了

错误的屏幕截图:


如果要使用TaleWorlds API,首先需要调用
Steamworks.SteamAPI.Init
TaleWorlds.PlatformService.PlatformServices.Initialize