Fixing ERROR_SERVICE_DEPENDENCY_DELETED (0x00000433)
Error 0x00000433 means a service your app needs was removed or flagged for deletion. We'll hit the top 3 causes in order of likeliness.
1. Orphaned dependency from a failed uninstall or upgrade
This is the one I see most often. You or someone on your team installed a piece of software—maybe SQL Server, maybe an older version of IIS—and then uninstalled it badly. The parent service (say MSSQL$SQLEXPRESS) is gone, but the service that depended on it (like a backup agent or a custom app) still lists it in its dependency tree. When you try to start that service, Windows throws 0x00000433.
Here’s how to nail it:
- Open an elevated Command Prompt (Run as Administrator).
- Run
sc query yourservicenameto see the current state and dependencies. - Then run
sc qc yourservicename— look at theDEPENDENCIESline. You might see something likeMSSQL$SQLEXPRESSorHTTPFilter. - If that dependency service is no longer installed (check with
sc query missingdependencyservicename), you need to remove it from the parent service’s list. - Use
sc config yourservicename depend= /— note the space afterdepend=. This wipes all dependencies. If you need to keep others, usesc config yourservicename depend= service1/service2with a slash separator, omitting the broken one. - Reboot or restart the service.
I’ve seen this exact scenario on Windows Server 2019 when someone uninstalled SQL Server 2017 but left a Veeam backup service referencing it. Two minutes to fix once you know where to look.
2. Service marked for deletion but still referenced
This one’s trickier. Another service holds a handle to the dependency service, and while it’s closing, Windows flags the dependency as "marked for deletion." The parent service can’t start until that handle is released. Usually happens during a reboot or service restart storm—like patching cycles.
The fix:
- Identify the service that’s stuck. Run
sc queryex type= service state= all | find /i "0x00000433"— this lists all services in error state. - Look at the dependencies with
sc qc thestuckervice. - Then run
sc queryex thedependencyname— if its state isSTOP_PENDINGorDELETE_PENDING, you’ve found the problem. - Kill whatever process is holding the handle. Use
tasklist /mor Process Explorer to find the PID. If it’s svchost.exe, note the PID. - From an admin prompt:
taskkill /f /pid 1234(replace 1234). - Then restart the stuck service.
On a Server 2022 box running Microsoft Deployment Toolkit, I once had a phantom WDS service ghosting around. Killing the svchost hosting it cleared the error instantly. Reboot afterward to be safe.
3. Corrupted service dependency registry entry
Less common, but when it hits, it’s a mess. The registry key for the service’s dependencies has a bogus entry—maybe a typo, maybe a leftover from a half-baked install. The service can’t resolve the name, so it fails with 0x00000433.
- Open Regedit and go to
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\yourservicename. - Look for the
DependOnServiceMULTI_SZ value. Export that key first (right-click > Export) as a backup—trust me, you’ll thank yourself. - Double-click
DependOnService. You’ll see one or more service names, each on its own line. Delete the ones that don’t exist. To check if a service exists: runsc query servicenamefrom an admin command prompt. - Click OK, close Regedit, and restart the service.
One time I found a leftover RpcSs misspelled as RpcSvc — someone’s fat fingers. Took 10 minutes of head-scratching before I thought to check the registry directly. Don’t skip the backup.
| Cause | Diagnostic command | Fix |
|---|---|---|
| Orphaned dependency | sc qc yourservicename | sc config yourservicename depend= / |
| Service marked for deletion | sc queryex thedependencyname | Kill the holding process, then restart |
| Corrupted registry dependency | Regedit > DependOnService | Remove invalid entries, backup first |
If none of these work—and I know this error is infuriating—check if your service is trying to start too early during boot. Try setting it to Automatic (Delayed Start) in services.msc. Sometimes a slow dependency just hasn’t fully loaded.
Was this solution helpful?