Windows NT Utilities

----------------------------------------------------------------------------

* Swapping CapsLock and Left-Control.

     Many people coming from the Unix world, particularly heavy Emacs users,
     are unhappy with the placement of CapsLock and Control on PC keyboards.
     I have created three keyboard layout files for Windows NT. For Unix X
     users, look here.
        * A US English layout with CapsLock changed to be Control
        * A US English layout with CapsLock and Control swapped.
        * A US Dvorak layout with CapsLock change to be Control
     To use one, pick up the U.S. keyboard distribution
   * swapcapslock.zip and follow the instructions for NT 4.0 or the
     instructions for NT 3.5.
   * For a U.K. version of the DLL that was provided by Charles Reindorf,
     get kbduksw1.dll.
   * For doing this on Windows 95, check the utility swap95capslock.zip
     created by Mark Russinovich.

     If you are looking for a CapsLock switcher that will work for any
     keyboard layouts, check the work done by Mark Russinovich and Bryce
     Cogswell at www.ntinternals.com. The site has some very useful
     utilities including a CapsLock switcher.

----------------------------------------------------------------------------

* Expect for Windows NT

----------------------------------------------------------------------------

* SSH and SCP for Windows NT (command line only version)

     I've done a port of ssh and scp to Windows NT. SSH is the Secure Shell,
     and it basically lets you do secure logins to Unix machines. I created
     is so that I could securely use remote CVS source code repositories.
     This also required a small patch to cvs-1.9.10. Here is a binary
     version of the patched cvs. If you want to use ssh with cvs, you'll
     need to set the CVS_RSH environment variable to the pathname of
     ssh.exe.

     The FAQ has lots more information about ssh. Since I live in the United
     States, I am a munitions dealer if I export this software. If you live
     outside the U.S., I can only provide a patch to the source code since
     this includes no cryptographic code. The patch is against the
     ssh-1.2.14 distribution. However, Jonathan Chen kindly applied my patch
     to the distribution and created binaries, and you can find the binaries
     at ssh-1.2.14-win32bin.zip.

     This version is not a full terminal. It allows you to run commands such
     as ssh remote_machine -l chaffee ls, and it even lets you log into
     other machines interactively, but it gives you only dumb terminal
     capabilities.

     You'll need to create a c:\ssh\etc directory to keep your ssh_config,
     ssh_host_key, and ssh_host_key.pub in. You need to generate the keys on
     your Unix box with ssh-keygen as I haven't fixed it yet. It does get
     compiled, but it doesn't work. Next, make sure your HOME environment
     variable is set. This can be done via the Control Panel->System.
     Finally, create a %HOME%\.ssh directory like you would under Unix. Put
     your identity and identity.pub files that and whatever other ones you
     might use. With that, things should work. If you make a copy of ssh.exe
     to sshc.exe, it will automatically run with compression on. I find this
     useful when running with cvs.

----------------------------------------------------------------------------

* SU command for Windows NT

Binary   Source Code   README

     For people coming from the Unix world, this command needs no
     explanation. For non-Unix people, su allows you to run a shell as a
     different user on the same desktop that you are logged in. This can be
     very useful if you need to do something as Administrator and you don't
     want to logout. Credit for this utility goes to David Wihl and Steffen
     Krause.

----------------------------------------------------------------------------

DDK Work Source Code (Utilities and Drivers)

skel.tar.gz
     This is a PCI skeleton driver that can map PCI memory into user space.
skel_pci_dma.tar.gz
     This is a PCI skeleton driver that can map PCI memory into user space.
     It also has code to do busmaster DMA transfers.
loaddrv.tar.gz
     This is Paula Thomlinson's utility from the May 95 issue of Windows/DOS
     magazine. It is used to dynamically load and unload NT device drivers.
moveatboot.tar.gz
     A utilty that moves files on reboot. This can be helpful if you need to
     replace a system DLL that is normally always in use. Use with the -f
     option to forcibly overwrite an existing file. All rename operations
     should end up in the registry under
     HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\
     FileRenameOperations in case you need to stop a rename from occurring.
----------------------------------------------------------------------------
Back to Gordon's Home Page.