WinDEX Windows-DosEXecute V 1.1 See Appendix for changes from V 1.0 to V 1.1. WinDEX will be distributed as SHAREWARE. Version 1.1 is still a preliminary BETA release distributed as FREEWARE. If you find this software useful, you may complete the registration form and send in $5 to receive the shareware release at no additional charge. WHAT IS IT? WinDEX is a Win3 application that allows any one of 6 standard DOS processes to be executed in the background with results of the execution reported in WinDEX. Two programs will be provided in the package - WINDEXM (manager) and WINDEXU (user). The programs are identical except that WINDEXU cannot change any options. This allows an "expert" to provide a "user" with a little utility that they can't mess up. (The preliminary release contains only WINDEXM.) WHY WinDEX? The author supervises a small Novell network. Some users had difficulty in re-directing printer output between local and network printers. The Windows control panel method of network printer management is neither quick nor easy. WinDEX lets me give these users a small application that let's them chose a printer and set capture options by just selecting a customized worded description. WinDEX Requirements: WinDEX runs under Windows V3.0. IT IS BEST SUITED FOR THE ENHANCED MODE OF WINDOWS. [Note: Version 1.1 adds a Standard mode selection to improve its execution in standard mode.] WinDEX requires the Visual Basic DLL ***NOT INCLUDED***. The file DBRUN100.DLL is available in the MSLANG forum of compuserve at no charge. WinDEX uses around 100K of memory. When executing a DOS shell command, additional memory is required. WinDEX comes with PIF files (WINDEX#.PIF) that can be used to minimize memory requirements. How it works: When WinDEX is run, it loads all the information that determines how it runs from the default data file (WINDEX.DFL) which must be located in the Windows program directory. If the file is not found, defaults can be entered or the sample defaults supplied with the program may be used. These defaults control the title of the window, as well as the description and execution of the choices displayed. When the user selects one of the 6 choices, a small window displays the option that will be performed. Each choice can optionally be setup to provide for user-input optional text. When the user clicks the Execute button, WinDEX launches the command in a minimized window with output (optionally) re-directed to a temporary file monitored by WinDEX. When the launched command completes, WinDEX displays the output from the command in a small, scrollable, editable window, and is ready for more action. The output can be moved to a larger, resizable window for easier viewing or editing. The larger Window supports cut, paste and copy to and from the Windows clipboard. The smaller window supports copy to the clipboard. INSTRUCTIONS: INSTALLATION: Copy the program EXE files to any directory of your choice. (Note, WINDEXM.EXE allows you to change options, WINDEXU.EXE does not; you do not have to place both programs on your system.) Copy the WINDEX.DFL defaults file to your Windows directory. Copy the .PIF file(s) to your Windows directory (or the directory where you normally keep .PIF files). Note - the WINDEX1.PIF file is used by the sample default applications; the other .PIF files are not needed unless you create a command that requires more than 128K memory. NOTE: The defaults provided with the program use WINDEX1.PIF, which provides 128K memory. If you have a large DOS environment overhead (the amount of available memory less free memory before starting windows), you may need to provide more memory. Edit the PIF settings to provide a larger memory allocation using the PIF editor that comes with Windows. Run WINDEXM or WINDEXU from the Windows file manager, program manager, or create a program item in a program manager group to run WINDEXM or WINDEXU. OPERATION: SET UP OF DEFAULTS (File - Defaults): It is essential that the default data be entered correctly for the proper operation of this application. Being able to enter the data gives the application tremendous flexibility, but requires some expertise. For this reason, a version of the program (WindexU) is provided that doesn't have a defaults screen - in this case the fixed pre-programmed options are available until a new defaults that you create with WinDEXM is placed in the Windows directory. The main defaults screen has two lines of fields for each of the 6 options in the main program: The OPTION DESCRIPTION is the text displayed for each selection in the main window. The OPTION COMMAND is the command executed for the selection. (Note - this is critical - more on this later.) The USER INP(ut) checkbox determines whether the main program will allow optional user input as part of the command. The red S box can be clicked on to open the parameters for optional user input. The OUTPUT checkbox determines whether WinDEX will attempt to redirect the command output into it's scrollable window. Either 386Enh mode or Standard Mode must be selected. When 386enh is selected, WinDEX will launch the command to run in the background. The Windows screen is not disturbed except for an additional, temporary icon. In Standard mode, when a command is launched, Windows switches to the command, which, if output is to be re-directed to WinDEX, produces a blank screen. When the command finishes, the WinDEX window re-appears. Note- the program will run with either setting no matter what Windows mode you are in, but if you select 386Enh mode and are running in standard mode, you must manually switch to the launched shell before the command can be executed since standard mode does not allow background DOS operations. The SAVE button saves the defaults. The CANCEL button returns to the WinDEX main screen without saving any changes. The EXIT button allows you to exit the defaults screen without saving the defaults, but using current settings for the current session. The TITLES... button brings up a screen that allows you to put your own titles in the main WinDEX window. The RESTORE button allows you to restore the defaults either to the last saved values, or to the pre-programmed sample defaults. Look over the pre-programmed default data to better understand how this works. As mentioned, the OPTION COMMAND as well as the USER INPUT data are critical to successful operation. The OPTION COMMAND must be a valid "Run"-type command. It must call a file with one of the following extensions: BAT COM EXE or PIF. While WinDEX can "launch" programs, it's intent is to run programs that require no operator intervention. When optional user input is allowed, these default fields are provided: Description before: The main program will display this text before the user editable input. Description after: The main program will display this text after the user editable input. Command before: The main program adds any text in this area to the command line BEFORE the user input options. Command after: The main program adds any text in this area to the command line AFTER the user input options. Default input: Any text here will appear in the user editable option text as a default. Space before: If checked, a space will be inserted after COMMAND BEFORE text before user input. Space after: If checked, a space will be inserted after the user input text (before any COMMAND AFTER text). Let's look at option 1 as supplied with the program - a DIR command allowing optional user input. The command line is: WINDEX1.PIF /c dir WINDEX1.PIF is provided with the program. It's paramaters are set to load COMMAND.COM (and assumes that COMMAND.COM is in the dos path environment) providing a 128K shell. The /c parameter is ESSENTIAL. It instructs the shell to execute one command and exit. This is followed by the DIR - directory command. If the /c is missing, the dos shell will produce an error and will not terminate normally --- in this case you must switch to the Dos Shell (shown as an icon matching the PIF file spec - WINDDEX1) and EXIT. The optional user input and output parameters are enabled. If you click on the red S net to User Inp(ut), the user input options screen is displayed: The description before - Select filespec - is displayed when this option is selected from the main screen. The DEFAULT OPTION parameter - *.* - presents the user with this as the default response to optional input. When the OUTPUT box is checked - as it is on this example - WinDEX adds >d:\xxx\~wdx.tmp to the end of the command when it is executed. (d:\xxx is windows directory). This re-directs DOS output from the command to a file which WinDEX monitors, loads, deletes and displays. The file, displayed in a scrollable window may be edited, as well as copied to the clipboard (Edit-Copy). Give it a try.... Experiment. Use common sense - don't create an entry that does a DEL *.*! Also see the appendix to this document for additional examples and ideas of what you can do with WinDEX. Other information: MAIN PROGRAM SCREEN: MENUS - FILE--- DEFAULTS - opens defaults window. EXIT - terminates program. EDIT--- COPY - copies marked data in the scrollable window into the clipboard. Only active when output is displayed in the window. HELP--- INFORMATION - brief help. Help will be enhanced in the next release. ABOUT - displays information about the program. BUTTONS: EXECUTE - executes the currently selected command option. DISPLAY - toggles the scrollable window between 3 display modes: selected command, last executed command, and last command output results. When output results mode is selected, the status box changes color, and may be clicked to open a larger, resizable window to view and edit the output results. RADIO BUTTONS: 6 mutually-exclusive buttons used to select the desired operation. If a button is selected that allows optional user input, the radio button area is temporarily replaced with the options screen: OPTIONS SCREEN (only appears if a radio button is selected that allows optional user input): Fixed descriptive text is show, with a text box for optional user input (with a default response if specified in defaults). The buttons on this screen are: OK - accepts optional input, restores radio button screen, and shows command to be executed in the scrollable window. CANCEL - de-selects current option and returns radio button screen. You may select EXECUTE directly from the options screen which launches the command with the currently entered user options. If an invalid command line is specified, one of several events may occur: WinDEX will not run the command, and displays an error message. WinDEX runs the command, but the application launched gets suspended until the user switches to the application. If this occurs, WinDEX will wait until either another WinDEX option is selected and executed, or the launched application terminates. If the user repeatedly executes a command that does not terminate, eventually system memory will be depleted requiring the user to switch to and complete the launched application(s). Launched applications will appear (briefly) as a WinDEX icon. If the application does not terminate, the icon will reamin. When WinDEX executes a command for which it is told to expect output, it "sleeps" and periodically checks for output. While "sleeping", it responds to mouse click events selecting other options. If EXECUTE is selected, warning messages appear indicating the last process has not completed or produced output. If you continue, WinDEX will abort monitoring for output from the last command. If the last command's shell has not terminated and has created, but not written to or closed the output file, WinDEX will continue to produce error messages until the user closes the launched command. RUNNING IN STANDARD MODE: If you run WinDEX in Windows standard mode, when you execute a command, it cannot run in the background. The command launched will appear as a highlighted icon. Double-click on the icon, which will allow the command to be executed; it will complete, and WinDEX becomes active showing the results, if any. ERROR HANDLING: Please report any errors headed with "VISUAL BASIC" to me at the address shown below. If valid commands and options are selected, no error messages should appear; error messages are generally related to invalid commands and can be avoided by modifying the defaults file. Your comments and suggestions regarding this software will be appreciated: Richard Gamberg 1108 Bay Front Road Milton, DE 19968 Compuserve Email - 72435,144 This is a beta release and is being offered as FREEWARE. However, if you find the software useful and would like to receive the first non-beta release at no charge, you may register the software. This software is offered as is and without warranty, and your use of software indicates your consent that the author shall not be liable for any damages resulting from use of such software. Name __________________________________________ Address _______________________________________ City __________________ State _______ Zip ___________ Phone # ______________________________ Disk size (3.5 or 5.25) ______________ Enclose this form with $5 payable to Richard Gamberg and mail to above address. EVEN IF YOU DON'T REGISTER, I'd appreciate your comments - email (Compuserve 72435,144), fax (302-678-8941) or mail (Richard Gamberg, 1108 Bay Front Road, Milton, DE 19968) your response: If you took the trouble to get this and don't like it or find it useful, I'd like to know.... Do you find WinDEX useful? _____________ What changes would you like to see? ____________________________ ________________________________________________________________ ________________________________________________________________ Describe any problems you experienced with WinDEX: ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ Check any items that you would like to see implemented in the next release: _____ User-customizable colors and fonts _____ Timed execution option - execute a command at a specified time. _____ Ability to print output results screen to Windows printer. _____ Multiple user-entered option fields. _____ Ability to perform optional validity check on user-entered options. _____ Ability to optionally switch focus to the executed command. _____ Multiple default sets - ability to have multiple sets of 6 commands toggled by user on main screen. And include below any ideas you have: _________________________________________________________________ _________________________________________________________________ _________________________________________________________________ Thanks. APPENDIX Note on PIF files provided with WinDEX: The advanced setting - Background Priority is increased from normal Windows defaults. If WinDEX is used to execute a command, and the user is waiting for results, this setting is desirable since it gives more time to the background DOS command. The Background option is checked - if you create or change a PIF file and do not have the background option checked for use with WinDEX, the command will not complete until you switch into the launched task. Ideas and samples for using WinDEX: Redirecting network-local printer output (used with Novell Netware 2.15C with the capture.exe file in the user's path): Description: Redirect LPT1 to NetLaser Command : windex1.pif /c capture l=1 q=printq_0 nff nb ti=30 Output box : Checked - expect output from command User Input : Not checked - no user input options When this command is executed, the results of the capture command, Device LPT1: re-routed to queue PRINTQ_0 on server SERVER is displayed in the output box. You may have a neat little (remember when programs were small) DOS utility.... like Norton's old FF.EXE (file find). WinDEX is able to launch this utility, with user input options, and display the results: Description: Norton File Finder Command : windex1.pif /c c:\ni\ff Output box : Checked - expect output from command User Input : Checked - allows optional user input User Input options: Description before: Enter filename to find Description after : (wildcards OK) Default option : *.bat (finds BAT files) other options not used. This entry could be made to check all drives by adding: Command after : /a Space after : checked (add a space between user input and command after) There are many ways you can use WinDEX --- here are some ideas: Delete files Display a fixed directory/subdirectory with fixed options Make a sub-directory Copy files DEFAULT PROGRAM SETTINGS: When WinDEX can't find it's default file, it will use pre- programmed options. You can also use these options by selecting the RESTORE...Program Defaults option. (1) - Show DOS Version Command : windex1.pif /c ver Output box : Checked - expect output User Input : Not checked - no user options (2) - Display TREE of drive Command : windex1.pif /c tree Output box : checked - expect output User Input : Checked User input options: NOTE: The last option included in the default file provided with WinDEX demonstrates its capability to launch applications. This entry runs the Windows Control Panel. Note when you execute this option, Control Panel is run minimized as an icon, which must be selected to appear on the screen. CHANGES MADE FROM VERSION 1.0 to 1.1: Added standard mode/enhanced mode selection. Version 1.0 would truncate output resulting from a command at 4096 characters. Version 1.1 supports output of to 31K while using less memory if the output is smaller than 4K. Version 1.1 will inform you if the output is truncated. Version 1.0 would act erratically and produce excessive error/information messages if a second command was executed while a first command was still processing or did not produce expected output. Version 1.1 changes the Execute button to a Cancel button while waiting for output. If the user presses the Cancel button, the option is given to continue without expecting output. If a new command is executed and output was produced in the meantime, a message is displayed allowing the user to either continue with the next command, or to view the output. One problem remains that I hope to correct in the next version: If Cancel is selected and a subsequent command executed when the first command is still processing (which will result in output later), and the user chooses to continue new execution, file allocation errors on the disk can occur. A chkdsk/f (done outside of Windows of course) will create a .CHK file with the 'lost' output of the first command. Version 1.0 did not always update the main screen based upon input in the defaults screen. This has been corrected. In version 1.0, if the defaults file was missing, or corrupted, the program didn't respond smoothly. In version 1.1, if this situation exists, the user is notified that program defaults are being restored. In version 1.0, if defaults were changed and then the Exit without save option was selected, the main screen did not always reflect the temporary options change. This is corrected in version 1.1