To check if a remote server is available you can use something like this CREATE PROCEDURE sp_serverup(@server sysname,@islinked char(1)='N',@up int OUTPUT)AS/*1 = Running-1 = Down*/SET NOCOUNT ONDECLARE @hr intDECLARE @sql intDECLARE @cnt int ; SET @cnt = 0DECLARE @server_resolved sysnameDECLARE @status int ; SET @status = 0IF @islinked='Y'BEGIN SELECT @cnt=COUNT(*) FROM master..sysservers WHERE srvname=@server AND isremote=1 IF @cnt<>1 BEGIN RAISERROR('Linked server name cannot be resolved',16,1) RETURN(1) END SELECT @server_resolved = datasource FROM master..sysservers WHERE srvname=@server AND isremote=1ENDELSEBEGIN SELECT @server_resolved = @serverENDEXEC @hr = sp_OACreate 'SQLDMO.SQLServer', @sql OUTPUTIF @hr<>0 EXEC sp_OAGetErrorInfo @sqlEXEC @hr = sp_OASetProperty @sql ,'LoginSecure','True'EXEC @hr = sp_OASetProperty @sql ,'LoginTimeout',10EXEC @hr = sp_OAMethod @sql,'Connect',null,@server_resolvedIF @hr<>0 EXEC sp_OAGetErrorInfo @sqlEXEC @hr = sp_OAGetProperty @sql ,'Status',@status OUTPUTEXEC @hr = sp_OAMethod @sql,'DisConnect',nullEXEC @hr=sp_OADestroy @sqlSELECT @up = CASE WHEN @status = 1 THEN 1 ELSE -1 ENDRETURNHTHJasper Smith0x73656c6563742027546f6f206d7563682074696d65206f6e20796f75722068616e6473203f27