Open registry by typing the regedit in the Run Dialog box. Browse to: HKEY_CURRENT_USER\Control Panel\Desktop locate DWORD value "WaitToKillAppTimeout" which have a default value as "WaitToKillAppTimeout"="20000" This value represents the time(in milisecond) taken by window to end program when it is not responding. Change it to 0 and prevent your computer by hanging.
Not sure, but I think when you choose "End Now", windows may safely closing the program(i.e. trying to avoid loss of data). When you set mentioned value to 0. it closes program as it is.
That way you will have some problems like say you have a program which takes a bit long time to execute and so its not hanged but some white screen and windows may kill that process. I guess then the value should be well optimized.
no it will end program only when you click "End Now" button on "This program is not responding " dialog box. Which occours only in case either the program is 'really'not responding or you choose to close the unresponding program.
You must try to delete temp files as they can also be the reason for this.You just need to go in Start then in run window type %temp% and hit enter. You will get all the temp files you can delete them. As this was discussed in a program of Microsoft support and it really works, hope you will also get benefit from this.