I'm a complete noob when it comes to RPC and Named Pipes and anything related so forgive me first off.
I've just discovered PipeRPC here and I'm hoping maybe the author some someone 'in the know' can answer a few questions about it. (I'll need to make separate threads though, they are completely unrelated questions.)
What I would like to emulate is the PSEXEC behavior of being able to start a process (on the local machine, not a remote one FYI) under different user credentials - specifically the SYSTEM account (yet with the interactive flag, so you can see a GUI from the process on the Windows desktop in Vista+ ... e.g. psexec.exe -s -i process.exe
Essentially I just need a PSEXEC replacement to perform that task with no other functionality. I noted that PSEXEC creates a Windows service (psexecsvc) and communicates with it via Named Pipes. That led me to wonder about PipeRPC...
I have the ability to create a Windows service, no problem - however when creating the service under the SYSTEM account (interactively) and having it display a GUI or launch any other child process to display a GUI, on Vista+ due to Interactive Services Detection it will make you first click on a message box telling you that an app incompatible with this version of Windows is requesting your attention and going to the 'secure desktop' to view/manipulate the GUI of the app running under the SYSTEM account. Somehow PSEXEC gets around that limitation when it's service launches the child process.
I suspect either somehow the PSEXECSVC is not installed interactively, yet it is able to launch child processes interactively somehow - or this has something to do with the Named Pipes bit of it.
Can anyone shed some light on A. what is going on with PSEXEC and B. is PipeRPC applicable to the situation and if so, can I get an example of the process of utilizing it for my needs - else does anyone have other suggestions to accomplish my goal?
I've just discovered PipeRPC here and I'm hoping maybe the author some someone 'in the know' can answer a few questions about it. (I'll need to make separate threads though, they are completely unrelated questions.)
What I would like to emulate is the PSEXEC behavior of being able to start a process (on the local machine, not a remote one FYI) under different user credentials - specifically the SYSTEM account (yet with the interactive flag, so you can see a GUI from the process on the Windows desktop in Vista+ ... e.g. psexec.exe -s -i process.exe
Essentially I just need a PSEXEC replacement to perform that task with no other functionality. I noted that PSEXEC creates a Windows service (psexecsvc) and communicates with it via Named Pipes. That led me to wonder about PipeRPC...
I have the ability to create a Windows service, no problem - however when creating the service under the SYSTEM account (interactively) and having it display a GUI or launch any other child process to display a GUI, on Vista+ due to Interactive Services Detection it will make you first click on a message box telling you that an app incompatible with this version of Windows is requesting your attention and going to the 'secure desktop' to view/manipulate the GUI of the app running under the SYSTEM account. Somehow PSEXEC gets around that limitation when it's service launches the child process.
I suspect either somehow the PSEXECSVC is not installed interactively, yet it is able to launch child processes interactively somehow - or this has something to do with the Named Pipes bit of it.
Can anyone shed some light on A. what is going on with PSEXEC and B. is PipeRPC applicable to the situation and if so, can I get an example of the process of utilizing it for my needs - else does anyone have other suggestions to accomplish my goal?