| Previous | Next |
| RPC_E_INVALID_HEADER | RPC_E_INVALID_IPID |
RPC_E_INVALID_EXTENSION
Meaning and context of RPC_E_INVALID_EXTENSION
Microsoft RPC (Microsoft Remote Procedure Call) is a modified version of DCE/RPC. Additions include partial support for UCS-2 (but not Unicode) strings, implicit handles, and complex calculations in the variable-length string and structure paradigms already present in DCE/RPC.
MSRPC was used by Microsoft to seamlessly create a client/server model in Windows NT, with very little effort. For example, the Windows Server domains protocols are entirely MSRPC based, as is Microsoft's DNS administrative tool. Microsoft Exchange Server 5.5's administrative front-ends are all MSRPC client/server applications, and its MAPI was made more secure by "proxying" MAPI over a set of simple MSRPC functions that enable encryption at the MSRPC layer without involving the MAPI protocol.
MSRPC is derived from the Distributed Computing Environment 1.2 reference implementation from the Open Software Foundation, but has been copyrighted by Microsoft. DCE/RPC was originally commissioned by the Open Software Foundation, an industry consortium to set vendor- and technology-neutral open standards for computing infrastructure. None of the Unix vendors (now represented by the Open Group), wanted to use the complex DCE or such components as DCE/RPC at the time.
Microsoft's Component Object Model is based heavily on MSRPC, adding interfaces and inheritance. The marshalling semantics of DCE/RPC are used to serialize method calls and results between processes with separate address spaces, albeit COM did not initially allow network calls between different machines.With Distributed Component Object Model (DCOM), COM was extended to software components distributed across several networked computers. DCOM, which originally was called "Network OLE", extends Microsoft's COM, and provides the communication substrate under Microsoft's COM+ application server infrastructure. Microsoft donated DCOM to The Open Group.
Diagnostic interpretation
RPC_E_INVALID_EXTENSION has the HRESULT value 0x80010112. AllStat records the condition as “OLE received a packet with an invalid extension.”.
Evidence to capture
- Capture any IErrorInfo text, activity identifier, event-log entry, and subsystem trace that mentions this result or the extension operation.
- compare the failing machine with a working one at the same configuration boundary: component version, policy, registration, identity, and target resource.
Retry and recovery
Retry only after the condition responsible for RPC_E_INVALID_EXTENSION has changed; repeat the same operation and confirm that the original failure boundary has moved or disappeared.
Official references
Looking for a different code? Search another status or error code.
