Fix 0xC00000F0: Invalid second parameter in Windows services
This error means a service or function got bad data in its second argument. Common with corrupt third-party drivers or registry hacks.
Quick answer for advanced users
Boot into Safe Mode with Networking, run sfc /scannow, then DISM /Online /Cleanup-Image /RestoreHealth. If that doesn't fix it, check the System event log for the exact driver or service name, then disable or roll back that driver.
Why you're seeing 0xC00000F0
This error (STATUS_INVALID_PARAMETER_2) shows up when Windows tries to pass a second argument to a service or kernel function and that argument is nonsense. The most common trigger: installing a third-party driver (especially for network adapters, printers, or backup software) that doesn't match the OS version. I've also seen this after a Windows Update that botched a registry key or after manually editing service startup parameters in the Registry.
The error can appear as a blue screen during boot, or as an Application popup on the screen saying something like "An invalid parameter was passed to a service or function as the second argument." On Windows Server 2022 and 2019, it often kills a critical service like DHCP Client or Server service, making the machine unreachable.
Here's the thing: the error itself doesn't tell you which service or driver is broken. You need to do a little detective work.
Step-by-step fix
Start with the safest approach that works for the majority of cases. Do these steps in order. Don't skip the first one.
- Boot into Safe Mode with Networking
Restart the PC and press F8 repeatedly before Windows loads (on Windows 10/11 and Server, you may need to force a restart three times to get to the Recovery menu). Once in Safe Mode, the error often stops because only core drivers load. You can then work without crashing. - Run System File Checker
Open Command Prompt as Administrator (right-click Start > Command Prompt (Admin)). Typesfc /scannow and press Enter. This checks system files for corruption. It takes 10-15 minutes. After it finishes, you'll see one of these messages:- "Windows Resource Protection did not find any integrity violations." — good, move on.
- "Windows Resource Protection found corrupt files and successfully repaired them." — restart and test.
- "Windows Resource Protection found corrupt files but was unable to fix some of them." — run DISM next.
- Run DISM to fix system image
In the same Command Prompt, typeDISM /Online /Cleanup-Image /RestoreHealth and press Enter. This scans your system image against Windows Update. It can take 20-30 minutes. If it says the source could not be found, you may need a Windows installation media. Insert it and useDISM /Online /Cleanup-Image /RestoreHealth /Source:C:\RepairSource\Windows /LimitAccess(replace C: with your DVD or USB drive letter). - Check the System event log
Press Win + R, typeeventvwr.msc, hit Enter. Go to Windows Logs > System. Look for errors with Source "Service Control Manager" or "Application Popup" around the time the error occurred. Double-click one. The error message often includes the service name — for example "The XYZ Service failed to start with error 0xC00000F0." Write down that service name. - Disable or roll back the offending driver
If the error points to a driver (like a network card or a printer driver), open Device Manager (right-click Start > Device Manager). Find the device, right-click it, Properties > Driver > Roll Back Driver (if available) or Uninstall Device. Then reboot normally. - Disable the problematic service
If the error names a service (like "DHCPServer" or "MyBackupService"), open Services.msc (Win + R, typeservices.msc). Find the service, right-click, Properties, set Startup type to "Disabled", click Apply and OK. Then reboot. The error should disappear. You can then try reinstalling the software that owns that service.
Alternative fixes if the main one fails
Sometimes the main steps don't work, especially if the error is caused by a registry corruption or a tricky driver.
- Boot from a Windows installation USB and run Startup Repair
Insert the Windows USB, boot from it, choose your language, then click "Repair your computer" > Troubleshoot > Advanced Options > Startup Repair. This can fix boot-level driver issues. - Use System Restore
Back in the Recovery environment (or Safe Mode), go to Troubleshoot > Advanced Options > System Restore. Pick a restore point from before the error started. I've seen this fix the issue when nothing else would. - Manually edit the Registry to remove a bad service parameter
Only do this if you're comfortable with the Registry. A wrong edit can break Windows.
Open Regedit as Administrator. Navigate toHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\. Look for theParameterskey or values likeImagePath. If you see a value that looks wrong (like a path to a file that doesn't exist or a garbled string), note it, then delete or correct it. Export the key first as a backup. - Check for recent Windows Updates
If the error started after a Windows Update, go to Settings > Update & Security > View update history > Uninstall updates. Remove the most recent update. Reboot. This has fixed it on a few Server 2022 machines I admin.
Prevention tip
The simplest way to avoid 0xC00000F0: never install drivers or software from unofficial sources. Always get drivers from the manufacturer's website, and test them on a staging server or VM first. On Windows Server, always install updates in a maintenance window, and keep a restore point before each change. I also recommend turning off automatic driver updates via Windows Update (Settings > System > About > Advanced system settings > Hardware tab > Device Installation Settings > No). That way you control exactly what driver hits your system.
Was this solution helpful?