Partager via


Méthode IMsmMerge::Merge (mergemod.h)

La méthode Merge exécute une fusion de la base de données active et du module actif. La fusion joint les composants du module à la fonctionnalité identifiée par Fonctionnalité. La racine de l’arborescence de répertoires du module est redirigée vers l’emplacement donné par RedirectDir. Pour plus d’informations, consultez la méthode Merge de l’objet Merge .

IMsmMerge2::Merge Mergemod.dll version 2.0 ou ultérieure.

 
IMsmMerge::Merge Toutes les versions Mergemod.dll.

Syntaxe

HRESULT Merge(
  [in] const BSTR Feature,
  [in] const BSTR RedirectDir
);

Paramètres

[in] Feature

Nom d’une fonctionnalité dans la base de données. Une LPCWSTR peut être utilisée à la place d’un BSTR.

[in] RedirectDir

Clé d’une entrée dans la table Répertoire de la base de données. Une LPCWSTR peut être utilisée à la place d’un BSTR. Ce paramètre peut être null ou une chaîne vide.

Valeur retournée

La fonction Merge retourne les valeurs suivantes.

Valeur Signification
E_FAIL
La fusion a échoué de manière catastrophique. Cela indique une erreur opérationnelle et n’est pas le retour d’erreur normal pour une fusion ayant échoué.
S_FALSE
La fonction a réussi, mais il y a eu des erreurs et la fusion elle-même peut ne pas être valide.
E_INVALIDARG
L’un des arguments n’est pas valide.
E_OUTOFMEMORY
Le système a manqué de mémoire et n’a pas pu terminer l’opération.
S_OK
La fonction a réussi.

Notes

Cette fonction exécute une fusion de la base de données actuelle et du module actuel. La racine de l’arborescence de répertoires du module est redirigée vers l’emplacement donné par RedirectDir. Si des conflits de fusion se produisent, y compris des exclusions, ils sont placés dans l’énumérateur d’erreur pour une récupération ultérieure, mais ne provoque pas l’échec de la fusion. Les erreurs peuvent être récupérées à l’aide de la fonction get_Errors . Les erreurs et les messages d’information sont publiés dans le fichier journal actuel.

Notez que la fonction Merge obtient toutes les références de fonctionnalité dans le module et remplace la référence de fonctionnalité pour toutes les occurrences du GUID null dans la base de données de module. Pour plus d’informations, consultez Référencement de fonctionnalités dans les modules de fusion.

Une fois la fusion terminée, les composants du module sont attachés à la fonctionnalité identifiée par Fonctionnalité. Cette fonctionnalité doit déjà exister et n’est pas créée.

Le module peut être attaché à des fonctionnalités supplémentaires à l’aide de la fonction Connect . Notez que l’appel de la fonction Connect crée uniquement des associations de composants de fonctionnalité. Elle ne modifie pas les lignes qui ont déjà été fusionnées dans la base de données.

Les modifications apportées à la base de données ne sont pas enregistrées sur le disque, sauf si la fonction CloseDatabase est appelée avec bCommit défini sur TRUE.

Spécifications

   
Client minimal pris en charge Mergemod.dll 1.0 ou version ultérieure
Plateforme cible Windows
En-tête mergemod.h
DLL Mergemod.dll

Voir aussi

Automatisation des modules de fusion