No, basta con establecer la propiedad ConnectionTimeout
Tuve el problema exacto (D2009, MSSQL2005), pero TADOConnection.ConnectionTimeout me funciona bien (por cierto, el valor predeterminado para esta propiedad es de 15 segundos). Tenga en cuenta que la dispersión del tiempo de espera es bastante amplia, por lo que una vez que se agote el tiempo después de 5 segundos y más tarde, p. después de 10 segundos, pero 20 segundos es realmente demasiado para el intento de conexión.
Probablemente tenga un problema con CommandTimeout (si está intentando ejecutar una consulta con el componente de conjunto de datos ADO asociado). Debe recordar que si configura TADOConnection.ConnectionTimeout:=5 y en su componente de conjunto de datos, p. TADOQuery.CommandTimeout :=15, y está intentando ejecutar la consulta, obtendrá un tiempo de espera después de 20 segundos.
Si realmente tiene un problema con la ejecución de consultas, no solo con el intento de conexión, esta publicación puede ayudarlo Componentes ADO CommandTimeout