It is *supposed* to fire when a session times out. Unfortunately, since MS can't get their stuff together, session_onENd does not fire all the time everytime. You really need to find another way of doing whatever you need to do.
when an users session expires i.e., by default its timeout property..<BR>or we can define in code as session.timeout ..by default it is 20minutes..and we can change it also..<BR>if the user is not accessing the page for some time also(THE TIME IS less than default timeout)..then sessionm_onend fires..
Believe me, I tried. It didn't work. I specified the session to expire anywhere from 1 to 40 minutes, testing each time. It all depends on the load on the server. Generally if the server is busy, it doesn't have enough free cycles to go and do the session_onEnd junk from what I've been able to gather. I tried to get it to work for dumping data from an array. It worked fine on my development machine here at home. But as soon as it went to the server with all the other sites. Not a chance in heck.