When Does This Error Show Up?
You're running a Windows NT Server 4.0 or a legacy Windows Remote Access Service (RAS) box that handles Remote Program Load (RPL) for diskless workstations. The server boots up, you check Event Viewer, and there it is: 0X00000A41 with the message NERR_RplAdapterInfoCorrupted. The exact trigger? The server tried to read an Adapter ID record from the RPL database—stored in %SystemRoot%\System32\Rpl\Rplsvc.mdb—and found a corrupted entry. This usually happens after a power failure, a bad shutdown, or a manual edit gone wrong.
What's Going On?
The RPL service (Remote Program Load) lets diskless workstations boot over the network. It keeps a database of allowed network adapter MAC addresses. Each adapter has an ID record. When that record gets scrambled—bytes overwritten, missing fields, or mismatched checksums—the service spits out error 0X00000A41. The database is a simple Access/Jet database, and it's fragile. One bad write, one corrupted sector, and you're stuck.
The real fix isn't a Windows patch—it's database repair. You don't need to reinstall RAS or the RPL service. Just fix the corrupted record.
Step-by-Step Fix
Step 1: Stop the RPL Service
- Open a command prompt as Administrator.
- Type
net stop rplsvcand press Enter. - You should see: The Remote Program Load service is stopping. Then successfully stopped.
Step 2: Backup the Database
- Navigate to
C:\Windows\System32\Rpl\(or your system root). - Copy
Rplsvc.mdbtoRplsvc.mdb.backup. Right-click it, choose Copy, then right-click blank space and Paste. Rename the copy. - Do the same for
Rplsvc.mdb.ldbif it exists—though it's the lock file, you might not see it.
Step 3: Open the Database for Repair
You'll need Microsoft Access or the Jet database repair tool. If you don't have Access installed on the server, copy the file to a workstation that does. The quickest way without Access: use the command-line tool esentutl (Exchange Server utilities) or JETREP from the Windows 2000 Resource Kit.
- Run
cmdas Administrator. - Type:
esentutl /p C:\Windows\System32\Rpl\Rplsvc.mdb - Press Enter. You'll see a warning about dismounting the database—type Y and press Enter.
- Wait. The tool scans for corrupted tables and tries to drop damaged rows.
If esentutl isn't available, download JETREP.EXE from the Windows 2000 Server Resource Kit (it runs fine on NT 4.0). Run jetrep C:\Windows\System32\Rpl\Rplsvc.mdb.
Step 4: Check the Repair Results
- After the tool finishes, it prints a report. Look for “79 tables repaired” or something similar. If it says “Cannot repair”, the database is beyond repair—restore from a known-good backup (you kept one, right?).
- If the repair succeeded, close the command window.
Step 5: Restart the RPL Service
- Open Services (click Start, Run, type
services.msc). - Find Remote Program Load Service.
- Right-click it, choose Start.
- Wait a few seconds. Refresh the list. The status should say Started.
Step 6: Test
- Boot a diskless workstation that uses RPL. It should get an IP and load the remote boot image.
- Check Event Viewer (System log) for any new errors. Filter for source
RPL. You should see a clean log with no 0X00000A41 entries.
If It Still Fails
Three things to check:
- Database file permissions: Open Windows Explorer, right-click
Rplsvc.mdb, go to Properties > Security. TheSYSTEMandAdministratorsaccounts need Full Control. If they don't, the service can't write to the database—even after repair, it'll corrupt again. - Disk corruption: Run
chkdsk C: /fand reboot. Bad sectors on the disk can re-corrupt the database file. After a repair, you want a clean disk. - Manual adapter list: Open
%SystemRoot%\System32\Rpl\Rplsvc.mdbin Access (if you have it). Go to theAdaptertable. If you see rows with blank or garbled values in theAdapterIDcolumn, delete those rows. Close the database. Restart the service.
If none of that works, you're down to restoring from a backup. If you don't have one, you'll need to recreate the RPL adapter database from scratch. That means re-entering every adapter ID for your diskless workstations. Painful, but doable.
Pro tip: After you get this fixed, schedule a weekly database integrity check. A simple batch file that runs
esentutl /g C:\Windows\System32\Rpl\Rplsvc.mdband logs the output saves headaches. Put it in Task Scheduler.