I have designed a windows service that periodically checks whether a specific application is installed, and when it finds that it is not installed it downloads it from the shared network location, the file is a silent and unattended install exe (self installing).
I am having problems running the installer so I decided to instead of trying to run installer, run a small hello world windows forms app, just to see if this simple thing works.
After a couple of confused hours I finally discovered that the hello world app does in fact run but under a different user - specifically local machine. In the next couple of hours I found out that I had to turn off UAC (Vista/7) and allow the service to interact with the desktop. After this I finally got a prompt on my desktop that a service is trying to run something and that I had to decide whether to allow it or not.
When I press allow - I am taken to another GUI (different from my desktop) and the hello world runs normally thereafter.
Now, although this is certainly a progress I am still miles away from installing an app under the current user account.
One problem that I had was setting the windows service to run as a specific user, when I use installutil.exe on that kind of WS it prompts me for the user name and password, I enter the correct (admin privilige) data and it fails to install.
What I want to achieve is to have a windows service install a silent install package without interrupting the user in any way, the test silent install package is net framework 2.0 - I need that to install as if the user clicked on it himself.
I dont require any code (but this would be welcome), just point me in the right direction, thanks in advance!