Compartir a través de


Método IMsmMerge2::MergeEx (mergemod.h)

El método MergeEx ejecuta una combinación de la base de datos actual y el módulo actual. La combinación asocia los componentes del módulo a la característica identificada por Feature. La raíz del árbol de directorios del módulo se redirige a la ubicación indicada por RedirectDir. Para obtener más información, vea el método MergeEx del objeto Merge .

Sintaxis

HRESULT MergeEx(
  [in] const BSTR Feature,
  [in] const BSTR RedirectDir,
  [in] IUnknown   *pConfiguration
);

Parámetros

[in] Feature

Nombre de una característica de la base de datos. Se puede usar un LPCWSTR en lugar de un BSTR.

[in] RedirectDir

Clave de una entrada de la tabla Directory de la base de datos. Se puede usar un LPCWSTR en lugar de un BSTR. Este parámetro puede ser NULL o una cadena vacía.

[in] pConfiguration

El argumento pConfiguration es una interfaz implementada por el cliente. El argumento puede ser NULL. La presencia de este argumento indica que la herramienta cliente es capaz de modificar los módulos de combinación configurables. La presencia de este argumento no requiere que el cliente proporcione datos de configuración para ningún elemento configurable específico.

Valor devuelto

Este método puede devolver uno de estos valores.

Valor Significado
E_OUTOFMEMORY
El sistema se quedó sin memoria y no pudo completar la operación.
E_INVALIDARG
Uno de los argumentos no es válido.
E_FAIL
La combinación se detuvo debido a un error. Es posible que algunas tablas no se hayan combinado. Vea la sección Comentarios para obtener más información.
S_FALSE
La función se realizó correctamente, pero se produjeron errores y es posible que la propia combinación no sea válida.
S_OK
La función se ha realizado correctamente.

Comentarios

Esta función ejecuta una combinación de la base de datos actual y el módulo actual. La raíz del árbol de directorios del módulo se redirige a la ubicación indicada por RedirectDir. Si se producen conflictos de combinación, como exclusiones, se colocan en el enumerador de errores para su recuperación posterior, pero no provocan un error de combinación. Los errores se pueden recuperar mediante get_Errors función. Los errores y los mensajes informativos se publicarán en el archivo de registro actual.

Una vez completada la combinación, los componentes del módulo se asocian a la característica que se identifica mediante Feature. Esta característica ya debe existir y no se ha creado. El módulo se puede asociar a características adicionales mediante la función Connect .

Los cambios realizados en la base de datos no se guardarán en el disco a menos que se llame a la función CloseDatabase con bCommit establecido en TRUE.

Cuando se produce un error en la combinación debido a una configuración de módulo incorrecta, la función devuelve E_FAIL. Esto incluye estos errores msmErrorType: msmErrorBadNullSubstitution, msmErrorBadSubstitutionType, msmErrorBadNullResponse, msmErrorMissingConfigItem y msmErrorDataRequestFailed. Estos errores provocan que la combinación se detenga inmediatamente cuando se encuentre el error. El objeto de error todavía se agrega al enumerador cuando MergeEx devuelve E_FAIL. Para más información sobre los errores msmErrorType, consulte get_Type Function (objeto Error)). Todos los demás errores hacen que MergeEx devuelva S_FALSE y que la combinación continúe.

Requisitos

   
Cliente mínimo compatible Mergemod.dll 2.0 o posterior
Plataforma de destino Windows
Encabezado mergemod.h
Archivo DLL Mergemod.dll

Consulte también

Automatización de módulos de combinación