This is the one I use when customers change and forget their passwords...
http://home.eunet.no/~pnordahl/ntpasswd/
It works great, I have used it several times on windows xp, I have yet to try it on any other versions of windows.
It is suggested to delete administrator password, rather than change the password. This will allow you to log back in to windows with no password, then you can set it yourself.