Error Killer is a batch file that was posted by Lectrode at StackOverflow.com. It checks for specific processes every X seconds and kills them if they are found. It's useful to kill error windows which prevent some services from restarting, notably game servers.
Error Killer can be run as a Windows Service using FireDaemon Pro. FireDaemon Pro allows you to have the batch file start automatically at boot prior to login and restart Error Killer should it crash. This HOWTO will show you how to set it up. You can also use FireDaemon Fusion to manage FireDaemon and other Windows services via your web browser.
Error Killer Setup Under FireDaemon
- Download the zip file that contains "error-killer.bat". For your convenience, we have included the zip file containing Error Killer as an attached file at the end of this HOWTO.
- Extract the "error-killer.bat" file within the zip file to root of your C drive. For the purposes of this guide, we will use C:\error-killer.bat as the Error Killer file.
- Error Killer is set to kill WerFault.exe which is responsible for most error windows. If your error window is not created by WerFault.exe then you will need to figure out which program is creating your error windows. See the end of this HOWTO for more information.
- Error Killer also checks for the existence of WerFault.exe once every 5 seconds. It uses a tiny amount of CPU and Ram (less than 0.02 CPU and 5MB) so in most cases, you won't need to change the check timer. See the end of HOWTO for more information.
- Download and install FireDaemon Pro into the directory of your choice, typically C:\Program Files\FireDaemon.
- Next, start the FireDaemon GUI from the desktop shortcut. Click on the "Create a new service definition" button in the toolbar (or type Ctrl+N) and enter the information into the fields as you see below. Adjust paths to suit your installation.
- Executable: The path to your error-killer.bat file. For the purposes of this HOWTO, the path is C:\error-killer.bat.
- Working Directory: The directory containing your error-killer.bat file. For the purposes of this HOWTO, the path is C:\.
- Parameters: none
- Now click on the Settings tab. If you DON'T want to see Error Killer running, uncheck the Interact with Desktop check box. You must run Error Killer with an administrator account. In the Logon Account field type your username (e.g. Administrator) and then enter the user's password twice in the Password and Confirm fields. You can change the Process Priority to allocate more CPU time to Error Killer or specify which core Error Killer will run on.
- Now click on the Lifecycle tab. Uncheck Graceful Shutdown and check Console Application.
How to change the process that is killed
If WerFault.exe is not the process that is generating the error then you will need to configure Error Killer to kill the correct process. Here's how you do that:
- Download Process Explorer from https://technet.microsoft.com/en-us/sysinternals/bb896653.aspx
- Extract procexp.exe someplace on your hard drive. It doesn't matter where, but for the purposes of this guide, we will use C:\
- Run Process Explorer.
- The default view of Process Explorer shows the process list in tree mode (sub-processes are indented). If you don't see it in tree mode then click "View" menu and select "Show Process Tree".
- Below the process of your server should be another process. Take note of the process name.
- Close Process Explorer and using your favourite text editor open C:\Error-Killer.bat
- On line 6, replace "WerFault.exe" with the name of the process you found. Do not add any quotes around the process name.
- Save Error-Killer.bat and restart its FireDaemon service.
NOTE: If your service is still freezing at this point, then the error window is likely using some other rendering method and it can't be killed automatically.
How To Change The Check Timer
If 5 seconds is too slow or too fast, then you will need to change its value. Here's how to do that.
- Open C:\Error-Killer.bat
- Replace "5" located on line 7 with the time of your choice in seconds. Do not add any quotes around it.
- Save Error-Killer.bat and restart its FireDaemon service.
NOTE: It takes around one or two seconds to kill the error window, so don't set the check timer to 2 seconds or less.