Summary
This article discusses dependency settings for the adTempus service and explains how to fix problems related to service dependencies.
Background
The adTempus service uses a SQL Server database to store adTempus data. Therefore adTempus cannot function unless the SQL Server database server is running. To ensure that adTempus cannot be started if the database server is not available, and that the database server cannot be stopped without first stopping adTempus, the adTempus database setup tool configures the adTempus service to have a dependency on the SQL Server service. Service dependencies are enforced by the Windows service control manager.
This dependency can only be set if SQL Server is running on the same computer as adTempus. If you are using adTempus with a remote SQL Server database, no dependency can be configured.
Potential Problems
If the service dependency is missing or set incorrectly, adTempus may not start correctly, as described below.
To resolve either of these problems, make sure the dependency is set correctly as described in the Dependency Settings section below.
Missing Dependency
If the dependency on SQL Server is missing, adTempus may fail to start when the computer is restarted. This will happen if Windows starts the adTempus service before it has started the SQL Server service. In this case you will find the following message from adTempus in the Application log in the Windows Event Viewer:
If you then start the service manually, it starts without issue.
Note: If the adTempus service fails with the same message when you start it manually, the problem is caused by misconfiguration of the adTempus database settings, not by a dependency problem. See article K00000225 for more information.
Incorrect Dependency
If the dependency is set incorrectly, adTempus will fail to start because Windows is enforcing a dependency on an invalid service. In this case, Windows will log one of the following error messages in the System log in the Windows Event Viewer:
or
Dependency Settings
To resolve either of the problems described above, make sure that the service dependency is set correctly. To do so:
- Run the Registry Editor (regedit.exe) and navigate to the key "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\adTempus". Beginning with adTempus 4, the key name will be "adTempus$instancename".
- Look for a value named DependOnService. If this value does not exist, create it as a "Multi-String Value" (REG_MULTI_SZ). (Do not create the value if you are using a remote SQL Server database).
- Set the DependOnService value as described below:
Database Type | DependOnService Value | Notes |
SQL Server Express, installed by adTempus | MSSQL$ADTEMPUS | This applies only if you used the adTempus database tool to install SQL Server Express. |
SQL Server Express, a previous installation | MSSQL$SQLEXPRESS | This applies if you already had SQL Server Express installed, and you are using it for adTempus (this is not a recommended configuration). |
SQL Server, default instance, installed locally | MSSQLSERVER | |
SQL Server, named instance, installed locally | MSSQL$instancename | Replace instancename with the correct instance name for the instance of SQL Server. |
SQL Server, installed remotely | For a remote SQL Server, the dependency does not apply. Delete the DependOnService value if it is present. |
If adTempus was failing to start due to an invalid dependency and it still fails to start after you correct the dependency setting, double-check that you have the correct setting and then restart the computer so that the service control manager will detect the new setting.