Try cleaning the lens contacts with a soft cloth, also the contacts on the battery itself. Make sure you clean the lens contacts on both the lens and the camera body. Have you tried a different lens? Error 99 just means "General Error", so could be a lens, battery or CF card problem, but in my case I've had it come up when I was trying to use an old Sigma lens on an EOS 400D, which the Sigma lens couldnt cope with.
LJ, March 2009