What is RunHere: RunHere is a small utility that can be configured to start an application or set of applications and then position and size the application windows. Any number of application sets can be configured and any number of applications can be in each set. Configuring RunHere: To configure RunHere you need to create a RUNHERE.INI file in your Windows directory. Each section in the INI file corresponds to an application set. The entries in each section tell RunHere how many applications are in the set, the path to the application to run, the title of the application window and where to position the application window and how large to make it. For example one of the sections that I use looks like: [Network] number=3 delay=5 App1=c:\netmanag\custom.exe Title1="Custom - C:\NETMANAG\TCPIP.CFG" Xpos1=0 Width1=500 Ypos1=0 Height1=200 OnlyOne1=1 App2=c:\netmanag\ping.exe Title2="Ping - PV" Xpos2=161 Width2=480 Ypos2=0 Height2=200 OnlyOne2=0 App3=c:\netmanag\telnet.exe Title3="Telnet - TELNET.CFG" Xpos3=0 Width3=640 Ypos3=55 Height3=388 Note that there are 7 basic entry names, App, Title, Xpos, Width, Ypos, Height and OnlyOne and that a number, corresponding to the application number within the set, is appended to these names. The title specified must be the exact title that will appear in the application window. This is how RunHere identifies the window. If the title is wrong RunHere will put up a message box saying that it could not find the application window. The Xpos and Ypos correspond to the position of the upper left corner of the application window. If OnlyOne is not zero then RunHere will check to see if a window with the corresponding title has already been created. If so it will not launch the application but it will resize and position the existing window. If there is no OnlyEntry entry it is assumed to be 0. There are 2 entry names that do not have an application number appended to them. The number entry indicates how many applications there are in the set. The delay entry specifies an approximate time in seconds between when the last application in the set is launched and the first application in the set is resized and positioned (RUNHERE launches all the applications first and then goes back and resizes and positions them.) If no delay is given 1 second is used. A delay is sometimes necessary if the application being launched takes too long to gets its window created. In that happens you will see a message indicating that the window could not be found but you will also see the window. You can double check that the title is specified correctly by setting OnlyOne and then running RUNHERE again. If it correctly resizes and positions the window you know you need a delay value. To take the guess work out of determining the position and size of the application windows you can use the Winfo application which is included with RunHere. The last part of this document includes information on running Winfo. Running RunHere: RunHere may be started via any of the ways that Windows allows an application to be run. It requires 1 argument, the section name corresponding to the application set. If the argument is not supplied or the argument does not correspond to a section name RunHere will display a message box with an error message. Once RunHere has started all the applications and position and size them it will terminate. I tend to add the RunHere icon to the same program groups that the applications that will be run are in. I then change the properties of the icon so that the "Command Line" entry has the section name following the RUNHERE.EXE path. I also change the "Description" entry so that it lists the applications that will be run. If the application set includes only 1 application then I will also change the icon so that its the same as the application to be run and then add a "*" to the description so I can tell the RunHere and original applications apart. Registering RunHere: When you run RunHere you will notice that before terminating it will display an annoying dialogue box asking you to register your copy of RunHere. The copy of RunHere that you have is the complete working version, no functionality has been removed or restrictions in its use added. This allows you to make a complete evaluation of the product. If you decide that RunHere is a product that you want to routinely use then please register your copy. When you register you will be sent a registration number which when combined with your name will indicate to RunHere that the copy has been registered and the dialogue box will not be displayed. Instructions for adding your name and registration number to the RUNHERE.INI file will be provided when you register. To register send the name that you want RunHere registered with and $10.00 to: Noah Davids 6115 East Surrey Ave. Scottsdale, AZ 85254 Winfo application: Winfo is a small application that can provide you with the title and position of any window on the screen. When you run Winfo it appears as an icon at the bottom of the screen. When you click on the icon the system menu appears. The option "Start" has been added to the bottom of the system menu. When you click on "Start" Winfo captures the mouse cursor and changes it into a magnifying glass. When you next click the mouse the title, position, and size of the window that you clicked in will be displayed in a message box. Since many control areas (buttons, scroll boxes, etc.) are really windows be careful where you click or you will get the information for the control and not for the application window. I have found that its a good idea to click on the title bar of the application window. When you click on the OK button in the message box the cursor will change back to an arrow. To get the info on another window you will need to click on the Start option again. Distribution: The files RUNHERE.EXE, WINFO.EXE, and RUNHERE.TXT may be freely distributed as long as all three files are distributed together and as long as the distributor clearly indicates that any charges are for the distribution process itself (connect time, media costs, shipping, etc.) and not for the product. Version Changes: 1.1 Minor changes in WINFO.EXE to make the position lables match what the RUNHERE.INI file requires. Also the title is now displayed in brackets to make leading and trailing spaces in the title obvious. 1.2 Minor change in the RUNHERE dialog box and documentation to reflect my new address. 1.3 Added processing for the OnlyOne entry. 1.4 Added code to restore an icon before trying to position and size the window. 1.5 Added code to bring the windows to the top and activate them. This solves the problem of resizing and moving a window but having it remain covered by another window. Also corrected the version number written to the INI file. Version 1.4 writes version 1.3. 1.6 Added the delay entry.