I am writing an application that will consist of GUI part running with user privileges and a server part that runs with local system privileges as a service. From time to time the GUI part needs to perform some operations that need high privileges (administrator/local system). The GUI app could request the service to perform this operation and the service could perform this operation (of course after authentication and authorization).
However it would be more convenient if the service could run a command with local system privileges that would run in the context of users desktop (so that the user can interact with the command's GUI). Is it possible?
Solutions in .NET are preferable, but C/C++ are also fine.