S
Stu Carnie
Hi all,
I have been working on some 'extensions' to the existing Windows NT
command shell / console API (specifically 2000, XP and 2003).
It is different from replacement shells, like Take Command or WinOne,
in that it will actually augment the existing shell (and STDIN / OUT /
ERR) by 'injecting' itself into the console process.
My motive for extending the shell has been
1. Replacing the very limited editing features of the existing console
input APIs in Win32.
2. Not wanting to engineer another shell
3. Wanting all existing console apps to inherit this enhanced editing
functionality, such as FTP, NETSH, TELNET, or the many others out
there.
4. Persisting the history across sessions!
5. Providing standard windows editing features like CUT (SHIFT-DEL) /
COPY (CTRL-INS) / PASTE (SHIFT-INS)
Let me explain further.
A number of you are aware of the existing shell functions like F7 to
bring up the history list, F8 to search the history list and tab-key
directory / file completion. This not only works with cmd.exe, but
other command line tools like FTP, NETSH and TELNET. In fact any
console app that uses the ReadConsole kernel32 API has this
functionality.
You will even see this in .Net if you use the Console.ReadLine.
I have been writing a DLL, that when injected into a CUI (console)
process, replaces certain kernel32 APIs to enhance their current
features, such as the ReadConsole API.
I already have a working prototype that is stable and successfully
injects itself into the console process. It will also attach to all
spawned CUI process from this process.
I'm curious how many would be interested in such an enhancement. I'm
not planning on charging for it, but perhaps 'donation ware'..
V1.0 will be a public version, but will not support user enhancements.
V2.0 is planned to allow 3rd parties to customize their own shortcuts,
allow context sensitive user defined command completion (like zsh),
..Net plugins and many others.
This is not like MONAD / msh. msh is a new command shell, whereas
cmdEX sits under the shell to enhance the interactivity.
I will be creating a home page for it soon and providing a forum for
discussion in the next 2 to 3 weeks, and I will post back when it is
available.
Cheers,
Stu
I have been working on some 'extensions' to the existing Windows NT
command shell / console API (specifically 2000, XP and 2003).
It is different from replacement shells, like Take Command or WinOne,
in that it will actually augment the existing shell (and STDIN / OUT /
ERR) by 'injecting' itself into the console process.
My motive for extending the shell has been
1. Replacing the very limited editing features of the existing console
input APIs in Win32.
2. Not wanting to engineer another shell
3. Wanting all existing console apps to inherit this enhanced editing
functionality, such as FTP, NETSH, TELNET, or the many others out
there.
4. Persisting the history across sessions!
5. Providing standard windows editing features like CUT (SHIFT-DEL) /
COPY (CTRL-INS) / PASTE (SHIFT-INS)
Let me explain further.
A number of you are aware of the existing shell functions like F7 to
bring up the history list, F8 to search the history list and tab-key
directory / file completion. This not only works with cmd.exe, but
other command line tools like FTP, NETSH and TELNET. In fact any
console app that uses the ReadConsole kernel32 API has this
functionality.
You will even see this in .Net if you use the Console.ReadLine.
I have been writing a DLL, that when injected into a CUI (console)
process, replaces certain kernel32 APIs to enhance their current
features, such as the ReadConsole API.
I already have a working prototype that is stable and successfully
injects itself into the console process. It will also attach to all
spawned CUI process from this process.
I'm curious how many would be interested in such an enhancement. I'm
not planning on charging for it, but perhaps 'donation ware'..
V1.0 will be a public version, but will not support user enhancements.
V2.0 is planned to allow 3rd parties to customize their own shortcuts,
allow context sensitive user defined command completion (like zsh),
..Net plugins and many others.
This is not like MONAD / msh. msh is a new command shell, whereas
cmdEX sits under the shell to enhance the interactivity.
I will be creating a home page for it soon and providing a forum for
discussion in the next 2 to 3 weeks, and I will post back when it is
available.
Cheers,
Stu