Applies To:
  • CitectSCADA 5.31, 5.40, 5.41, 5.42, 5.50, 6.0, 6.1, 7.0
  • CitectHMI 5.31, 5.40, 5.41, 5.42, 5.50, 6.0, 6.1, 7.0
  • CitectFacilities 5.31, 5.40, 5.41, 5.42, 5.50, 6.0, 6.1, 7.0
  • CitectSCADA Batch 5.31, 5.40, 5.41, 5.42, 5.50, 6.0, 6.1, 7.0
  • CitectSCADA Pocket 5.31, 5.40, 5.41, 5.42, 5.50, 6.0, 6.1, 7.0

Summary:

I made a change in my citect.ini file located in C:\Windows but it doesn't seem to affect my runtime.

OR

I made a change to the citect.ini file through the computer setup wizard and the change is only reflected at runtime if I am the person running the project.

On a system that is running Terminal Services, each user has a unique Windows directory. The system Windows directory is shared by all users,
so it is the directory where an application should store initialization and help files that apply to all users.

What happens on a system using windows server 2003 and terminal services is that on the first start of Citect the INI file is copied to 'C:\Documents and Settings\Administrator\WINDOWS', where 'Administrator' is the currently logged in user. Citect is then using the copied INI file while the original stays untouched. Therefore any changes made to the file in C:\Windows will not be reflected in the runtime.

It's Windows Server 2003 which is returning the user's private windows directory c:\documents and settings\myUser\WINDOWS instead of
c:\WINDOWS. The problem is the way the system call GetWindowsDirectory() works under Server 2003 and Terminal Services.

With Terminal Services, the GetSystemWindowsDirectory function retrieves the path of the system Windows directory, while the GetWindowsDirectory function retrieves the path of a Windows directory that is private for each user."

 

Solution:

If you are using windows server 2003 and terminal services you should put your citect.ini file in another location than C:\Windows. See Q4139

 

Keywords:
 

Attachments