It seems that the ATmega16U2 chip to handle the communication between the USB and the 2560 microcontroller is blown.http://arduino.cc/en/Main/arduinoBoardMega2560
If the sketch is running, you could program your sketch using a programmer and the ISCP header. That si a way to program the 2560 microcontroller without the USB communication.
How to check if the connection is blown?
Do you have a reference to program with the ISCP header?
I have try different USB cable and different computer and it seems, all the computer do not able to detect the arduino.