| Предыдущий | Следующий |
| OLE_E_ADVF | OLE_E_ENUM_NOMORE |
TAPI_E_NOTENOUGHMEMORY
Диагностическая граница
Для TAPI_E_NOTENOUGHMEMORY (0X80040001) рабочая граница — недостаточно памяти. Код относится к TAPI 3 provider, address и call-control API. Сохраняйте первый native return и identity объекта: именно они определяют, проверяется ли здесь input, capability, ownership, lifecycle или transport.
TAPI state изменяется событиями provider независимо от UI-команд; поэтому call/address/terminal generation нужно связать с каждым asynchronous request.
Фрагменты исходного EN-описания
TAPI_E_NOTENOUGHMEMORY is HRESULT 2147745793 ( 0x80040001 ) from TAPI 3.0.
AllStat describes it as “The buffer passed in to this method was not big enough.” The result belongs to a TAPI 3 method returning variable-length information through a caller-provided buffer.
A telephony client requests address information into a legacy fixed array, then switches to a two-pass size query and retrieval.
The primary recovery is to read the required size when available, allocate with overflow checks, and repeat the retrieval without changing the logical request.
Что фиксировать
- provider name/version, address ID и device class.
- current address/call/phone state и privilege.
- точный IT* method, async request ID и первый native HRESULT.
Capabilities принадлежат конкретному service provider и device. То, что операция доступна на одном адресе, не доказывает её допустимость для другого address/media/terminal.
Проверка конкретного условия
Сделайте минимальный before/after experiment для «недостаточно памяти». Не меняйте одновременно provider, input и state — такой тест не показывает, что именно исправило результат.
Сопоставьте текущее состояние TAPI с условием «недостаточно памяти» и ближайшим отличающимся TAPI_E_*; диагностика должна оставаться на первом method/provider boundary.
Восстановление
Устраните TAPI-condition «недостаточно памяти», обновите provider state и повторите минимальный исходный call-control/request method.
Технические ссылки
- Microsoft: TAPI_E constants.
- Microsoft: ITAddress::CreateCall.
- Microsoft: ITBasicCallControl.
- Microsoft: TAPI 3 reference.
Нужно найти другой код? Найти другой код состояния или ошибки.
