| Предыдущий | Следующий |
| MQ_ERROR_ILLEGAL_RELATION | MQ_ERROR_ILLEGAL_RESTRICTION_PROPID |
MQ_ERROR_ILLEGAL_PROPERTY_SIZE
Что означает MQ_ERROR_ILLEGAL_PROPERTY_SIZE
MQ_ERROR_ILLEGAL_PROPERTY_SIZE (0xC00E003B) — Недопустимый размер буфера идентификатора сообщения или идентификатора корреляции.
В подсистеме «COM/WinRT» результат 0xC00E003B относится к области «контракт вызываемого interface, аргументы и state объекта». Описание «недопустимый размер буфера идентификатора сообщения или идентификатора корреляции» сужает проверку до темы «mq, illegal, свойство, размер».
Что проверить и как подтвердить исправление
В первую очередь сопоставьте первый отказ с фактическими параметрами операции. Для 0xC00E003B в сценарии «недопустимый размер буфера идентификатора сообщения или идентификатора корреляции» воспроизведите отказ на минимальном объекте и меняйте только одно условие за запуск, чтобы отделить неверный вход от состояния системы.
Чтобы локализовать 0xC00E003B, соберите IID и method, thread/apartment, argument values, object state и исходный HRESULT; отдельно запишите IDs, ID, HRESULT. Затем для 0xC00E003B сравните исправный и неуспешный запуск в части «mq, illegal, свойство, размер», меняя одно условие за раз.
После локализации 0xC00E003B действуйте по контракту подсистемы: исправьте параметры и жизненный цикл объекта в соответствии с контрактом первого неуспешного метода. Для 0xC00E003B и условия «недопустимый размер буфера идентификатора сообщения или идентификатора корреляции» неизменённый повтор без нового состояния не считается исправлением.
Закройте диагностику после двух проверок: исходный сценарий проходит без результата 0xC00E003B, а заведомо неверный вход отклоняется на ожидаемой границе.
Документация для результата 0xC00E003B: Message Queuing error and information codes · queue properties and MQQUEUEPROPS · MSMQ message properties.
Нужно найти другой код? Найти другой код состояния или ошибки.