The main reasons behind this problem is a corruption in the registry key which holds the value of the files which are executed while login to windows. This registry key can get either replaced with some incorrect value or it might get corrupt due to some
virus / trojan activity.
See if you can fix this issue by running SFC (System File Checker) scan from Safe Mode.
This scans forany integrity issues with the system files and tries to repair the same. If the scan doesn't
fix automatically, you can try repairing those files manually. Detailed information is available here:
How to use the
System File Checker tool to troubleshoot missing or corrupted system files on Windows Vista or on Windows 7