• Thank you all, This is what I was looking for too..

    Below is the codes I came up with...

    Declare @datadir nvarchar(4000)

    ,@logdir nvarchar(4000)

    ,@backupdir nvarchar(4000);

    EXEC master.dbo.xp_instance_regread

    N'HKEY_LOCAL_MACHINE'

    , N'Software\Microsoft\MSSQLServer\MSSQLServer'

    , N'DefaultData'

    , @datadir output;

    IF @datadir IS NULL

    BEGIN

    EXEC master.dbo.xp_instance_regread

    N'HKEY_LOCAL_MACHINE'

    , N'Software\Microsoft\MSSQLServer\Setup'

    , N'SQLDataRoot'

    , @datadir output;

    END

    EXEC master.dbo.xp_instance_regread

    N'HKEY_LOCAL_MACHINE'

    , N'Software\Microsoft\MSSQLServer\MSSQLServer'

    , N'DefaultLog'

    , @logdir output;

    EXEC master.dbo.xp_instance_regread

    N'HKEY_LOCAL_MACHINE'

    , N'Software\Microsoft\MSSQLServer\MSSQLServer'

    , N'BackupDirectory'

    , @backupdir output;

    SELECT @datadir as Data_directory, ISNULL(@logdir,@datadir) as Log_directory, @backupdir as Backup_directory;