Command Line Utility dicfg.exe
Use the dicfg.exe command line utility, typically found on the server at \di\solution\<diveline>\bin, to script bulk changes to user, group, or access settings. These settings reside under the covers in the atlcfg.cfg file. See What is atlcfg.cfg? A set of sample scripts and documentation is packaged as the DiveLine Security Maintenance DI_DICFG Package. You can request this resource from DI Technical Support using the contact information at Dimensional Insight Support.
The dicfg utility can run locally or remotely. The utility operates on the dataroot directly on a server with the -dataroot variable, or dicfg accesses a remote DiveLine server with the -remote variable. The dicfg process is internal to the DiveLine server, that is, no remote dicfg.exe runs when you connect to the DiveLine server remotely.
For remote connections or batch entries, use a colon (:) to separate the DiveLine user name and the password and an "at" sign (@) to separate the password and server when logging in. For example:
dicfg -remote <uid>:<pw>@<server>:<port> <dicfg command>
For a local connection, the syntax is simpler. For example:
dicfg -dataroot C:\DI_Solution\dl-dataroot <dicfg command>
The scripts found in the DI_DICFG Package were developed for Diver Solution 6.x. The dicfg.exe utility has not changed for 7.x, with the exception of user categories.
To manage users, groups, and access settings with an IDE, use the Workbench interface (Tools > Server Settings), which includes all of the functions that are in the earlier 6.4 DI-Config The DiveLine subcomponent that allows an administrator to configure DiveLine options using a Windows user interface. In 7.x, DI-Config functionality is part of Workbench server settings. component. See Server Settings Overview for procedures using Workbench.
Before using dicfg, please note the following:
- In the syntax examples, replace each item contained in brackets < > with the appropriate user name, group, password, or other item.
- All commands that begin with set, get, or list include the -q option, which suppresses either the header information or the confirmation output.
- Variables are preceded by a hyphen (-). Any number of variables can be used in the commands that allow multiple options.
- Some commands allow you to enter a list of items separated by commas.
- All commands can be entered on the command line for UNIX or DOS after typing dicfg.
- The dataroot variable specifies the DiveLine dataroot. The dicfg call can use a variable, as shown in the following example:
dicfg -dataroot $DIDATAROOT <dicfg commands>
- You must specify the server that you are connecting to before specifying the dataroot. If you have multiple dataroots, always explicitly specify one by using the dataroot variable. Otherwise, on Windows, dicfg uses the system default dataroot, which is the one that was most recently specified when installing a DiveLine service.
- You can display the system default dataroot with the di-service -list command.
-
The default dataroot on Windows for dicfg (and dlcgi), when not noted in the registry, is: C:\DI\Solution\dl-dataroot. It can also be found in the registry at HKLM\Software\Dimensional Insight\DI-DiveLine (possibly under the WOW64Node if 32-bit on 64-bit Windows). If needed, you can update the registry and add a new string named "dataroot" with a value that points to the desired default location.
- If at any point you need help with a command syntax, use the help command: help <command>. For example, the following command displays the syntax for the List command:
dicfg help list
The following sample dicfg call connects to a remote DiveLine server and sets the default ACL for the named model, demo_drs.mdl, for the test user with specified limits:
dicfg -remote joe:joepw@linuxhost:2130 set default_acl -object /demo_drs.mdl -user "test" -limits "Product Family (Butter)"
To launch the GUI version of DI-Config from the command line, use the Server (S) and Login variables to connect to the specified DiveLine server. For example:
di-config -S <servername:port> -login <username> <password>