All the documentation I read about reseeding suggests something along the lines of:
SET @maxIdentityValue = (SELECT MAX(id) FROM tablename)
As it is stated in MSDN, it is fairly enough to use just:
DBCC CHECKIDENT('tablename', RESEED)
most of the time, however there are these two conditions where it will not work:
in which you have to go with they way that you mentioned (select max(id) and the rest), so why bother in the first place? :)