<< Click to Display Table of Contents >> Navigation: 3. Script Language > Execute-Commands > Execution Commands |
MiniRobotLanguage (MRL)
EXX. Command
Execute Extended
Intention
Start a program.
EXX. will start a program asynchronous. It will not wait until the program has ended.
EXX. uses an internal "Wait for Input Idle" (WII.) to wait for a window to appear.
For this, it uses the default WII.-timeout (taken from the last WII.-call).
Therefore EXX. may deliver a window handle on TOS for some programs, or may just deliver a zero. This depends on the started software as well as other factors, like the WII.-timeout. If you need a handle to be delivered on stack, prefer EXH.
Example for this:
CAW.RegEdit_RegEdit|Reg&AND:Edit
EXX.regedit
STS.DUMP
MBX.Ready
This example will deliver the handle of the RegEdit-Window on the stack. As long, as RegEdit has not been started before, and the window was there before. You can use CAW. to prevent that case. See example.
EXX. will deliver #pid# but will set #tid# to zero.
You can supply a second, numerical parameter P2 that may influence the size of the started application window, if the started application supports that. This way you can start an application minimized. Like this:
' Will start the Furmark minimized.
EXX.?progs\Geeks3D\Benchmarks\FurMark_1.9.1\FurMark.exe|2
If you add +100 to that second parameter, then EXX. will NOT even try to wait for the window of the started application to appear and therefore will also not deliver a window handle on TOS.
Syntax
EXX.P1[|P2]
Parameter Explanation
P1 - Document-Filename (can be a hyperlink)
P2 - (optional) Window Size Parameter
When you add +100 to the window size, the command will not wait for the window to appear and yet not be able to deliver the window handle.
You can use the following window-size parameters
0 - HIDE - Hides the window and activates another window.
1 - SHOW NORMAL Activates and displays a window.
2 - SHOW MINIMIZED - Activates the window and displays it as a
minimized window.
3 - MAXIMIZE - Maximizes the specified window.
4 - SHOW-NO-ACTIVATE - Displays a window in its
most recent Size and position.
The active window remains active.
5 - SHOW - Activates the window and displays it
in its current size and position.
6 - MINIMIZE - Minimizes the specified window and
activates the next top-level window in the Z order.
7 - SHOW-MIN-NO-ACTIVE - Displays the window as
a minimized window. The active window remains active.
8 - SHOW-NO-ACTIVE - Displays the window in its current state.
The active window remains active.
9 - RESTORE - Activates and displays the window.
10 - SHOW-DEFAULT - Sets the SHOW STATE to default.
Example
'***********************************************
' Example 1 - EXX.
'***********************************************
' Example1
DBM.2
' Vars and special folders can be used.
' Will start the Furmark minimized.
EXX.?progs\Geeks3D\Benchmarks\FurMark_1.9.1\FurMark.exe|2
' Will start the FUrMark minimized and without waiting
EXX.?progs\Geeks3D\Benchmarks\FurMark_1.9.1\FurMark.exe|(2+100)
ENR.
'***********************************************
' Example 2 - EXX.
'***********************************************
'
CAW.RegEdit_RegEdit|Reg&AND:Edit
EXX.regedit
STS.DUMP
MBX.Ready
Remarks
Technical remark: EXX. uses asynchronous Shell- / Create-Process-Technology and is compatible with other commands that use this technology.
EXX. uses the default search path and will understand following shortcuts to these executables in the window-folder.
' Will open system control panel (XP, Win 7)
EXX.control
' Will open "Control Panel\All Control Panel Items\Administrative Tools"
' XP, Win7
EXX.control admintools
' WIll open the Clipboard Viewer
' XP only
EXX.clipbrd
' Systemconsole Prompt
' XP, Win7
EXX.CMD
' NotePad
' XP, Win7
EXX.notepad
' Windows Explorer
' XP, Win7
EXX.explorer
' XP, Win7
EXX.mspaint
' Open RegEdit
' XP, WIn7
EXX.regedit
' Windows Soundrecorder
' XP only
EXX.sndrec32
' Windows System Editor
' XP only
EXX.sysedit
You can not use EXX. to open a folder. Use EXS. or EXF. for that.
If you do this:
EXS.?ws\
EXS.?wi\
you can see the executable files in your system folders. They can be started using EXX. like see above.
Limitations:
EXX. will start a program asynchronous. It will not wait until the program has ended.
In some cases it can still happen that it will wait, or that it will wait too long for #pid# to be delivered. Use EXA. in these cases, as EXA. can not be blocked, yet may also not deliver #pid#.
See also: