Citect for Windows Version 5.20

Welcome to Citect Version 5.20 for Windows 95 and Windows NT (Version 4).

What's New

See the What's New in the Online Help system for details of new features for this version. For a detailed listing of problems that have been fixed in this release, see Relnotes.doc (found in the Citect 'bin' directory).

Upgrading Citect.ini

The Citect Version 5.20 installation program will now modify an existing Citect.ini file, instead of completely overwriting it. When Citect Version 5.20 is installed, any existing [DATA] and [USER] paths will remain unchanged.

Users upgrading projects are advised to check the [DATA] and [USER] paths after the installation.

All Projects must be Upgraded

To support variable argument passing to Cicode functions, as required by ActiveX Cicode support, changes have been made to the Cicode compiler and the Cicode engine in Citect runtime. As a consequence, you must fully re-compile any existing projects (with incremental compile turned off). Failure to do so will result in incorrect Cicode execution.

Updating your Protection Key

Citect Version 5.20 requires an update to the Protection Key used for Citect software licensing. Upon starting Citect Runtime for the first time, you will be presented with a series of dialogs regarding updating your key. To update your Citect Protection Key, an Authorisation Code is required. To obtain this Authorisation Code, you should contact Citect Support or your Citect Distributor.

A separate program for updating the Citect Protection Key is also available for download from the Support Files\Citect\KeyUpdate area of our web sites,,, and

Year 2000 Compliance

A number of changes have been made in Citect Version 5.20 as part of Citect Year 2000 Compliance. In general, these changes have involved correcting minor bugs in relation to time and date based functionality. In some areas, however, these changes have included modifying the default behaviour of Citect in relation to dates.

  • Cicode Time and Date functions have been designed to only function for dates between 01/01/1980 and 31/12/2037. In past versions of Citect, many functions would accept dates outside of this range, however, in Version 5.20, the parameters passed to Time and Date Cicode functions are required to be within the above range. Two exceptions to this are the functions DateAdd() and DateSub(), which will continue to accept dates outside this range for backwards compatibility reasons.
  • The default for the [Keyboard]LogExtendedDate and [Alarm]ExtendedDate parameters have been changed to extended date format - dd/mm/yyyy - instead of dd/mm/yy. This means that in command logs and alarm displays, extended date format will be used by default. i.e. An extra 2 characters are used. You should check to see if you need to modify the date format of your command logs and alarm displays to accommodate these extra characters. This is done using the Format field in the Devices and Alarm Categories forms. The date format is set using {DATE: n}. If n=8, the last two digits of the date may not display in your command logs and alarm displays. You will need to change it to 10 or greater.

Common Tag Database and Importing/Exporting Tags with Windows 95 or 98

The Tag Import and Link feature has been designed to take advantage of Microsoft's COM and DCOM technologies. DCOM is included with Windows NT 4.0 and Windows 98, but is not included with Windows 95. To use the Common Tag Database feature on Windows 95, the DCOM add-on is required. The DCOM add-on is available for download from Microsoft's COM Website,

  • Tag mapping - as used by the Common Tag Database feature - can exhibit problems on Windows 95 and 98, such as data being entered into incorrect fields for the tag. An example of this is the address for the tag being entered for both the Type and Address fields of the variable tags form. A solution for this problem is to remove all Tab characters from the format file you are using. The RSLogix format file (c:\citect\bin\rslogic.fmt) included with Citect Version 5.20 contains a number of Tab characters, and these should be removed before use. The format file used for each driver is listed in the Tagdrv.ini file found in the Citect\Bin directory.

Internet Display Client

The Internet Display Client setup program is currently available on the Ci Technologies website at

This will automatically extract and install all the files required for running the Internet Display Client. Alternatively, the Internet Display Client can be downloaded from any Citect Internet Server, using a web browser as described in the help.

Note that the Citect.ini file will be installed into the BIN directory of your installation.

To set up your computer as a Citect Display Internet Server, make sure the following parameters are included in the Citect.ini file:


TcpIp=1 ; Turn on TCP/IP for Internet Display Client communications

Netbios=0 ; Turn off NetBIOS

The following parameters are optional for both Internet Display Clients and Internet Servers:

1. For projects with a large number of I/O Servers, the Internet Server can be configured as a proxying I/O Server to increase Internet Display Client performance. To do this the following parameters need to be set on both the Internet Display Client and the Internet Server:


<i/o server name>=<proxy server name>

See the help for more details.

2. By default, the Internet Display Client assumes that the Internet I/O Server is also the Alarms, Trends and Reports Server. If you wish to specify alternative servers or redundant servers (or both), the following parameters are required:


Primary=<primary name> ; defines the prefix for primary servers. Can be anything, regardless

; of the actual primary servers names

Standby=<standby name> ; defines secondary server name prefix


<primary name>Alarm=<ip address> ; specifies the address of the primary Alarm Server

<primary name>Report=<ip address>

<primary name>Trend=<ip address>

<standby name>Alarm=<ip address> ; specifies address of the standby Alarm Server etc

Alternatively, if all the primary servers are on the 1 machine, and all the redundant servers are on another machine, the following syntax may be used:


Primary=<ip address> ; address of the primary servers

Standby=<ip address> ; address of the standby servers

Note that these must all be Internet Servers in order that the Internet Display Client can connect to them.

Displaying Driver Error Message Dialogs

The reporting of internal driver errors is now controlled by an INI parameter. By default driver error message dialogs are not displayed. If you would like to see these messages to assist in fault finding then set the parameter to 1.



Default Value


Allowable Values

0 Disable driver error message dialogs

1 Enable driver error message dialogs

Installation Hints & Tips

Automatic CD Setup

Some CD-ROM drivers do not support Autorun, which automatically executes the installation program when you insert the CD into the drive. If your CD driver does not support Autorun, you will need to use the Windows Explorer to execute the file CDSETUP.EXE (found in the root directory of the CD) directly.

SQL & ODBC Error Messages

If Microsoft Visual Studio Version 6.0 has been installed on your system, you may encounter an ODBC error when you install Citect.

When the Citect installation reaches the stage where it installs the ODBC Driver Manager, an error dialog "Unable to load installable ISAM - cannot load msxbse35.dll (error code=…)" appears.

You can correct the problem by copying the Visual Studio file "msxbse35.dll" into the Windows system directory, then reinstalling Citect. For your convenience msxbse35.dll is shipped with the Citect setup program. (In the \Citectv5 directory on the Citect CD).

Some Customers have encountered problems installing Citect Version 5.20 when Office 97 is already installed. The symptoms can include "SQL error, ODBC error" at the time of installation or an application error when trying to start the Citect Explorer. This can be the result of Office 97 installing a new version of the Microsoft ODBC manager on your machine, but failing to re-install all of the ODBC drivers required by other applications such as Citect. To rectify the problem, go to the VALUEPACK\DATAACC directory on your Office 97 CD and run the install program, Dataacc.exe. This will update all of your ODBC drivers. You may then need to reinstall Citect.

Version Stamping of Citect Files

Version stamping of Citect Files has changed.

Versions prior to 5.10 could be identified by the file creation date and time. Eg All version 5.01 files had the creation time of 10 Feb 98 5:01AM.

Citect executables now use Windows versioning. The version of an EXE file can be checked with Windows Explorer File|Properties then selecting the version tab.

Customers should not rely on a file's creation date to identify its Citect version.

Page Resizing and Full Screen

The resizable pages feature is turned on by default, and will make upgraded projects behave differently. If you do not want to use this feature, Set the [Page]DynamicSizing parameter to 0 (Off). Also, if your existing project does not use the Windows Title Bar on graphics pages, you must set the [Animator]Fullscreen parameter to 1 (regardless of whether the resizable pages feature is enabled or not).

For further information refer to the What's New section of the Online Help.

The Following Known Problems Exist with this Version

Path Substitution Does Not Work for Report Format Field

The Report Format Field in the Project Editor has a problem accepting path substitution. For example, [MYPATH]results.rtf will not work. You can work around this problem by specifying the path manually, for example, d:\mydata\results.rtf.

Colour Depth Used While Configuring Projects

There are some known problems that only appear while the PC used to configure projects is running in non 8-bit modes, ie true colour or hi-colour modes (15, 16, 24 and 32+ bits per pixel). Until a fix can be made for this problem use a 256 colour (8 bit) screen mode while configuring projects.

Known Problems in non 8-bit Modes:

  • The background (fast runtime display) is too dark at Runtime. This occurs when saving a page in a true colour mode.
  • Flashing colours do not flash.
  • Convert to bitmap in the Graphics Builder changes transparent areas to white. Also, some colours are a slightly different shade.
  • The bitmap editor in the Graphics Builder does not always refresh the pixel grid properly after editing.
  • Copy to clipboard from the Graphics Builder does not look the same.
  • Additional non-configured border colouring appears around objects in Graphics Builder.

Setting up TCP or UDP Communications

When using the Express Communication Wizard to setup TCP or UDP communications, the Port Number field does not contain a default value. To ensure correct operation, the user should enter a port number in this field. Use the Driver Help button to obtain the I/O Device-specific default value.

Auto-Starting of the WinRT Service

Citect configures the WinRT service to automatically start when Windows NT boots up. This can cause communication problems for other software (e.g. - PLC software) which also uses hardware configured in Citect, e.g. - Allen Bradley KT cards with RSLogix. This problem can be worked around by manually stopping and starting the WinRT service inside Windows NT.

To do this:

  1. Open the Control Panel in Windows NT.
  2. Double Click on the Services icon.
  3. Find the WinRT service in the list and click the Stop button.
  4. Run your software.
  5. Once your software is running, start the WinRT Service again to allow Citect to work.

Citect Software Licensing

The Citect Software Licensing application must be closed before starting Citect Runtime, otherwise, problems such as Citect running in demo mode will occur.

Upgrading from Citect Version 5.00

String Constant Expansion

In Citect version 5.01 and earlier there was a bug in the compiler which caused some string constants to be expanded using labels. For example if you passed "White" as a string to a function which was expecting an INT or REAL as an argument, the string "White" would be converted into 015. This was a bug because string constants should not be subject to expansion.

In version 5.10 and later this behaviour has been corrected. However, since some customers have built projects relying on this behaviour, a new parameter has been added to allow these customers to fix their projects.

See documentation of the parameter [General]BadOptimise for full details.

Alarm Summary Description

In Citect version 5.00, the Summary Description field (SumDesc), on the Alarm Summary page, does not retain the original set value for an alarm. Citect Versions 5.01 and 5.10 provided a fix for this problem, but to keep compatibility until all computers have been upgraded, the fix was disabled by default. This is controlled by the Citect INI parameter [Alarm]VariableSumDesc on the Alarm Servers.

Citect version 5.01 and later Display Clients can accept data from both version 5.00 and version 5.01 and later Alarm Servers, but they will only display the correct Alarm Summary Descriptions when talking to version 5.01 and later Alarm servers with VariableSumDesc set to 1. Please note that you must be running Citect version 5.01 or later, otherwise you will experience corrupted Alarm Summary lists on computers running version 5.00. This can be seen on the Alarm Summary page as "Bad Record Identifier", which will appear in the Alarm Summary entries.

Example Upgrade

Given a Primary Alarm Server (Computer A), a Secondary Alarm Server (Computer B), and several Display Clients, all running Citect version 5.00, an example upgrade path would be :

  1. Upgrade all Display Clients to Citect version 5.01 or later.
  2. Shutdown Computer B and upgrade it to Citect version 5.01 or later. Leave VariableSumDesc set to its default (0) and restart Citect.
  3. Shutdown Computer A and upgrade it to Citect version 5.01 or later. Set VariableSumDesc to 1 and restart Citect.
  4. Shutdown Computer B. Set VariableSumDesc to 1 and restart Citect.

NOTE : Summary entries that have been saved to the alarm almsave.dat file while using version 5.00 will appear as before when the upgrade to version 5.01 or later has been completed. Only new entries will have the correct Summary Description.

In Citect version 5.20 the parameter is enabled by default. All Display Clients and Servers should have been upgraded to a version of Citect later than 5.00 (i.e. 5.01 or 5.10). You may then run version 5.20 together with versions 5.01 and 5.10 (remember you must enable the solution in these versions by setting the INI parameter [ALARM] Variable SumDesc=1).