Поделиться через


Метод Merge.MergeEx

Метод MergeEx объекта Merge эквивалентен функции Merge , за исключением того, что он принимает дополнительный аргумент. Аргумент pConfiguration — это интерфейс, реализованный клиентом. Аргумент может иметь значение NULL. Наличие этого аргумента указывает на то, что клиент может поддерживать функциональность конфигурации, но не обязывает клиента предоставлять данные конфигурации для какого-либо конкретного настраиваемого элемента.

Метод Merge выполняет слияние текущей базы данных и текущего модуля. Слияние присоединяет компоненты в модуле к функции, определяемой компонентом . Корень дерева каталогов модуля перенаправляется в расположение, заданное RedirectDir.

Синтаксис

Merge.MergeEx(
  Feature,
  RedirectDir,
  pConfiguration
)

Параметры

Компонент

Имя компонента в базе данных.

RedirectDir

Ключ записи в таблице Directory базы данных. Этот параметр может иметь значение NULL или пустую строку.

pConfiguration

Аргумент pConfiguration — это интерфейс, реализованный клиентом. Аргумент может иметь значение NULL. Наличие этого аргумента указывает на то, что клиент может поддерживать функциональность конфигурации, но не обязывает клиента предоставлять данные конфигурации для какого-либо конкретного настраиваемого элемента.

Возвращаемое значение

Этот метод не возвращает значение.

Комментарии

После завершения слияния компоненты в модуле присоединяются к компоненту, определяемой компонентом . Эта функция не создается и должна быть существующей. Модуль может быть присоединен к дополнительным функциям с помощью метода Connect .

Изменения, внесенные в базу данных, сохраняются только в том случае, если метод CloseDatabase вызывается с параметром bCommit , равным TRUE.

Если возникают какие-либо конфликты слияния, включая исключения, они помещаются в перечислитель ошибок для последующего извлечения, но не приводят к сбою слияния. Ошибки можно получить с помощью свойства Errors . Сообщения об ошибках и информационные сообщения публикуются в текущем файле журнала.

Если слияние завершается сбоем из-за неправильной конфигурации модуля, функция MergeEx возвращает E_FAIL. Сюда входят ошибки msmErrorType: msmErrorBadNullSubstitution, msmErrorBadSubstitutionType, msmErrorBadNullResponse, msmErrorMissingConfigItem и msmErrorDataRequestFailed. Эти ошибки приводят к немедленному прекращению слияния при возникновении ошибки. Объект ошибки по-прежнему добавляется в перечислитель, когда MergeEx возвращает E_FAIL. Дополнительные сведения об ошибках msmErrorType см. в разделе Функция get_Type (объект ошибки). Все остальные ошибки приводят к тому, что MergeEx возвращает S_FALSE и приводит к продолжению слияния.

C++

См. раздел Функция MergeEx .

Требования

Требование Значение
Версия
Mergemod.dll 2.0 или более поздней версии
Заголовок
Mergemod.h
DLL
Mergemod.dll