Partager via


Méthode IMsmError ::get_Type (mergemod.h)

La méthode get_Type récupère la propriété Type de l’objet Error . Cette méthode retourne une valeur msmErrorType indiquant le type d’erreur représenté par cet objet.

Syntaxe

HRESULT get_Type(
  [out] msmErrorType *ErrorType
);

Paramètres

[out] ErrorType

Pointeur vers un emplacement en mémoire qui reçoit le type d’erreur.

msmErrorType Valeur Description
msmErrorLanguageUnsupported 1 Une demande a été effectuée pour ouvrir un module avec une langue non prise en charge par le module. Aucune langue plus générale n’est prise en charge par le module. Ajoute msmErrorLanguageUnsupported à la propriété Type et la langue demandée à la propriété Language (Objet Error). Toutes les propriétés de l’objet Error sont vides. La fonction OpenModule retourne ERROR_INSTALL_LANGUAGE_UNSUPPORTED (en tant que HRESULT).
msmErrorLanguageFailed 2 Une demande a été effectuée pour ouvrir un module avec une langue prise en charge, mais le module a une transformation de langue non valide. Ajoute msmErrorLanguageFailed à la propriété Type et la langue de la transformation appliquée à la propriété language de l’objet Error . Il peut ne pas s’agir de la langue demandée si une langue plus générale a été utilisée. Toutes les autres propriétés de l’objet Error sont vides. La fonction OpenModule retourne ERROR_INSTALL_LANGUAGE_UNSUPPORTED (en tant que HRESULT).
msmErrorExclusion 3 Impossible de fusionner le module, car il exclut ou est exclu par un autre module de la base de données. Ajoute msmErrorExclusion à la propriété Type de l’objet Error . La propriété ModuleKeys ou La propriété DatabaseKeys contient les clés primaires de la ligne du module exclu dans la table ModuleExclusion. Si un module existant exclut le module en cours de fusion, les informations moduleSignature du module exclu sont ajoutées à ModuleKeys. Si le module en cours de fusion exclut un module existant, DatabaseKeys contient les informations moduleSignature du module exclu. Toutes les autres propriétés sont vides (ou -1).
msmErrorTableMerge 4 Conflit de fusion pendant la fusion. La valeur de la propriété Type est définie sur msmErrorTableMerge. Les propriétés DatabaseTable et DatabaseKeys contiennent le nom de la table et les clés primaires de la ligne en conflit dans la base de données. Les propriétés ModuleTable et ModuleKeys contiennent le nom de la table et les clés primaires de la ligne en conflit dans le module. Les entrées ModuleTable et ModuleKeys peuvent être null si la ligne n’existe pas dans la base de données. Par exemple, si le conflit se trouve dans une entrée de table FeatureComponents générée. Lors de la fusion d’un module de fusion configurable, la configuration peut faire référence à ces propriétés à des lignes qui n’existent pas dans le module.
msmErrorResequenceMerge 5 Un problème s’est produit lors de la mise en file d’attente d’une table de séquence pour qu’elle contienne les actions fusionnées nécessaires. La propriété Type est définie sur msmErrorResequenceMerge. Les propriétés DatabaseTable et DatabaseKeys contiennent le nom de la table de séquence et les clés primaires (nom de l’action) de la ligne en conflit. Les propriétés ModuleTable et ModuleKeys contiennent le nom de la table de séquence et la clé primaire (nom de l’action) de la ligne en conflit. Lors de la fusion d’un module de fusion configurable, la configuration peut faire référence à ces propriétés à des lignes qui n’existent pas dans le module.
msmErrorFileCreate 6 Non utilisé.
msmErrorDirCreate 7 Un problème s’est produit lors de la création d’un répertoire pour extraire un fichier sur le disque. La propriété Path contient le répertoire qui n’a pas pu être créé. Toutes les autres propriétés sont vides ou -1.
msmErrorFeatureRequired 8 Un nom de fonctionnalité est requis pour terminer la fusion, mais aucun nom de fonctionnalité n’a été fourni. La propriété Type est définie sur msmErrorFeatureRequired. DatabaseTable et DatabaseKeys contiennent le nom de la table et les clés primaires de la ligne en conflit. Les propriétés ModuleTable et ModuleKeys contiennent le nom de la table et les clés primaires de la ligne ne peuvent pas être fusionnées. Lors de la fusion d’un module de fusion configurable, la configuration peut faire référence à ces propriétés à des lignes qui n’existent pas dans le module. Si l’échec se trouve dans une table FeatureComponents générée, les propriétés DatabaseTable et DatabaseKeys sont vides et les propriétés ModuleTable et ModuleKeys font référence à la ligne de la table Component à l’origine de l’échec.
msmErrorBadNullSubstitution 9 Substitution d’une valeur Null dans une colonne non nullable. Cette opération entre msmErrorBadNullSubstitution dans la propriété Type et entre « ModuleSubstitution » et les clés de la table ModuleSubstitution pour cette ligne dans la propriété ModuleTable et la propriété ModuleKeys . Toutes les autres propriétés de l’objet Error sont définies sur une chaîne vide ou -1.

Cette erreur entraîne l’échec immédiat de la fusion et de la fonctionMergeEx pour retourner E_FAIL.

msmErrorBadSubstitutionType 10 Substitution du type de format texte ou du type de format entier dans une colonne de données de type binaire . Ce type d’erreur renvoie msmErrorBadSubstitutionType dans la propriété Type et entre « ModuleSubstitution » et les clés de la table ModuleSubstitution pour cette ligne dans la propriété ModuleTable . Toutes les autres propriétés de l’objet Error sont définies sur une chaîne vide ou -1.

Cette erreur entraîne l’échec immédiat de la fusion et de la fonctionMergeEx pour retourner E_FAIL.

msmErrorMissingConfigItem 11 Une ligne de la table ModuleSubstitution fait référence à un élément de configuration non défini dans la table ModuleConfiguration. Ce type d’erreur renvoie msmErrorMissingConfigItem dans la propriété Type et entre « ModuleSubstitution » et les clés de la table ModuleSubstitution pour cette ligne dans la propriété ModuleTable . Toutes les autres propriétés de l’objet Error sont définies sur une chaîne vide ou -1.

Cette erreur entraîne l’échec immédiat de la fusion et de la fonctionMergeEx pour retourner E_FAIL.

msmErrorBadNullResponse 12 L’outil de création a retourné une valeur Null pour un élément marqué avec l’attribut msmConfigItemNonNullable. Une erreur de ce type renvoie msmErrorBadNullResponse dans la propriété Type et entre « ModuleSubstitution » et les clés de la table ModuleSubstitution pour l’élément dans la propriété ModuleTable . Toutes les autres propriétés de l’objet Error sont définies sur une chaîne vide ou -1.

Cette erreur entraîne l’échec immédiat de la fusion et de la fonctionMergeEx pour retourner E_FAIL.

msmErrorDataRequestFailed 13 L’outil de création a retourné un code d’échec (pas S_OK ni S_FALSE) lorsqu’il lui a demandé de entrer des données. Une erreur de ce type renvoie msmErrorDataRequestFailed dans la propriété Type et entre « ModuleSubstitution » et les clés de la table ModuleSubstitution pour l’élément dans la propriété ModuleTable . Toutes les autres propriétés de l’objet Error sont définies sur une chaîne vide ou -1.

Cette erreur entraîne l’échec immédiat de la fusion et de la fonctionMergeEx pour retourner E_FAIL.

msmErrorPlatformMismatch 14 Indique qu’une tentative de fusion d’un module 64 bits dans un package qui n’était pas un package 64 bits a été effectuée. Une erreur de ce type renvoie msmErrorPlatformMismatch dans la propriété Type . Toutes les autres propriétés de l’objet d’erreur sont définies sur une chaîne vide ou -1. Cette erreur provoque l’échec immédiat de la fusion et entraîne le retour de la fonction Merge ou de la fonction MergeEx E_FAIL.

Valeur retournée

Cette méthode peut retourner l’une de ces valeurs.

Valeur Signification
E_INVALIDARG
ErrorType a la valeur Null.
S_OK
La fonction a réussi.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Mergemod.dll 2.0 ou ultérieur
Plateforme cible Windows
En-tête mergemod.h
DLL Mergemod.dll

Voir aussi

Automatisation des modules de fusion