FlickStart available on Google Play use it with FlickNet also available on Google Play
                
Downloads  Home  About  Contact 

FlickNet Parameters

Introduction

This section explains the commands available for controlling PC apps.

The PC app parameters are delivered from a FlickStart command as extra data. All parameters have a name and a value.

To drive a particular Windows app only some of the parameters are likely to be required, but we will look at usage in a later section.

The Parameters

Parameter Name Parameter Value
pc IP address or machine name if targeting a specific PC. If no pc is specified, the command is sent to all PCs that are allowed. If the "os" parameter is used, only PCs with a matching OS will be sent the command.
app The target app name (eg. if the app is aaa.exe, use aaa as the app name). When sending keystrokes to an app it may be enough to provide the app name. If more discrimination is required you may need to also specify a window using other parameters. The 'app' parameter is definitely required if you use the 'launch_app' parameter.
os Specifies the platform at the target PC (eg. windows). PCs can be selected by 'os' rather than by name. The only valid value for the 'os' parameter at present is 'windows'.
window_class Class name string. If 'window_class' is present, FlickNet uses the window class to find a running process with the 'window_class' value as it's main window. If a process is found, operations are applied only to windows of that process. The 'window_class' parameter can be used to target a running app instead of using the 'app' parameter.
window_name A top-level window name string. The parameter can be just the leading part of a window name. Case is ignored. If 'window_name' is present and 'window_class' is not present, FlickNet uses the 'window_name' value to find a running process with window name as it's main window. If a process is found, operations are applied only to windows of that process. The 'window_name' parameter can be used to target a running app instead of using the 'app' parameter, however it can also be used to select a particular app instance.
child_name Window name string. The parameter can be just the leading part of a window name. Case is ignored. If child_name is present and child_class is not present, FlickNet operates on the child window whose title contains the child name rather than the top level window.
child_class Window class string. If child_class is present, FlickNet operates on the child window with that class name rather than the top level window.
set_focus If FlickNet should set focus to a window before any operations, this parameter should be present with a value "true". The window selected for getting focus will depend on the other parameters. If just the 'app' parameter is present, focus will be given to the top level window of the app named. If 'window_name' or 'window_class' is present a process owning the window is found. Focus is then given to that window unless one of the "child_" parameters is present, in which case focus will be set to the matching child window. Focus will be set before any keystrokes (if any) are sent. If no window can be found that matches the criteria for getting focus, no keystrokes will be sent.
launch_app Set to "once" if the app should be lauched only if not running. Set to "multiple" if the app should be launched again even if already running.
launch_args Command line arguments for the launch (as a single string) if an app is to be launched.
keys A key string with possible embedded specials (eg. {DEL}). The keys are sent to the window that currently has the focus. You can use the other parameters (eg. window_class) together with the set_focus parameter to choose the window which gets focus before the keys get sent. After the command is done, the target window will be left having the focus. Information on the valid format for the key string can be found here.
key_single A key value as a hexadecimal (eg. 7B which is the hexadecimal value for the F12 key). The target app will receive KEYDOWN messages at the physical keyboard's auto-repeat rate for the single key followed by a KEYUP after the period defined by the key_time parameter. If a command contains a key_single, the command must also have a key_time. The two parameters should always be used when the command needs to simulate a key being held down for a period of time. Information on the valid values for key_single can be found here.
key_time The length of time to simulate a key being held down (used with the key_single parameter). The values should be in milliseconds.
sticky Used to indicate a qualifier key is being referenced. The parameter value is "1". When 'sticky' is used, you should also use "keys" with an empty string as value, and at least one of the parameters "shift", "ctrl", "alt" or "win" to indicate which qualifier(s) are being changed.
shift Indicates a change is being made to the SHIFT key. A value of "1" indicates the SHIFT key is being held down, while "-1" indicates the SHIFT key is being released. This parameter should only be used in conjunction with the "sticky" and "keys" parameters.
ctrl Indicates a change is being made to the CONTRL key. A value of "1" indicates the CONTROL key is being held down, while "-1" indicates the CONTROL key is being released. This parameter should only be used in conjunction with the "sticky" and "keys" parameters.
alt Indicates a change is being made to the ALT key. A value of "1" indicates the ALT key is being held down, while "-1" indicates the ALT key is being released. This parameter should only be used in conjunction with the "sticky" and "keys" parameters.
win Indicates a change is being made to the Windows Logo key. A value of "1" indicates the Windows Logo key is being held down, while "-1" indicates the Windows Logo key is being released. This parameter should only be used in conjunction with the "sticky" and "keys" parameters.
sendmessage The value should be "1". This parameter is used when a Windows Message needs to be generated at the PC end. The "keys" parameter should be present with it's value set to an empty string. The parameters "msg", "wparam" and "lparam" must also be present. The Windows message constructed from all these parameters is actually posted (using PostMessage rather thans SendMessage) to the target window. Special processing is done by WinFlickNet at the PC end if the value of "msg" is WM_KEYDOWN or WM_KEYUP (see the description for "msg"). Note that the "sticky" parameter is used for sending qualifier keys.
msg The value is a string representing a Windows "WM_" value (eg. the value repesenting WM_KEYDOWN is "256"). See the "sendmessage" parameters for associated information. If the "msg" is a WM_KEYDOWN, WinFlickNet will keep generating WM_KEYDOWN messages to the target window at the current interval for the keyboard repetition rate on the target PC. A WM_KEYUP message should eventually be sent so that the timer for the WM_KEYDOWN messages can be cancelled, followed and the WM_KEYUP sent. If the "msg" value is neither WM_KEYDOWN nor WM_KEYUP, no special processing is done, and a single Windows message is posted using the values for "msg", "wparam" and "lparam".
wparam The value is a string representing the integer value of the wparam parameter of the Windows Message being created (eg. "32" would be the parameter value if the wparam parameter represented the virtual keycode VK_SPACE in a WM_KEYDOWN message). See the "sendmessage" parameter for additional parameters that must be used with "wparam".
lparam The value is a string representing the integer value of the lparam parameter of the Windows Message being created. See the "sendmessage" parameter for additional parameters that must be used with "lparam".

Operations that can be done on a PC App

Currently there are just three things you can do to a PC app. A single command from FlickStart might do just one or all of these:

  • 1. Start an app - Done with the 'launch_app' parameter.

  • 2. Set focus to an app or specific window - Done with the 'set_focus' parameter.

  • 3. Send keystrokes (or messages) to a specific window (or the window with focus) - Done with the 'keys' parameter.

  • WinFlickNet does any operations (if present in the one command) in the order listed above.

    Sending Keystrokes

    A great many Windows apps respond to keyboard shortcuts and so are potential targets for FlickStart commands.

    The parameters you put in a command that is going to send keystrokes can be many or just one.

    In the simplest scenario of all you might want to assume the app you want to control is already running on your PC and has focus so that the only parameter you need in the FlickStart command is 'keys'.

    If you aren't willing to assume the PC app will have focus when you send the command from FlickStart, you need to include the 'set_focus' parameter along with 'app, ''window_class' or 'window_name'.

    If you aren't willing to assume the app is already running, you need to add the 'app' and 'launch_app' parameters in the FlickStart command.

    Finding Window Names and Classes

    For some apps you will need just the app name. For others you will need to also specify a particular window, either by the window's class name or by part (or all) of it's title.

    You may need an app like Microsoft's 'Spy' to look closely at the windows associated with an app. Spyxx.exe can be obtained from a number of places including Visual Studio 2015.


    Privacy Policy