Applies To:
  • CitectSCADA 5.20

I start the IDC and enter the IP address and password to gain access to the Citect FTP server. The client appears to try and start, but immediately displays a message which says something like 'Cannot start as project not selected'. Why does this happen and how can I fix it? 

This problem is due to the nature of the Citect FTP server. By default, the Citect FTP server uses the standard Citect install directory as its root. Typically, Citect is installed to C:\Citect, with the projects being held in C:\Citect\User. If you set up your Citect Server in this manner you will probably never see this problem. However, if you set up your project such that it resides in some other root directory this problem may occur.

Say for instance you have installed Citect to C:\Citect and then linked to a pre-existing project at D:\MyProj. This will of course work under normal circumstances, but with the IDC you will get the 'Project not selected' error. The reason for this is that the project does not lie in the FTP server's root, and therefore the FTP server cannot send the required files to the client. It will be trying to run an empty directory and will fail.

Obviously the quick way around this is to move your project so that it is somewhere within the C:\Citect directory. Alternatively, you could try starting the Citect FTP server manually, setting the FTP root by hand. You could also try using a third party FTP server which provides you with the flexibility you need.

The FTP server is started by Citect after startup, and killed when Citect shuts down. If, for example, you wanted to run a different FTP server, you can prevent this FTP startup by setting the [INTERNET]RunFtp parameter to 0 (). The FTP server can also be run from the command line (c:\citect\bin\ftpsvr.exe) and accepts the following options:

-r<root dir>
sets <root dir> to be the root directory for the FTP server. Defaults to C:\. Citect sets this to the Citect directory.

-h<home dir>
sets the home directory for all users. Users start in this directory. Defaults to c:\. Citect sets this to the current project directory.

-x<deny dir>
denies access to <deny dir>. Defaults to nothing. Citect sets this to the BIN directory.

-i<internet dir>
specifies a new location for the internet directory (where the idc.exe is stored). Defaults to [ROOT]\Internet.

sets the FTP server port to <port>. Defaults to 21.

writes logs to <logfile>. Defaults to stdout.

timeout to set in seconds. Defaults to 900. Citect sets this to the value of [INTERNET]FtpTimeout.

enter debugging mode. This mode prints extra information.

CIT has confirmed this to be a problem in Citect for Windows version 5.20. This problem has been fixed in version 5.21. As a reuslt of the fix in version 5.21, the root directory for the FTP server will now default to the value of [CTEDIT] User in the Citect.ini file.