Partager via


Méthode IBackgroundCopyManager ::GetErrorDescription (bits.h)

Récupère une description pour le code d’erreur spécifié.

Syntaxe

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

Paramètres

[in] hResult

Code d’erreur d’un appel précédent à une méthode BITS.

[in] LanguageId

Identifie l’identificateur de langue à utiliser pour générer la description. Pour créer l’identificateur de langue, utilisez la macro MAKELANGID . Par exemple, pour spécifier l’anglais américain, utilisez l’exemple de code suivant.

MAKELANGID(LANG_ENGLISH, SUBLANG_ENGLISH_US)

Pour récupérer l’identificateur de langue utilisateur par défaut du système, utilisez les appels suivants.

LANGIDFROMLCID(GetThreadLocale())

[out] pErrorDescription

Chaîne terminée par null qui contient une description de l’erreur. Appelez la fonction CoTaskMemFree pour libérer ppErrorDescription lorsque vous avez terminé.

Valeur retournée

Cette méthode retourne les valeurs HRESULT suivantes, ainsi que d’autres.

Code de retour Description
S_OK
La description du code d’erreur a été récupérée avec succès.
HRESULT_FROM_WIN32(ERROR_RESOURCE_LANG_NOT_FOUND)
Aucune chaîne n’est disponible pour les paramètres régionaux.

Remarques

Les descriptions des erreurs HTTP sont localisées.

Windows XP/2000 : Les descriptions des erreurs HTTP ne sont pas localisées.

Exemples

L’exemple suivant montre comment récupérer la description associée à un code d’erreur. La variable g_XferManager dans l’exemple est un pointeur d’interface IBackgroundCopyManager . Pour plus d’informations sur la création du pointeur d’interface IBackgroundCopyManager , consultez Connexion au service 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);
  }
}

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows XP
Serveur minimal pris en charge Windows Server 2003
Plateforme cible Windows
En-tête bits.h
Bibliothèque Bits.lib
DLL QmgrPrxy.dll

Voir aussi

Gestion des erreurs

IBackgroundCopyError

IBackgroundCopyJob ::GetError