Ok.
The first thing I would do is rename the plug-ins in the wp-content>plugins folder to disconnect them from the install. This can be as simple as adding a “1” to the end of the folder names in the plugins folder on your server.
You can do this to all of them to see if the problem is with the plugins in general, or if you suspect one of them you can do this to the one and see if you can log in. This process of elimination is usually done in the dashboard but since you cannot get in there this method will have to do.
If the error is not in the plug ins then you will want to do the same thing with your theme. Just make sure there is a default theme in the folder for the site to revert to, otherwise you will need to download one and add it in via the FTP. I suggest twentytwelve, its incredibly simple and therefore great for debugging.
Be warned that this is something that will make the front end of your site do some wild and crazy things. If you have clients or customers using the site they will not be happy with the chaos.
If both the plugins and the themes are not the source of the error then you have to look at the WordPress installation itself, total pain in the butt.
If you know what version of the WordPress package you are using you could swap out the menu.php file in the wp-admin folder using a clean copy. Since most issues are not where the error message says they are this may not work to solve the problem but there is a chance you have a bad line of code in that file and rather than trying to fish it out you could just swap it for a clean copy. Be sure you have the right version or this could be a big headache.
Another cause of repeated hair pulling is the functions.php file in your theme. You may want to try to rename that file, just to knock it out of the mix for a moment and see if you can get in. If so the issue is in there somewhere. The theme test will also do this since the functions.php file is in the theme folder but just in case.
These are the problem areas I would investigate first. Good luck.