Command Line Utility dictl

Use the dictl.exe command line utility, found on the server at \di\solution\<diveline>\bin, if you want to script the tasks that you do in the Workbench controller (ToolsServer Settings > Controller). Like the Workbench controller, the dictl.exe utility can list active users and open cBases and models, send a message to individual or all users, or disconnect users from the DiveLine server. The dictl.exe list functionality is more limited than the Workbench controller that displays more detailed information about users, including client types and versions, connection login times and PIDs, and memory and CPU usage. For more information about using the Workbench controller, see Controller Tab.

The dictl utility supports the following commands. In the command syntax, an item that is contained in angle brackets < > is intended to be replaced by a specific user name, group, password, or other appropriate item. Variables or options are preceded by a hyphen (-). You can use any number of, or all variables in the commands that accept multiple options. Enter a list of items separated by commas.

For example, the following command, entered without carriage returns, sends a model maintenance message to all logged in ProDiver, Help Desk, DivePort, and Workbench users and then disconnects them. The logs will show which users were disconnected.

dictl -S DS-Dimins:3230 -login admin admin -info_all -i “Model maintenance being performed” -all -log “manual_build.log”

NOTE:

  • You can have Production scripts call dictl to disconnect users before performing certain housekeeping chores for models and cBases.
  • If you are running dictl in a script, the DiveLine server is using Web Server authentication, and dictl has write access to the /dataroot/webauth directory. It is preferable to log in as the admin user and disconnect everyone, without storing a password in the script. For example:

dictl -S <server:port> -dataroot C:\DI_Solution\dl-dataroot -login admin -all