So I’ve spent a good part of the last week trying to develop a workaround for the horrendous Service Pack 2 Download Blocker. The download blocker is essentially designed to alert users when a page starts to download on its own (when they didn’t click a button to start the download). The problem I’ve found is that for applications built entirely in Flash, like our jsymmetry app… IE does not consistently detect clicks that take place inside of Flash.
On occasion, when a user clicks a download button in a Flash app, IE doesn’t detect the click and flags the download as suspicious. The real problem occurs when IE tries to determine what to do when the user chooses to accept the download. For lack of a better solution, IE refreshes the page. Of course, this doesn’t work for a Flash app.
On jsymmetry, every time this occurred, it booted people from the site and brought them back to the login page. Huge problem. So… my workaround entailed the following:
- Detect every click on a download button
- Store the timestamp and the file_id in a shared object
- If the page refreshes within a certain number of seconds, log the user back in automatically by reading the shared object
- Take the user directly back to the file they clicked on
- Show the user an info box that tells them how to avoid this problem in the future

The easiest way I can find to stop the download blocker is to add the URL to the “Trusted Sites” list in the IE :: Tools > Internet Options > Security > Trusted Sites > Add
I am imagining many Flash developers out there right now wringing their hands over this latest implementation by Microsoft. It just seems like shoddy work on their part to not have worked with Macromedia to make sure they could detect mouse clicks 100% of the time.