Question

Is there any way to force an update of software using RunOnce, without having an administrator log in, if there is a service running as Administrator running in the background?

EDIT: The main thing I want to be able to do is Run when the RunOnce does, I.E. before Explorer starts. I need to be able to install things, without booting into the Administrator account.

Was it helpful?

Solution

I'm not sure I understand the question. Let me try:

The service you mention, is it yours? If so, you can add code to it to imitate Windows: from your service, examine the RunOnce value and launch the executable it specifies. You can use the CreateProcessAsUser() API to launch it in the context of an arbitrary user. After launching the process, delete the RunOnce entry.

Or have I misunderstood your question?

EDIT: A service does not depend on any user being logged in. You can start your update process from the service as soon as the service itself starts, it will happen before any real user logs in to the computer.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top