Site icon EfmSoft

Что означает код HRESULT 0x80080010 (MEM_E_INVALID_LINK)?

 
Предыдущий Следующий
MEM_E_INVALID_ROOT MEM_E_INVALID_SIZE

MEM_E_INVALID_LINK

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

MEM_E_INVALID_LINK (0x80080010) — Цепочка выделенной памяти содержит недопустимый указатель связи.

В подсистеме «COM/WinRT» результат 0x80080010 относится к области «контракт вызываемого interface, аргументы и state объекта». Описание «цепочка выделенной памяти содержит недопустимый указатель связи» сужает проверку до темы «mem, недопустимый, link».

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

Не начинайте с общего сброса компонента: проверьте допустимость и структуру входных данных первого неуспешного вызова. При 0x80080010 и условии «цепочка выделенной памяти содержит недопустимый указатель связи» сверьте тип, размер, диапазон, маску флагов и принадлежность каждого дескриптора текущему объекту именно по контракту первого неуспешного метода.

Сопоставьте с результатом 0x80080010 следующие данные: IID и method, thread/apartment, argument values, object state и исходный HRESULT; отдельно запишите IDs, HRESULT, IStorage, IStream. До исправления 0x80080010 сохраните исходное состояние объекта по теме «mem, недопустимый, link».

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

Закройте диагностику после двух проверок: исходный сценарий проходит без результата 0x80080010, а заведомо неверный вход отклоняется на ожидаемой границе.

Документация для результата 0x80080010: Microsoft Open Specifications: HRESULT values · Structured Storage · IStorage.


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

Exit mobile version