Méthode IMsmMerge2::MergeEx (mergemod.h)
La méthode MergeEx exécute une fusion de la base de données active et du module actuel. 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 MergeEx de l’objet Merge .
Syntaxe
HRESULT MergeEx(
[in] const BSTR Feature,
[in] const BSTR RedirectDir,
[in] IUnknown *pConfiguration
);
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.
[in] pConfiguration
L’argument pConfiguration est une interface implémentée par le client. L’argument peut être NULL. La présence de cet argument indique que l’outil client est capable de modifier des modules de fusion configurables. La présence de cet argument ne nécessite pas que le client fournisse des données de configuration pour un élément configurable spécifique.
Valeur retournée
Cette méthode peut retourner l’une de ces valeurs.
Valeur | Signification |
---|---|
|
Le système a manqué de mémoire et n’a pas pu terminer l’opération. |
|
L’un des arguments n’est pas valide. |
|
La fusion a été arrêtée en raison d’une erreur. Certaines tables n’ont peut-être pas été fusionnées. Pour plus d'informations, consultez la section Notes. |
|
La fonction a réussi, mais il y a eu des erreurs et la fusion elle-même peut ne pas être valide. |
|
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 get_Errors fonction. Les erreurs et les messages d’information seront publiés dans le fichier journal actuel.
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 .
Les modifications apportées à la base de données ne seront pas enregistrées sur le disque, sauf si la fonction CloseDatabase est appelée avec bCommit défini sur TRUE.
Lorsque la fusion échoue en raison d’une configuration de module incorrecte, la fonction retourne E_FAIL. Cela inclut les erreurs msmErrorType suivantes : msmErrorBadNullSubstitution, msmErrorBadSubstitutionType, msmErrorBadNullResponse, msmErrorMissingConfigItemet msmErrorDataRequestFailed. Ces erreurs entraînent l’arrêt de la fusion immédiatement lorsque l’erreur est rencontrée. L’objet error est toujours ajouté à l’énumérateur lorsque MergeEx retourne E_FAIL. Pour plus d’informations sur les erreurs msmErrorType, consultez get_Type Function (Error Object). Toutes les autres erreurs entraînent le retour de MergeEx S_FALSE et entraînent la poursuite de la fusion.
Spécifications
Client minimal pris en charge | Mergemod.dll 2.0 ou ultérieur |
Plateforme cible | Windows |
En-tête | mergemod.h |
DLL | Mergemod.dll |