Helping people with computers... one answer at a time.
"To help protect your computer, Windows has closed this program" is a sign that Data Execution Prevention has been invoked. I'll look at what that is.
When I move files (mainly video files, but it also happens with other file types) from one directory to another, I get an error message that says that for safety reasons (to better protect my computer), Windows XP has decided to shut down Windows Explorer. I use XP, service pack 3. I presume that I need to reset some safety features, but I haven't got a clue which ones. Other than that, the PC runs fine. Any idea on what I can do to fix this?
•
The error message in question - "To help protect your computer, Windows has closed this program" - is a result of DEP, or "Data Execution Prevention", a security feature in Windows.
While we could turn that off, that would not be the right thing to do.
Copying files simply shouldn't result in a DEP error.
•
A "data execution prevention"-related error, which I'll describe in more detail below, is an software error of some sort. Exactly how or why it happens is almost impossible to say. About all that we can say is that "something ain't right".
DEP was added because it checks for one technique that malware sometimes uses to attack your machine.
Does this mean that you have malware if DEP triggers? Again, the best that we can say is maybe.
Start by running up-to-date anti-malware scans - both anti-virus and anti-spyware. Make sure that you're using reputable tools (I have recommendations) and that they are up-to-date.
Because it's not necessarily malware, the next step would be to make sure that your system is up to date as well. Often, bugs in software can manifest in this manner.
Similarly, it might be wise to make sure that you're running the latest device drivers for your system. If Windows Update doesn't offer them, you might want to check with your computer's manufacturer.
Finally - and this is perhaps the vaguest advice of all - check the other software installed on your machine. As this is a Windows Explorer crash, check and consider updating or uninstalling any software that adds items to Explorer pop-up menus in particular or is related to file copying in any way .
As you probably know, everything that your computer is doing or working on is stored in RAM - its Random Access Memory.
RAM is really just a place to store numbers: lots and lots of numbers.
Conceptually, what's stored in RAM can be classified in two categories: the instructions which tell the computer what to do, programs, and the stuff that the programs operate on, data. Microsoft Word would be a good example of a program and the document that you're writing might be a good example of data.
But, they're both stored in the same RAM. Windows just keeps track of what's what.
Data Execution is nothing more than getting the computer to treat some data as if it were instructions, telling the computer what to do.
Data Execution Prevention, or DEP, is a way that today's CPUs can actually be instructed to keep that from happening.
It's as simple as that.
Let's look at another example.
Internet Explorer is a program and the web page that you're looking at is data.
A malicious web page designer could hide the instructions that make up a virus within a web page. Your browser would then download that page when you view it, resulting in the virus being on your machine. Even then, it's relatively benign; as I said, it's in Internet Explorer's data and not being treated as if it were a program.
Unless, of course, there is a vulnerability.
A vulnerability that allows that web page designer to suddenly get Windows to treat all of that data as if it really were a program.
And suddenly, you have a virus running on your machine.
Regardless of any vulnerabilities that might be in the software, DEP prevents this entire class, this entire concept of malware infestation.
Here's another problem: some programs are written to assume that they can load up some data, and then treat that data as a program. In other words, they rely on Data Execution by design. In fact, early versions of Windows did this.
Naturally, for all of the security reasons that you can imagine, that is now highly discouraged.
And yet, some software like that might still exist.
You have two choices:
You can turn off DEP completely.
You can add an exception for the specific program that seems to be having DEP errors.
How do I turn off Data Execution Prevention errors? has some more details on how, but I need to point out a few things:
Frequently, exceptions don't work. For example, while the error is being reported as Windows Explorer, my experience is that it's possible that the actual error is elsewhere. Perhaps it's at a lower level which can't be properly identified and Windows is just telling us the best that it can.
Today, on current systems, it's much safer to assume that a DEP report is the result of malware or a software misconfiguration than the blocking of legitimate behavior. Adding an exception is probably not the right thing to do, as it's not removing the error, just allowing it to continue and perhaps get worse.
Turning off DEP completely is a bad idea simply because malware still exists that tries to use what DEP is protecting you from.
Bottom line: rather than turning DEP off as a knee-jerk reaction, treat the report as the software failure that it most likely is and try to fix that instead.
The error message is not lying - it really is "To help protect your computer...".
Article C4799 - April 20, 2011 « »
April 26, 2011 2:53 PM
This is for Snert, who wrote:
No problem, Snerty! Here's how one does it!
In Windows XP Pro SP3:
1. Start by clicking on (what else?) "Start", point to "Run," then click on it.
2. In the "Run" box that pop up, type "sysdm.cpl" (without the quotes) and click "OK."
3. In the resulting "System Properties" applet, click on the "Advanced" tab at the top; and then, in the "Performance" section, click the "Settings" button.
4. A "Performance Options" page comes up! Click on the "Data Execution Prevention" tab at the top for options... You're there!
Hope this helps! :)
---
(N.B.: For the Geeks -- One can get to the System Properties dialog via Control Panel, but since both the Start menu and the Control Panel can each look very different depending on one's individual user settings, I opted for the direct "Run" approach, where there is much less variability. Hope I didn't offend!)
April 26, 2011 2:56 PM
??? Perhaps this may explain downloads with the following:
Properties-attributes-security:
"this file came from another computer and might be blocked to protect your computer" with option to unblock. While I found this lmited to software/application downloads - it now appears in every single download (MP3, videos, etc.). This recent change drives me nuts. I cant figure this one out. Oh well.
April 26, 2011 9:05 PM
Since Windows Explorer sort of is Internet Explorer, the addons in IE may well be the problem. Specifically, BHOs in IE run when Windows Explorer runs. No Internet needed.
Yet another reason not to use IE.
October 23, 2011 3:19 AM
i do all that 2 get to the DEP...but at the end, in order 4 u 2 get it goin...it asks 4 a file number...idk what to put there to make it go
December 13, 2011 2:04 PM
My pc has had this problem for months and I think it's finally fixed now. This page has some good info, including:
If it is Windows Explorer that is reporting the Data Execution Protection error, suspect a non Microsoft Explorer Shell Extension. Shell Extensions help make up the Right Click menu for files you see in Explorer. (Internet Explorer DEP errors are dealt with a little differently).
You can download ShellExView from here to see which ones you have loaded:
http://www.nirsoft.net/utils/shexview.html
ShellExView doesn't install anything on your computer, it just runs and displays.
I downloaded ShellExView, started disabling the non-MS shell extensions and the culprit seems to be an extension called "Adobe PDF Preview Handler for Vista". I'm running XP and I don't know why a Vista extension would be installed. Explorer has not shut down since the extension was disabled.