Changes in Sept 20th 2012 Version

  1. Fix for "I-SCRIPT is crashing when used in autologin mode", thanks to Eduard.

  2. proxyintercept.dll is removed from the Proxy32 installation. It was an experimental 32-bit API hook in preparation to intercept console API usage in the child console process in attempt to hook winconsole applications into my terminal. I have abandoned the attempt as this hook behaves similar to a virus (injects my code into child process) and that would be looking suspicious even so my intentions are good. I decided to abandon such method as I did not want my software to behave suspiciously, so I lost the option to write full-fledged console wrapper. I have found another way to write wrapper for console applications, though it has less capabilities compare to the one that would be written with the use of injected console API hook.

  3. proxyhooklib.dll is removed from the Proxy32 installation. It was MS Windows local hook to intercept maximization of the window of external process when it is residing inside of my workspace. Window of external process cannot be in maximized state when it is residing inside of my workspace, so I had to intercept maximization and replace it by normal window state but with the size that would cover all internal part of the workspace. Now instead of intercepting maximization event I use periodic windows polling and that allowed me to get rid of the hook dll.

  4. I use the same new polling algorithm instead of trying to intercept "Activate" and "Destroy" events for the window of external process when it is residing inside of my workspace. That overall improved reliability of the "active" window selection.

  5. I have written and included into Proxy32 installation new console wrapper that is similar to proxycygterm.exe (but closed source). As proxycygterm.exe creates CYGWIN TTY internally and wraps it into STDIN/STDOUT/STDERR external interface, the same way new wrapper proxywinconsole.exe creates hidden MS Windows console and wraps it into STDIN/STDOUT/STDERR external interface (UTF-8 byte streams). It also has Ctrl-C handler on STDIN. Hidden console window has fixed 80 columns width. proxywinconsole.exe can be used the same way as proxycygterm.exe, but for windows command line applications (that cannot run without native MS Windows console window attached). Run new wrapper in SHELL-TERMINAL as follows (examples):

    Wrapper has handler to pass Ctrl-C (ASCII 03) from its STDIN to wrapped child process (cmd or powershell), so Ctrl-C can be used to interrupt long powershell and cmd printouts. Wrapper also supports UTF8 on STDIN/STDOUT streams to use Unicode for non-English languages support. Wrapper does not support console color attributes.

    This wrapper is intended to attract MS Windows sysadmins who use MS Windows powershell, cmd, net, reg and other MS Windows command line tools. Another obvious benefit of this wrapper is its ability to run cmd or powershell from CYGWIN bash command line and from bash scripts. In particular, before it was impossible to connect to powershell or cmd via CYGWIN OpenSSH ssh server. Now it is working. First, one need to connect to CYGWIN OpenSSH sshd server on PC. This will provide bash prompt. Then simply start my wrapper from the bash prompt to start working with cmd/powershell via CYGWIN OpenSSH sshd server on PC.

    Google search for "access powershell via CYGWIN OpenSSH server" returns a lot of people's frustration because of inability to run powershell via CYGWIN OpenSSH sshd server on PC.

    Current Limitations of the proxywinconsole.exe Wrapper:

  6. For international users: Proxy32 built-in terminal now has support for international keyboard/IME input. It is still experimental and does not yet support surrogate pairs (aka Unicode Supplemental Plane). Normally, Proxy32 terminal translates printable key-presses directly into ASCII chars (bypassing MS Windows keyboard layouts and languages), but if user checks Terminal_Spare_Setting_08, terminal will use MS Windows translation of printable key-presses and then translate them into UTF8 and send them to remote end.

  7. Terminology changes in Proxy32 User Interface: Renaming to make it more clear:

  8. Directories created by Proxy32.exe now have permissions for anyone to access. This should simplify some situations, for example, when Proxy32 installer or normal mode runs with "As Administrator" privileges and then later user tries to uninstall (remove) Proxy32 installation using Windows Explorer that runs without "As Administrator" privileges.