Site icon EfmSoft

Что означает код ошибки Windows 604 (ERROR_INVALID_VARIANT)?

 
Предыдущий Следующий
ERROR_MARSHALL_OVERFLOW ERROR_BAD_COMPRESSION_BUFFER

ERROR_INVALID_VARIANT

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

ERROR_INVALID_VARIANT означает, что структура VARIANT не соответствует допустимому Automation representation: vt, активное union field или связанные указатели/descriptor противоречат друг другу. Это не ошибка значения бизнес-данных сама по себе.

Что проверить

  • Сохраните raw vt и соответствующее union member до передачи через COM boundary.
  • Проверьте VT_BYREF, VT_ARRAY, SAFEARRAY descriptor и lifetime referenced memory.
  • Убедитесь, что обе стороны используют совместимые packing/ABI и инициализацию VariantInit.

Как исправить

Формируйте VARIANT строго по заявленному type tag и очищайте его VariantClear только после завершения consumer call. Не меняйте vt отдельно от union content: это и создаёт malformed representation.

Технические ссылки


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

Exit mobile version