For about a year, I couldn’t use any Windows 10 apps or Xbox games that required me to sign in with a Microsoft Account. I also couldn’t add any email or other online accounts to my Windows account. For whatever reason, all the Microsoft Accounts Control and Windows Web Account Provider dialog windows refused to open.
Whenever I clicked a button that was supposed to open these dialogs, I might see a brief white flash that hinted at the brief appearance of a dialog window. Most of the time, absolutely nothing happened.
Deep-rooted problems with Windows are incredibly difficult to troubleshoot. When developing its software, Microsoft always assumes everything will work flawlessly all the time. Apps and system services rarely generate log files, report errors to the Events system, or even record diagnostics data about the problem. The Diagnostics Viewer reported to Microsoft that I’d opened the desired dialog for less than a millisecond and that everything was fine.
I occasionally tried to troubleshoot the problems and got nowhere. I mostly ignored it as I didn’t regularly use any apps that required that I sign in with Microsoft or Xbox gaming services. However, that was about to change at the end of . Microsoft Game Studios was about to launch Halo Infinite and Age of Empires 4! These games would definitely require me to log in with Xbox gaming services.
I wasted hours trying to troubleshoot Windows Credentials and everything related to account logins. However, I couldn’t find any issues with it. Everything appeared to work fine, except the dialog windows just wouldn’t open!
I couldn’t add new user accounts through the Settings app s the dialogs wouldn’t appear. However, I added a new user account through PowerShell, and the new account didn’t have the issue. Whatever the problem was, it only existed within my main user account.
The problem didn’t go away when I updated my PC to Windows 11. Any issues related to Microsoft Accounts and Windows user accounts are impossible to research online. The search terms are too generic and there’s too much webspam and low-quality forum discussions about generic issues with passwords and such.
Having failed to identify the issue, I’d planned to reinstall Windows 11 a month before the big game releases. As I was going through folders and apps to double-check that I’d backed up everything of value, I suddenly noticed that all the Microsoft Accounts Control dialog windows had begun working again!
So, what had changed? I had the same system configuration, the same apps, and nothing had changed as far as I could tell. Then it struck me: I’d opened all my installed apps and closed them one by one as I ticked them off my backup list. I’d probably quit something that was always running in the background for the first time in a year. That narrowed down the list considerably!
I found the guilty app a couple of minutes later: Recursion Tracker, a game session performance tracker for the first-person shooter PlanetSide 2. Okay, so what would this app possibly be doing in the background that would interfere with Windows’ account handling subsystem?
The Recursion Tracker app works by injecting a DLL library file into the game. The DLL is signed and allow-listed by the game’s anti-cheat system. It tracks how well you’re doing in the game and adds some overlays for achievements and arena-style announcements of your accomplishments. It’s a fairly innocent toy of an app.
To get to the bottom of the issue, I contacted the app’s developer. I informed them about the issue it was causing and asked for access to the app’s source code. The lead developer granted me access to the project and I started poking at the code.
Despite having access to the source code, I haven’t figured out exactly what causes the issue. It relies on some long-since deprecated Microsoft DirectX version 9 API calls that make it a pain to debug on modern versions of Windows. Microsoft released DirectX 9 in 2002 for Windows 98, ME, and XP; and has never been officially supported in Windows Vista and newer.
Any Universal Windows Platform (UWP) apps that relied on either the Microsoft Accounts Control or Windows Web Account Provider integration would fail to log in with existing accounts. So, the problem affected more than just the presentation of the dialog windows. This details may suggest that something about Recursion Tracker might have triggered a security protection system in Windows. However, I’d expect an error message or something if this was the case.
My best theory is that something about the DirectX 9 APIs interferes with the graphics stack in Windows 10 and 11. As long as the app is running, it creates some type of system interference that prevents the Windows account dialogs from appearing.
(I can’t help but think of Recursion Tracker as an Attero device; from the TV show Stargate Atlantis. It was a weapon that sat quietly on a planet and generated galaxy-wide subspace interference. It caused enemy starship engines (and unfortunately Stargates) to explode as they entered hyperspace.)
I don’t know why this manifests as an issue with these specific dialog windows, though. They’re not regular windows. They’re a fairly unique type of hybrid overlay dialog that doesn’t adhere to the normal window management controls in Windows. However, that theory doesn’t quite pan out: the character and emoji picker works; and it uses the same type of dialog window.
You can work around the issue by launching Recursion Tracker in Windows 8 Compatibility Mode (right-click the app, and select Properties and Compatibility). Among other changes, Windows 8 Compatibility Mode changes several parameters of how Windows handles legacy DirectX calls from a program. The compatibility mode does the trick on the latest versions of both Windows 10 and Windows 11.
Alternatively, you can disable the option for an in-game overlay. The app isn’t quite as fun without the overlays, but maybe you’re just using it to track your sessions stats.
It’s an interesting issue and it speaks to both the fragility, quality, and commitment to legacy compatibility in Windows. The user-installed app works even at the cost of core operating functionality. That’s both a blessing and a curse.
My main complaint about Windows is that it’s virtually impossible to troubleshoot without any logs. What’s the purpose of collecting gigabytes of “diagnostics and telemetry data” every month if you fail to detect and log problems?
I don’t want to discourage you from using Recursion Tracker, however. It’s not undergoing active development anymore, and it would be a monumental effort to bring its code base up to snuff. You should keep using it as long as it still works in Windows 8 Compatibility Mode.
Recursion Tracker adds some extra goals and oomph to PlanetSide 2. At least for me, I enjoy having an announcer sound impressed by my double and tipple kills. I guess it’s rooted in nostalgia for Halo. Oh, Halo Infinite is out now, and I still prefer to play PlanetSide 2.
Comments
Post a Comment