| Previous | Next |
| STATUS_CALLBACK_RETURNED_THREAD_AFFINITY | STATUS_EXECUTABLE_MEMORY_WRITE |
STATUS_LPC_HANDLE_COUNT_EXCEEDED
The native message contains too many transferred handles
LPC and ALPC can transfer kernel-object handles through message attributes, but the native message format and port policy impose a finite count. Exceeding that count is a protocol construction error; enlarging the payload buffer does not increase the handle array limit.
Large handle batches should be redesigned. Transfer only the objects needed for one operation, split the exchange into sequenced messages, or represent a collection through one shared section or brokered server object. Every partial transfer also needs explicit rollback and close semantics.
What to inspect
- Count handles after filtering invalid or duplicate entries, not before application-level expansion.
- Record desired access, object type, and ownership transfer policy for each handle.
- Split batches with a transaction or sequence identifier so the receiver can detect incomplete delivery.
- Close duplicated handles on every failure path, including rejection before the peer accepts the message.
References
- Microsoft Open Specifications: NTSTATUS values
- System Informer PHNT: native LPC definitions
- Microsoft Windows SDK metadata: ntstatus.h
Looking for a different code? Search another status or error code.
