Close This Window

Please download official ILL logos here


For using on the web or on a screenFor printing in high resolutionWhite version, for dark backgrounds

Download PNG

Download AI

Download white PNG

Download JPG


Download white AI


The Computing for Science (CS) group supports ILL scientists, students and visitors in a number of activities including data analysis, instrument simulation and sample simulation.

Back to ILL Homepage
English French Deutsch 

All Software

PROP Program Opener

Bridging the gap between Unix and WINDOWS

James Burnley & Ron Ghosh - Institut Laue Langevin, 2004-2007




Prop is a utility for providing the environment for programs ported from Unix/Linux to work comfortably in a Windows environment. Programs from specific sets can be started by clicking on the name, and results viewed easily (in an editor) by clicking on the name in the file selection window. Prop provides easily tailorable environment variables which were created in the unix login procedures, and also simplifies directing output to standard WINDOWS printers.
Although originally intended for treating data from ILL experiments the program is quite general and other suites can easily make use of mechanisms for managing environment variables.



  • Quick access to commonly used programs
  • Easily customizable for specific program sets
  • Establishes a full set of environment variables, and enables editing/additions
  • Provides simple means of examining and printing results
  • Can be switched easily from one program set to another
  • Initiates a graphical environment for PGPLOT programs


ILL Graphics are presented using PGPLOT from Tim Pearson, employing a Windows server program by Tauguhiro Tamaribuch which includes the ability to print directly to a Windows printer.

The program is a Tk/Tcl script and is packaged for easy installation together with wish and a set of libraries including PGPLOT for MinGW and Visual Fortran.

PROP - Online Help

Current version Details:

  • Version 2.4
  • Released June 2013
  • Expect Version: 5.21

The script of prop.tcl has been modified to improve resilience of the program and a new installer mechanism has been introduced. The latter uses the Microsoft msiexec standard installer.  The new version is installed in "Program Files" as other programs. It is removed using the standard add/remove software control in "START/Settings".  This version is still compatible with existing stored job profiles.

Recently added features
Batch filenames starting with "x" (or "click") are treated as tcl scripts and are run without a console window. Other batch filenames initiate a console dialogue window which is deleted on completion.
Page updated June 2013 (R.E. Ghosh)

To check for updates and download the most recent version of Prop please see

  • Pman


Prop - Program Opener "A bridge from Unix/Linux to Windows"


James Burnley & Ron Ghosh - Institut Laue Langevin, 2004-2007

Prop is a utility for providing the environment for programs ported from Unix/Linux to work comfortably in a Windows environment. Prop provides easily tailorable environment variables which were provided by the non-PC login procedures, and also simplifies directing output to standard WINDOWS printers. Prop enables you to group together specific sets of commonly used programs in a single window ready for launching. Prop also offers quick access to view data and output files.

Although originally intended for treating data from ILL experiments the program is quite general and other suites can easily make use of mechanisms for managing environment variables.


  • Quick access to comonly used programs
  • Easily customizable for specific program sets
  • Establishes a full set of environment variables, and enables editing/additions
  • Provides simple means of examining and printing results
  • Can be switched easily from one program set to another
  • Initiates a graphical environment for PGPLOT programs

Version Details:

  • Version 2.3
  • Released June 2007
  • Expect Version: 5.21

To check for updates and download the most recent version of Prop please consult the following URL's:

Unix filenames do not usually include spaces. While Prop will master a wide range of pathnames, to avoid problems with ex-Unix programs it is recommended that you avoid using spaces in your directory names, and do not use excessively long filenames. Prop uses forward slash directory path separators internally, and usually converts backslashes automatically. Using the directory browser for the Work, Raw data, and Program directories ensures that Prop will use the correct form for these root path names.

To top

1. Prop - Creating a new project

Before you can start using Prop you must create a new project. The project conserves tailoring information about Prop and program control preferences. The first time Prop is loaded it will automatically display the Project window, if this is the case proceed to step 2 below.


Load the Project window by clicking File > Current/New Project The default project will be offered as a template.


Enter a name for the project in the box labelled Project Name


Specify your working directory in the box labelled Work Directory, if you are unsure of its location use the Browse button to locate a specific folder.


Repeat the above step for the two other directories locating Raw Data and Programs. The Raw data directory should where your raw instrument data is stored; the program directory is the location of the programs you wish to use with Prop. All should be placed in a single folder and not in subdirectories.


Select the instrument you will be using with your set of programs. This name is used by a number of programs in checking data access, and can create confusion if not correct.


Click OK to create the project


By default Prop will create a program list by adding any programs contained in the program directory, eliminating any specified in the optional exclusion file. You can change the way Prop selects programs using the Preferences menu alternatively you can proceed to configure your program list manually.

To top

The instrument name is used to create coresponding environment variables; depending on the instrument chosen Prop sets the variables accordingly, i.e. SAS for small angle scattering instruments, DIF for diffraction instruments etc.

Depending on the programs you have in your program directory and the ones listed in the exclusion file, Prop will look something similar to the image below.

To top

2. Configuring the program list

By default Prop automatically creates a list of programs based on what it finds in the program directory. You can manually specify which programs are displayed in the program list by using the Configure Programs Window which is accessed using Options >  Configure Programs. The Program window consists of two lists, one is the program list currently Selected; unselected programs are placed in the Programs Found list. If you are using the default settings then the Programs found list will be empty as Prop will have already added all available programs to the program list.

To add or remove programs from a particular list simply select the desired program and then click the relevant button (add/remove) alternatively you can double click the desired program. The add/remove all buttons can be used to transfer quickly the contents of one list to another.

When you are happy with your selection please click on the OK button to save your results; hitting cancel will invalidate any changes you have made. By making changes to the program list you will also switch prop from automatic selection mode (if activated). To allow prop to select programs automatically again use the Preferences menu.
This feature allows a project control file to be constructed with a limited subset of programs, hiding others, for example, for teaching purposes.


Batch Files


Any DOS-batch files found in the program directory are included in the list of executable files. Files starting with the letter x or click are assumed to be GUI programs using wish/expect and are run without a DOS console window.

To top

3. Accessing the Work directory

As well as accessing your list of defined programs from within Prop, you can also access your current working directory. To do this click on the WORK tab at the bottom of the main window. By default Prop displays all files. You can filter the selection using the Preferences window, i.e. you can get prop to display only listing files by setting the preference to *.lis


To return to the Program list simply click on the adjacent PROGRAMS tab.


Double clicking on a file in the work directory tab displays the file using WINDOWS notepad. You can then use notepad's print option to write output to a WINDOWS printer.

To top

4. Preferences

The preferences screen controls how Prop operates.

Program Selection:
Determines how Prop selects the programs it is to display. By default this is set to auto, i.e. It will automatically display all programs, minus excluded files if using exclusion files, see next topic. Changing it to manual allows you to define the program list implicitly adding and removing the ones you desire. NOTE; The program selection will be automatically set to manual if you use the Option > Configure Programs menu.

Use Exclusion Files:
Instructs Prop to exclude certain programs from being listed. This uses based on a file named containing a list of program names, stored in the same program directory. The default setting is to use exclusion files, for more information on exclusion files, see Advanced.

Work Directory:
Here you can set the type of file you wish to be displayed in the work directory tab, the default is *.* but you can change this for any standard query, e.g. *.lis for all listing files.

Resets the default values, saves the results and closes the window.

To top

5. Editing a project

You can edit your project using the File > Current/New Project menu , or by right clicking in the list of programs window.

To top

6. Loading a project

There are two ways to load a previously saved project. The first is using the load dialog, shown below. This is accessed from the file menu or by right clicking anywhere within the project window. From the load dialog you specify the name of the project file, excluding the .pro extension, and it's location. Note: this can be done using the Browse button. Double-clicking on a project file in the browser sets both name and directory. Click OK when done and provided both the location and file exists the project will be loaded.

Prop keeps a record of the last 8 projects used. They are listed under the Recent Projects option of the file menu. Simply click on a project to load it.

To top

7. File Browser

The file browser may be used whenever you need to specify directory names. It consists of two lists, directories on the left and files on the right contained in the directory named in the box title. You can navigate through directories by double clicking them or by using the Up button to go up a directory. You can also use the Goto button, to go to a specific directory that you specify in the adjacent text box. This is used to change disk volumes, e.g. by typing d:/ in the entry box and clicking the goto button.


If a directory does not exist you can use the create button to create the name. The directory is created within the directory you are currently browsing.

By default when you first open the file browser the current directory will always be your specified work directory.

When you have browsed to the directory you wish to select hit Ok to copy that directory name to the entry box you are working with, hitting cancel leaves its original value.

When browsing a directory for project files, double-clicking on a specific project file returns this and also sets the directory.


To top

8. Advanced Tools

Built into Prop are a number of small features designed for advanced or administrator usage.

Environment Variables

Here you can view all the currently assigned environment variables, you can also add your own or edit those already stored.

WARNING! Adding or editing environment variables may affect how Prop and programs function. The default settings can be restored by closing and restarting Prop.


On restarting, Prop will use the system environment variables plus any set in the file (see below). Modified environment settings are NOT saved in the project. Permanent changes should be added to the file in the program directory.




The instrument name, if set, is used to create a prefix for the following variables. The group name depends on the type of instrument, at present DIF, INL, TAS or SAS. The match between instrument name and group is in matching length lists at the start of the main routine of prop.tcl. Three environment variables are created automatically by Prop.


Examples from SANS Suite, e.g. D22, matched prefix SAS. The corresponding environment variables created are:


          SAS_DIR              set to current program directory
SAS_INSTRUMENT D22 instrument name
SAS_DATA_PATH set to raw data directory


When programs are run they start in the current work directory. These variables greatly simplify access to WINDOWS directories with long names and embedded spaces, but for data access it should be remembered that many ex-unix programs are not built expecting names greater than 50-80 characters in total length.

Certain programs require additional environment variables to function correctly. These can be added manually using the environment variables dialog (above) but in order to conserve them every time prop is run you should define them in a file named which you must create in your defined program directory. Prop treats data in this file as a list of pairs of variable names and values separated by a space, for example to add two environment variables envar1 and envar2 with the values enval1 enval2 you would use:
envar1 enval1 envar2 enval2
Example from SANS suite

        SAS_DECOMPRESS zcat
SAS_CHECK limited

These indicate that the decompress command for data is zcat, and that the information concerning mismatches between data and treatment programs should not be written out after the first few occurrences.

Exclusion file (
By creating a file named in your program directory you can name programs you wish Prop to ignore. The file should consist of a string of program names for exclusion separated by a space. For example to exclude the programs oldversion.exe and notused.bat you would use: 

oldversion.exe notused.bat
Example from SANS Suite


These programs typically take command line arguments, and are utilities called by other members of the suite.

Shell Window:
The shell window allows you to execute commands using the environment currently set by Prop, it can be used simply as a command window to launch programs and carry out simple tasks. For example, typing cmd brings up a DOS command window, retaining all the environment variables set by Prop, and starting in the current work directory

Prop uses three utilities, psta, pstb and pstn to spawn subprocesses inheriting the Prop environment. These use the WINDOWS CreateProcess directive.

Notepad is the default editor called by Prop. An alternative may be substituted, but either it must be in the default PATH, or a fully specified filename must be written into prop.tcl.

To top

9. Tips and advice

Saving size and location of Graphics window

Once the graphics window has been resized and relocated on the screen these parameters may be saved as the defaults for the future using the Starting options in the help menu of this window.

  1. Click on the Reset button; this fills in the default filename
  2. Click on the Current button; this fills in the current coordinates
  3. Click on the OK button to save these values.

Right Mouse Button Shortcut
Clicking with the right mouse button anywhere within Prop's main window gives quick access to the options found on the file menu.

Load Project

Use of the file browser in Load Projects simplifies finding and re-using existing project files (*.pro) Double clicking on such a file will copy the project name and directory ito the Load Project input boxes, ready to OK.

To top

10. Frequently asked questions

Q. When I load Prop I get a list of programs I didn't previously specify
A. Prop automatically loads the last configuration file used. This filename is stored in :
C:\Documents and Settings\USERNAME\Application Data\Prop\
If someone else has used Prop since you last used it, it is possible that their configuration file is being loaded, hence their list of programs is shown. Look in the File > Recent Projects menu or simply reload your project using the File > Load Project menu instead and browsing for your project file.


Q. Even though I have previously created a project, Prop prompts me to make a new one.
A. Prop uses its startup file to locate the location of the last known configuration file. Prop will prompt for a new project if either the startup file doesn't exist or it points to a non-existent configuration file. You can fix the problem by re-identifying your project. Prop will recreate and store the configuration files path in the startup path.

Q. Why are some of my programs not displayed in the program list?
A. This is most likely because Prop is set to use exclusion files. An exclusion file ( is located in the program directory telling Prop to ignore certain programs. To disable this feature either update/remove the file or disable exclsuion files in the Preferences window. Alternatively Prop may not find your program because it is in a subdirectory of the program directory. Ensure that all your programs are listed in the program directory named in the project.

Q. How do I know if I am using the most recent version of Prop?
A. By visiting you can check and download the latest version of Prop, your current version number can be found in the Help > About window

Q. Why do I not see my files when I click the work directory tab?
A. By default Prop lists all file types. If, in Preferences the selection has been changed from *.* only a subset will be displayed. If this doesn't correspond to your file, you should change this modified preference setting.

For any other questions please contact ron(at) or consult the Prop website.

To top