1

I'm currently using Sandboxie, but it has many downsides like game crashes and slow download network traffic to name a few.

I need something like Sandboxie because I'm using a called Aster to allow two Windows users to run at the same time on the same OS on different monitors with different GPUs. While most apps work fine in this configuration Steam only allow a single instance open at any time even if it's installed in 2 separate directories and being run by 2 separate user accounts.

If I could tell the Steam installer to allow multiple instances, then I could install it in a separate directory for each user. From there, I'd also need steam.exe to allow running multiple instances for the same reason.

I'm not sure what else could break in terms of registry entries though. This may be more involved than I think; although, that's why I'm wondering if there's a better way of handling this without Sandboxie.

Sawtaytoes
  • 512
  • 10
  • 20
  • I would have suggested a VM with GPU passthrough, but I can't find any easy information on how to set it up on Windows without needing Windows Server and HyperV. – Mokubai Sep 01 '21 at 10:07
  • I tried that already using Hyper-V and yes, it's very complex to setup. – Sawtaytoes Sep 02 '21 at 08:12
  • 1
    I don't know if this does you any good but, I also use ASTER and sometimes (very rarely) I actually *can* open two simultaneous instances of Steam, one in each user. [I literally just did](https://imgur.com/HkIbjvz) and got here by googling it. But I don't know why it works, or how to reproduce it. It just happens sometimes. – lima Jul 09 '22 at 22:55
  • 1
    I wonder if Steam only allows one instance, and it's not a situation of it running as SYSTEM. It's possible someone gave me the wrong info. In that case, you could open two instances if you can fake it. – Sawtaytoes Jul 10 '22 at 01:23
  • I would think so. Otherwise I shouldn't be able to have two instances running in parallel right now. harrymc's answer was a potential theory, but this proves it wrong. Too bad I don't know where to go from here. If anyone has any idea on how to investigate further, I'm up for it. – lima Jul 10 '22 at 05:11
  • UPDATE: I actually closed and re-opened the second Steam instance twice, without the other one closing, and [launched different games in both of them successfully](https://i.imgur.com/QuVqlPU.png). Can anybody else try it? Maybe Steam removed this limitation silently… – lima Jul 10 '22 at 15:49
  • 1
    @Sawtaytoes Please take a look at my answer and consider marking it as the solution. It has been working for 4 months now, and the one that has the most upvotes is wrong and misleading. – lima Nov 28 '22 at 16:25

2 Answers2

1

This is not possible without using Sandboxie or a virtual machine.

This is because the Steam client service (the core of Steam) runs as System and has access to all user directories. You can set the service to run under a specific user instead of Local System, but that will prevent other users from running it.

There is nothing you can do about it. Steam is intended to work as a singleton application.

One reason might be because some games save their player-specific data in predefined folders, rather than in %user%. Such games would still work when running Steam in Sandboxie, as there would be no contention between the instances, since they will be using different files.

harrymc
  • 455,459
  • 31
  • 526
  • 924
  • When you say, you can run Steam only for a certain user, you're also saying that it doesn't allow an instance running per user? – Sawtaytoes Sep 01 '21 at 17:33
  • The Steam system service is installed running under the Local System account, which makes it basically a part of Windows. It's possible to set it to run instead under one user account, but then only that user (login) can use Steam, and as usual with only one instance. – harrymc Sep 01 '21 at 17:48
  • I don't mind if a single user can only run one copy of Steam so long as 2 users can run 1 copy of Steam. – Sawtaytoes Sep 02 '21 at 00:49
  • 1
    Changing the user account for the Steam system service does not help in that. – harrymc Sep 02 '21 at 12:51
  • This is not correct. The Steam service running as SYSTEM doesn't prevent two instances from running simultaneously, as per my comment in the original question. – lima Jul 09 '22 at 22:55
  • @lima: I think you misunderstood my answer. The fact that sometimes, rarely, you succeed in running two instances just means that Steam has a bug, probably a bad check coupled with a racing condition. Its being a System account means that there is no way to trick it, as it has full and unrestricted access to the entire computer. – harrymc Jul 10 '22 at 07:45
  • I actually didn't. The statement *"This is not possible without using Sandboxie or a virtual machine."* is just plain wrong. I understand you came to that conclusion based on the fact that there's currently no consistent/documented way to do it, but the fact that it happens (regardless of the rarity) disproves it. As you very well said, the Steam program must be checking some condition/s and it bugs out sometimes. So yeah, it just doesn't matter that SYSTEM runs the service. Two instances can run simultaneously in the same PC under different users, we just have to figure out how and why. – lima Jul 10 '22 at 15:38
  • @lima: Good luck going against measures by Steam that are intended to protect YOU. – harrymc Jul 10 '22 at 16:37
  • I understand you were feeling frustrated when you wrote that, but remember that SU it's not a place for moral discussion. It's about finding the right answer for what the OP asks. Even so, it would seem that Steam doesn't care about that restriction anymore, since I've been doing it for weeks now, every time, no workaround needed. And yeah, again, the SYSTEM thing is irrelevant. It was a nice theory, but it's been debunked. – lima Jul 24 '22 at 16:52
  • This answer was originally correct, but it's no longer valid. Steam now allows opening multiple copies at the same time in different user sessions! – Sawtaytoes Dec 01 '22 at 22:07
  • For anyone reading this after the fact, this answer was NEVER correct. A service running as SYSTEM won't stop an executable from being run in more than one instance. This is exactly how Steam used to run, and how it's running now, no change has been made to that. The exe had some sort of instance checking code, and now it doesn't. I just wanted to make this clear to stop misinformation from being spread as fact. – lima Dec 05 '22 at 16:42
1

Apparently, you can now, no workaround needed.

I'm running ASTER v2.31, Windows 11 22H2, and Steam updated to the latest version. You can simply open the program and run games in both user sessions simultaneously without limitations. I've been testing this for weeks now.

lima
  • 205
  • 2
  • 6
  • Do you mean you launched the program from the executable? – Deoxal Nov 28 '22 at 04:03
  • Exactly. I just launch the same exe in each workplace. It has been working flawlessly since I posted about it. – lima Nov 28 '22 at 16:18
  • Just tested it in Win11 22H2 on my Aster box. It works! :D No more Sandboxie needed! – Sawtaytoes Dec 01 '22 at 22:06
  • Okay I looked at the diagram and it seems like it won't work for me. I want to run two of the same game on the same display. Terraria has server support so it should be as simple as connecting to localhost and if not then it could be networked in some other way. – Deoxal Dec 14 '22 at 02:59
  • @Deoxal I would advise you to ask in Arqade, since what you are looking for its outside the scope of this question. This is about running two instances of Steam using only ASTER (with two displays). Your situation involves a specific game in a single display. – lima Dec 14 '22 at 12:48