A real FRQ (Frequently Recurring Question) is about sending key strokes to Windows GUI style programs. I'm sorry to tell you it cannot be done in batch language itself!
But do not despair yet, Jonathan Bennett's AutoIt and Chris Mallett's AutoHotkey to the rescue...
Next in the FRQ charts is the question "is it possible to hide the batch file's window?" Ritchie Lawrence's commandline window utility for manipulating windows, CMDOW, makes it possible.
I don't know in which category this utility would fit, but let's say it will give you command line control over your entire Windows system: Comandiux or CAX. More free tools at Scot.sk
Another hard-to-categorize tool (Swiss army knife?) is NirCmd by Nir Sofer: it writes and deletes registry keys and values, writes values into INI files, dials to your internet account or connects to a VPN network, restarts Windows or shuts down the computer, creates shortcuts, changes the created/modified date of files, changes your display settings, turns off your monitor, opens the door of your CD-ROM drive, and more...
Frank Westlake's Miscellaneous Freeware for Windows or Windows NT, with amongst others TEE (both redirect and display standard output simultaneously), PASTE (nice complement to CLIP from the NT Resource Kit), RECYCLE (use the Recycle Bin instead of permanent deletion) and POPUP (display messages in a popup messagebox).
SysInternals's PsTools include (amongst others) PsList and PsKill, meant to list and kill processes on any PC in the NT network.
Extremely useful for killing noisy applications on locked PCs ;-)
Beyond Logic's Shutdown for NT/2000/XP has several useful features that Microsoft's own SHUTDOWN tools lack, like the option to prevent shutdown action occurring on logged-on computers giving your users the flexibly to run lengthy processes overnight without being disturbed
Gibson Research's Wizmo is a collection of tools integrated in a single package.
Among its functions are shutdown, reboot, hibernate and logoff.
Four batch file compilers:
BFC or Batch File Compiler by Brandon Dargo,
Bat2Exec, by Doug Boling,
BatLite, by Pieter A. Hintjens, and
Quick Batch File Compiler by Abyssmedia.com. (Be aware, that compilers may not understand all the magic you are performing in batch files. Use standard commands only, if possible, and forget about undocumented DOS features. BFC and QBFC offer both Win32 and DOS6 compilation and handle NT's extended command switches very well, the others are for "real" DOS only.)
Use ErrorLvl, by OzWoz Software, or SetErLev 1.0, by Jim Elliott, to test batch files that need to check on errorlevels.
John R. Souvestre's SLEEP can be used to wait for a relative or absolute time.
For those who do not want to spend a lot of time making their date or time dependent batch files language independent, there is ErrTime, by Phil Money, Advantig Engineering & Design.
Separate executables are available for DOS, OS/2, NT and Novell Netware (NLM).
ErrTime returns an errorlevel for hour, minute, day of week, year, etcetera, depending on the command line parameter specified. You'll have to add Y2K compliance to your batch files by yourself, though, since there aren't enough DOS error levels to make the year a four digit number.
Problems with XP assigning drive letters, that are in use by network drives, to USB drives?
Use USB Drive Letter Manager to fix them.
ResHack (RESource HACKer) is a great tool to extract bitmaps from executables and DLLs, remove menu entries, change button captions and much more...
RegShot, a tool that allows taking registry and file "snapshots" and comparing these.
Great for automating software installations. Do read the tips on the RegShot web page for better results!
Try Bulk Rename if you need to do some complex renaming
12noon.com has several great utilities available for free, like Resolution Changer (change display resolution from the command line) and MouseButtons (swap mouse buttons for left handed use, and back to right handed use again)