Поделиться через


Метод IBackgroundCopyManager::GetErrorDescription (bits.h)

Извлекает описание указанного кода ошибки.

Синтаксис

HRESULT GetErrorDescription(
  [in]  HRESULT hResult,
  [in]  DWORD   LanguageId,
  [out] LPWSTR  *pErrorDescription
);

Параметры

[in] hResult

Код ошибки из предыдущего вызова метода BITS.

[in] LanguageId

Определяет идентификатор языка, используемый для создания описания. Чтобы создать идентификатор языка, используйте макрос MAKELANGID . Например, чтобы указать английский язык США, используйте следующий пример кода.

MAKELANGID(LANG_ENGLISH, SUBLANG_ENGLISH_US)

Чтобы получить идентификатор пользовательского языка по умолчанию системы, используйте следующие вызовы.

LANGIDFROMLCID(GetThreadLocale())

[out] pErrorDescription

Строка, завершающая значение NULL, содержащая описание ошибки. Вызовите функцию CoTaskMemFree , чтобы освободить ppErrorDescription по завершении.

Возвращаемое значение

Этот метод возвращает следующие значения HRESULT , а также другие.

Код возврата Description
S_OK
Описание кода ошибки успешно получено.
HRESULT_FROM_WIN32(ERROR_RESOURCE_LANG_NOT_FOUND)
Для языкового стандарта нет строки.

Замечания

Описания ошибок HTTP локализованы.

Windows XP/2000: Описания ошибок HTTP не локализованы.

Примеры

В следующем примере показано, как получить описание, связанное с кодом ошибки. Переменная g_XferManager в примере — указатель интерфейса IBackgroundCopyManager . Дополнительные сведения о создании указателя интерфейса IBackgroundCopyManager см. в разделе "Подключение к службе BITS".

HRESULT hr = 0;
IBackgroundCopyJob* pJob = NULL;
WCHAR* pszDescription = NULL;

//Call fails because the third parameter is NULL.
hr = g_XferManager->CreateJob(L"DummyJob", BG_JOB_TYPE_DOWNLOAD, NULL, &pJob);
if (FAILED(hr))
{
  hr = g_XferManager->GetErrorDescription(hr, LANGIDFROMLCID(GetThreadLocale()), &pszDescription);
  if (SUCCEEDED(hr))
  {
    //Do something with pszDescription.
    CoTaskMemFree(pszDescription);
  }
}

Требования

Требование Ценность
Минимальный поддерживаемый клиент Windows XP
минимальный поддерживаемый сервер Windows Server 2003
целевая платформа Виндоус
Header bits.h
Library Bits.lib
DLL QmgrPrxy.dll

См. также

Обработка ошибок

IBackgroundCopyError

IBackgroundCopyJob::GetError