Что означает код HRESULT 0xC00E0038 (MQ_ERROR_ILLEGAL_MQCOLUMNS)?

 
Предыдущий Следующий
MQ_ERROR_COULD_NOT_GET_ACCOUNT_INFO MQ_ERROR_ILLEGAL_PROPID

MQ_ERROR_ILLEGAL_MQCOLUMNS

Что означает MQ_ERROR_ILLEGAL_MQCOLUMNS

MQ_ERROR_ILLEGAL_MQCOLUMNS (0xC00E0038) — Параметр MQCOLUMNS недопустим.

Контекст результата 0xC00E0038 — подсистема «COM/WinRT» и область «контракт вызываемого interface, аргументы и state объекта». Условие «параметр mqcolumns недопустим» указывает на тему «mq, illegal, mqcolumns», а не на общий отказ всего компонента.

Что проверить и как подтвердить исправление

В первую очередь сопоставьте первый отказ с фактическими параметрами операции. Для 0xC00E0038 в сценарии «параметр mqcolumns недопустим» воспроизведите отказ на минимальном объекте и меняйте только одно условие за запуск, чтобы отделить неверный вход от состояния системы.

Для воспроизведения 0xC00E0038 сохраните IID и method, thread/apartment, argument values, object state и исходный HRESULT; отдельно запишите ID, HRESULT, IETF. По теме «mq, illegal, mqcolumns» для 0xC00E0038 сравните эти данные с исправным запуском до очистки журналов или пересоздания объекта.

Исправляя 0xC00E0038, меняйте только подтверждённую причину: исправьте параметры и жизненный цикл объекта в соответствии с контрактом первого неуспешного метода. Результат 0xC00E0038 с описанием «параметр mqcolumns недопустим» должен исчезнуть на исходных данных без обхода штатной проверки.

После исправления повторите тот же вызов на прежних данных; у результата 0xC00E0038 должен измениться первый неуспешный этап, а не только последующее сообщение.

Документация для результата 0xC00E0038: Microsoft Open Specifications: MSMQ and directory services · IETF RFC 4511: LDAP protocol · Message Queuing error and information codes.


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