Что означает код NTSTATUS 0xC0020062 (RPC_NT_INVALID_ASYNC_HANDLE)?

 
Предыдущий Следующий
RPC_NT_NOT_CANCELLED RPC_NT_INVALID_ASYNC_CALL

RPC_NT_INVALID_ASYNC_HANDLE

Недопустимый асинхронный дескриптор RPC

RPC_NT_INVALID_ASYNC_HANDLE относится к среде выполнения Windows RPC в семействе NTSTATUS. Для RPC_NT_INVALID_ASYNC_HANDLE протокол MS-RPCE расширяет модель DCE/RPC: созданные stubs упаковывают параметры, runtime привязывается к конечной точке и последовательности протокола, а ошибки безопасности или транспорта возвращаются как статусы RPC.

Асинхронный RPC использует дескриптор RPC_ASYNC_STATE для отслеживания хода вызова, уведомления, отмены и завершения. Этот статус означает, что переданный runtime дескриптор недопустим для операции.

Типичные причины: пропуск RpcAsyncInitializeHandle, повторное использование завершённого дескриптора без инициализации, ошибка времени жизни объекта в стеке или передача состояния, принадлежащего другому вызову.

Что проверить для RPC_NT_INVALID_ASYNC_HANDLE

  • Убедитесь, что асинхронное состояние инициализировано с ожидаемым размером структуры.
  • Сохраняйте объект живым до полной обработки завершения или отмены.
  • Не используйте одно асинхронное состояние одновременно для нескольких незавершённых вызовов.

Ссылки для RPC_NT_INVALID_ASYNC_HANDLE


Нужно найти другой код? Найти другой код состояния или ошибки.