Basically this error is common when you are using you windows from along time without any registry cleaner. Actually, as long as our PC spent time without registry cleaner, invalid entries get accumulated in system registry. It may be that your update file is corrupted in registry which doesn't allow update within this condition. So i prefer you to use regitry cleaner which have given marvellous performance till date. Nevertheless it is very easy to repair windows 7 update 646 error. you just need 3 steps:
1: Download a registry cleaner and install it.
2: Open the registry cleaner and scan you computer for free.
3: Click fix button and you done.