Quick answer
RPC_S_SEND_INCOMPLETE (0x00000779) means the RPC runtime couldn't send the entire request buffer before the connection dropped. Fix the underlying network or buffer issue, not the error itself.
Why this happens
I've seen this error pop up in weird places — sometimes on a file server that's about to die, sometimes on a workstation that's been on a crappy Wi-Fi link for weeks. The RPC runtime has a buffer that holds the outgoing request. If that buffer gets partially transmitted and then the connection dies, you get 0x00000779. It's not a corrupt DLL or a bad patch. It's a network handoff problem.
Think of it like shipping a package. You hand the box to the courier, but the courier only walks halfway to the truck before dropping it. The sender sees "some data remains to be sent." The trigger could be a flaky TCP connection, a firewall that kills long-lived connections, or an RPC buffer size that's too small for the payload.
I had a client last month whose entire print queue died because of this. The print server was on a VPN link, and every time the file got over 2 MB, the RPC call would fail with 0x00000779. The VPN was silently dropping packets. We fixed the MTU, and it never came back.
Fix steps
- Check the network path — Ping and traceroute between the client and server. Look for high latency or packet loss. Use PowerShell:
Test-NetConnection -ComputerName server -Port 135to test the RPC endpoint mapper. If you see any drops, fix the network first. - Raise the RPC buffer size — In some apps, you can increase the send buffer via registry. For example, in Exchange or SQL, you might set
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Rpc\Internetand adjustMaxBufferSize. But most times, it's the default 8 KB that's too small. Set it to 65536 (64 KB). - Disable RPC over HTTP proxy — If you're using RPC over HTTP (for Outlook or DCOM), the proxy can buffer and drop. Turn it off temporarily: In IIS, stop the RPC proxy virtual directory, or in registry, set
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Rpc\EnableRpcOverHttp = 0. - Check firewall stateful inspection — Many firewalls (SonicWall, Fortinet) have stateful RPC inspection that can break large packets. If you can, disable that inspection rule for the specific source/destination pair. Or at least set the timeout to 600 seconds instead of the default 60.
- Update network drivers — I know it sounds generic, but I've seen Realtek NIC drivers cause this exact error. Update to the latest driver from the manufacturer, not Windows Update. Reboot after.
Alternative fixes
If the above doesn't crack it, try these:
- Change the MTU on the interface — Set MTU to 1400 instead of 1500. This reduces fragmentation and helps on VPN links. In PowerShell:
Set-NetIPInterface -InterfaceAlias "Ethernet" -NlMtuBytes 1400. - Use a different RPC protocol sequence — Sometimes
ncacn_ip_tcpis flaky, butncacn_np(named pipes) works better on same-subnet. You can force DCOM to use named pipes viaComponent Services>My Computer>Properties>Default Protocols. - Check for antivirus interference — Some AV suites (looking at you, McAfee) inject into network stacks and break RPC. Temporarily disable real-time scanning and test. If it fixes it, add an exclusion for the RPC ports (135, 445, and the dynamic range).
- Re-register the RPC runtime — This is a long shot, but if the RPC service itself is corrupted, run
sfc /scannowfrom an elevated command prompt, then restart the RPC service.
Prevention tip
The real fix is to stop chasing this error and make your network boring. Set up SNMP monitoring on your switches and watch for CRC errors or dropped packets. Keep your MTU consistent across the path. And if you're running a server that handles big RPC calls (like a print server or file server), make sure the NIC has jumbo frames enabled only if the entire path supports it — otherwise, you'll create more fragmentation, not less.
Rule of thumb: RPC errors are symptoms, not diseases. Fix the network, and you'll rarely see 0x00000779 again.