Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

What is the difference between the following error messages?

  1. The instruction at "<address>" referenced memory at "<address>". The memory could not be "read"/"written".

  2. <application name> has stopped working (assuming an access violation occurred; this message is used for any other program crash as well)

In both cases, the program has performed an invalid memory access (access violation, aka segmentation fault). What determines the exact error message displayed?


  • The former error message ends with Click on OK to terminate the program. If a debugger (e.g. Visual Studio) is installed, there may be a Cancel button with the words Click on CANCEL to debug the program appended to the message. Another error message, which ends with the similar Click on OK to terminate theapplication, is The application failed to initialize properly.

  • I suspect these messages are generated by some runtime library, bypassing the normal Windows crash handler. Any idea when or why these error messages would appear in place of the <application name> has stopped working message?

share|improve this question

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Browse other questions tagged or ask your own question.