winsystraywrapper now has the option to hide the main host process window - it is the wrapped process's window that is important... the host process main window should be complete superfluous and not allowed to get in the way.  When running from a batch file the host process doesn't have a main window, so we need to get the parent process (cmd.exe)'s main window and hide that instead.  I've adjusted the Transport Manager's batch file to use this new system.  Finally I noticed how similar the variables I was storing to do with the wrapped, host and parent process were, so I encapsulated these in a class called CProcess.