As some of you may know, some antivirus programs recognize the RegObj.dll file (C:\Windows\System32\RegObj.dll on most systems) as malicious. This file is required by ArcGIS and, if deleted, ArcGIS’ self-repairing feature is triggered, causing a very annoying delay while the install completes. ESRI’s solution for the problem is to create a file exclusion in your antivirus software for the RegObj.dll. We use Symantec antivirus, and I personally set up the exclusion on our antivirus server. This hasn’t, though, solved the problem. Yes, the repair install doesn’t occur as often as it did, but it still happens.
I came across a couple of messy, but doable, workarounds in the ESRI support forum today, and am hoping that these will take care of the problem forever! The first solution is as follows:
- Copy the RegObj.dll file from the \System32 folder to another folder on your harddrive (e.g. C:\Workspace). Symantec only deletes the .dll if it resides in your \System32 folder, so it should be safe here.
- Create a simple batch file that moves the RegObj.dll from the C:\Workspace folder to the \System32 folder.
- To create the batch file, right-click in the directory where you want it to reside and select New>Text Document in the context menu (picture illustration).
- Assuming that Windows is installed to your C:\ partition, open up the new text file and paste in the following line:
- copy “C:\Workspace\RegObj.dll” C:\WINDOWS\system32\RegObj.dll /Y
- Rename the text file to YourName.bat. You will have to confirm that you want to change the file extension by clicking “Yes” (picture illustration).
- Next, point to Start>Run and type in “Tasks“. Press enter.
- Double-click on “Add Scheduled Task”, and the “Scheduled Task Wizard” dialog will open. Set the scheduled task parameters as follows:
- Click on “Browse…” and browse to the location of the batch file that you just created. When you get to it, double-click on it.
- In the next window, choose to “Perform this task” Daily and click “Next“.
- Select the task “Start time” (I chose 12:01 AM). Choose to perform this task “Every Day” and specify the task “Start date” (today’s date).
- This is important. Specify a valid username and password in this dialog – the task will run as if started by this user. This can be tricky if you authenticate against Active Directory. If you know the credentials of a local administrator, use them (as you won’t have to worry about forgetting to go back in and reset the password when an Active Directory password expires).
- At the next dialog, check the “Open advanced properties…” box and click “Finish“.
- When you get into the advanced properties dialog, click on the “Schedule” tab at the top and push the “Advanced…” button.
- In the “Advanced Schedule Options” dialog, check the “Repeat task” box and choose to repeat the task at a set interval (I chose 5 minutes).
- Chose the “Time:” radio button and set the scheduled task end time (I chose 11:59 PM) and click “OK“.
- Click “OK” to close out the other open dialog and you should be good!
The second solution uses the same method but doesn’t have to run as often, as it unzips and then registers the RegObj.dll file before moving it into the \System32 folder. I’m not going to document this method, as it has already been done. I will, however, point you in the right direction (zip uploaded to the ESRI Support Forum by Tunrayo Alabi, here’s a link to the full discussion).