discord-rpc-csharp icon indicating copy to clipboard operation
discord-rpc-csharp copied to clipboard

Steam apps fail to launch through Discord on Windows.

Open Tyaap opened this issue 5 years ago • 7 comments

To Reproduce I am using a Steam app ID to register a URI scheme, like this: client.RegisterUriScheme(steamAppID: "212480")

Expected behavior The app should launch when e.g. clicking a join link through Discord, but it does not.

Desktop

  • OS: Windows 7
  • Framework: .net fx 4.0
  • Discord RPC C# v1.0.150

Additional context I have narrowed down the cause of the problem: The URI generated in WindowsUriSchemeCreator.cs is retrieving the Steam exe location from Software\\Valve\\Steam\\SteamExe in the registry. In my case it retrieved c:/Program Files (x86)/Steam/steam.exe. Windows seems to misinterpret c:/ and fails to execute the URI command. I manually replaced this with c:\ using Regedit and the URI command was able to execute.

Tyaap avatar Oct 13 '20 18:10 Tyaap

I currently have a workaround, which is to register the URI scheme like this: client.RegisterUriScheme(executable: "explorer steam://rungameid/212480")

Tyaap avatar Oct 13 '20 18:10 Tyaap

huh what a strange bug. Im not entirely sure if its a steam install issue or this library issue, as correctly installed paths should use \ instead of / for the directory separator.

Your fix is certainly interesting and im not entirely sure what it is doing.

Lachee avatar Oct 14 '20 02:10 Lachee

I have the same problem. Do you guys have a discord server for support?

DoubleBullet avatar Jun 08 '21 20:06 DoubleBullet

I have the same problem. Do you guys have a discord server for support?

No, this github is the best place to get support. Can you provide the location that your steam directory is installed under?

Lachee avatar Jun 09 '21 02:06 Lachee

I have the same problem. Do you guys have a discord server for support?

No, this github is the best place to get support. Can you provide the location that your steam directory is installed under?

For me it's under C:\Program Files (x86)\Steam . The game is installed a different folder under a different hard drive.

I mainly just want to pass in this command "steam://joinlobby/{SteamAppID}/{LobbyID}/{UserID}". For now I've manually setup a button to which has that command as the URL and it works if you click on it, but I want the same for the Join/Request to Join feature inside of Discord. Currently nothing happens when trying to send that over to the Register.

DoubleBullet avatar Jun 09 '21 11:06 DoubleBullet

Did this ever get fixed?

DoubleBullet avatar Nov 21 '21 05:11 DoubleBullet

idk, as i know owner is AFK idk

HAHOOS avatar Nov 21 '21 08:11 HAHOOS