Merged utility to launch "unkillable" processes and to repurpose windows clients
Guy Leech
I am currently an architect at AppSense, having been responsible for the initial idea and implementation of their very first product, namely Application Manager, and have been working with Citrix products at a technical level since 1995.
My background is in development, first on Unix then Windows, as well as consultancy and even some pre-sales and customer support thrown in.
Any spare time I get these days seems to be spent "playing" with technology.
I was proud to receive the VMware vExpert award in 2009.
Posted Thursday, October 08, 2009 by Guy Leech | 4 Comments | 1939 views
Tags:
Tools and Scripts |
All Articles
This is an update to two previous utilities that have now been merged - "Launching an unkillable process" and "Replacement shell for repurposing a Windows client" - and also adds a few new features. Note that it also allows launching of console based programs without them showing a window at all.
Please find below a link to download the new version of the utility to launch (almost) unkillable processes (http://www.insidetheregistry.com/content/viewarticle.aspx?articleid=1711).
The main additions to this new version are:
1) Addition of a –s option to run in “shell” mode so that when the launched process exits, it is launched again, and again, and so on. This rolls the functionality of the previously released “shelly” utility (http://www.insidetheregistry.com/content/viewarticle.aspx?articleid=1722) for repurposing windows machines by using this utility as the shell to launch something like the VMware View, Citrix ICA or Microsoft RDP clients, into this utility. For example:
seclaunch.exe –s *"C:\Program Files\VMware\VMware View\Client\bin\wswc.exe"
2) Ability to specify the desktop that the launched process runs on. Useful if you run a multi-desktop tool like the great SysInternals/Microsoft Desktops utility (http://technet.microsoft.com/en-us/sysinternals/cc817881.aspx). To find the names of the desktops, specify just the –e argument which will enumerate all of the desktops and display a list of them in a message box. I added this after explorer crashed on one of my desktops and I couldn’t launch a new explorer process on that desktop as task manager opened new processes on the default desktop, not the one with the missing explorer. I didn’t actually need explorer launching securely so I used the –i option to launch insecurely, as in it doesn’t alter the ACL for the launched process. For example:
seclaunch.exe –i –o “Sysinternals desktop 3” *explorer.exe
3) Ability to specify the working directory for the launched application via the –f option.
4) Note also that there is the -n option which can be used to hide the window for launched processes which is useful for scripts you need to run silently via cmd.exe or cscript.exe for instance.
As with all my recent tools, you must use the latest, at the time of posting, Visual C++ 2005 SP1 runtime, released 28/07/09 - http://www.microsoft.com/downloads/details.aspx?FamilyID=766a6af7-ec73-40ff-b072-9112bab119c2
Disclaimer
This utility is provided as-is without any warranty implied or otherwise and is used at your own risk. The author and the owners of the web site hosting it cannot be held responsible for loss or damage caused by the use of the utility.
Download here – http://www.insidetheregistry.com/content/authors/user177/file/seclaunch.zip
Comments
Guest
on Saturday, October 24, 2009 says
Excellent!
Guest
on Wednesday, May 05, 2010 says
I have been trying to get this program to work, I installed the VC++ 2005 SP1 Runtime and I still get the error "The system cannot execute the specified program". Is there something else I need to do to make this work?
Guy Leech
on Monday, May 10, 2010 says
Have you installed the "ATL" badged version of the VC++ 2005 SP1 (32 bit), which I give the link to above? Unfortunately, because of the patch level of my development system, my utilities require this, specific, version. Check the event log for side by side errors or if that yields nothing, maybe look at using Process Monitor to figure out what it is missing. What OS are you on - I've run it on XP, 2003 (x86 & x64), Vista x86 and Win7 x64.
Guest
on Friday, August 06, 2010 says
Nice utility. Exactly what I'm after for repurposing existing XP workstations into RDP clients. Perhaps you could help me on an issue? Running on XP, using any automated method I can think of, it always launches the application (in this case mstsc.exe) in a hidden window. Once the TS logon times out, it always launches visible. This means that there's a minute or so of waiting until the terminal services logon dialog times out before it becomes visible for the user to use. I've tried launching using an entry in the Run key, a shortcut in Startup, and even changing the shell from explorer.exe to seclaunch. The only way it works first time is to manually run it from a command prompt. Any suggestions?