I know doing a GUI from a service is not recommended and not possible in newer OSes. What I'm trying to do is spawn a subprocess as a different user to handle the GUI. It works great on XP, but never displays the GUI on W7. As far as I understand it, this should be possible. I'm using the service UDF from this thread: This is a small portion of the code to show what I'm doing: Func _CheckReboot() If $REQUIRE_REBOOT = True AND (Not $LAST_REBOOT_PAUSE_TIME OR _Timer_Diff($LAST_REBOOT_PAUSE