Additional SQL Server features and topics not covered by specific categories
I ended up writing a simple service to start the LocalDB instance. It creates a named pipe that clients can send a message over to start the instance.
Unfortunately it doesn't work when running as SYSTEM. I'm calling LocalDBStartInstance and it returns S_OK, however the instance isn't actually started.
If I modify the service to run as the user who owns the database, it works. This isn't a viable workaround though because it's too fragile. For example, if AD is configured to force users to change their password, the service will break because the stored password is now stale.
When I use Process Monitor I can see my service starting SQLLocalDB and I can see it find the shared instance in the registry, find the owner and name of the instance, then it basically ends.
Either I totally misunderstand shared instances and they are not intended to automatically start for other users on the machine, or it's a bug similar to the on in KB5003342. Is there any way to contact the developers who worked on that KB fix?