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


Метод IMsmError::get_Type (mergemod.h)

Метод get_Type извлекает свойство Type объекта Error . Этот метод возвращает значение msmErrorType, указывающее тип ошибки, представленной этим объектом.

Синтаксис

HRESULT get_Type(
  [out] msmErrorType *ErrorType
);

Параметры

[out] ErrorType

Указатель на расположение в памяти, которое получает тип ошибки.

msmErrorType Значение Описание
msmErrorLanguageUnsupported 1 Был сделан запрос на открытие модуля с языком, который не поддерживается модулем. Модуль не поддерживает более общий язык. Добавляет msmErrorLanguageUnsupported в свойство Type, а запрошенный язык — в свойство Языка (объект ошибки). Все свойства объекта Error пусты. Функция OpenModule возвращает ERROR_INSTALL_LANGUAGE_UNSUPPORTED (как HRESULT).
msmErrorLanguageFailed 2 Был сделан запрос на открытие модуля с поддерживаемым языком, но модуль имеет недопустимое преобразование языка. Добавляет msmErrorLanguageFailed в свойство Type, а язык примененного преобразования — в свойство Language объекта Error . Этот язык может не быть запрошенным, если использовался более общий язык. Все остальные свойства объекта Error пусты. Функция OpenModule возвращает ERROR_INSTALL_LANGUAGE_UNSUPPORTED (как HRESULT).
msmErrorExclusion 3 Невозможно объединить модуль, так как он исключает или исключает другой модуль в базе данных. Добавляет msmErrorExclusion в свойство Type объекта Error . Свойство ModuleKeys или DatabaseKeys содержит первичные ключи строки исключенного модуля в таблице ModuleExclusion. Если существующий модуль исключает объединяемый модуль, сведения о moduleSignature исключенного модуля добавляются в ModuleKeys. Если объединенный модуль исключает существующий модуль, DatabaseKeys содержит сведения о moduleSignature исключенного модуля. Все остальные свойства пусты (или -1).
msmErrorTableMerge 4 Конфликт слияния во время слияния. Для свойства Type задано значение msmErrorTableMerge. Свойства DatabaseTable и DatabaseKeys содержат имя таблицы и первичные ключи конфликтующей строки в базе данных. Свойства ModuleTable и ModuleKeys содержат имя таблицы и первичные ключи конфликтующей строки в модуле. Записи ModuleTable и ModuleKeys могут иметь значение NULL, если строка не существует в базе данных. Например, если конфликт находится в созданной записи таблицы FeatureComponents. При слиянии настраиваемого модуля слияния конфигурация может привести к тому, что эти свойства будут ссылаться на строки, которые не существуют в модуле.
msmErrorResequenceMerge 5 Возникла проблема повторного запроса таблицы последовательностей для размещения необходимых объединенных действий. Для свойства Type задано значение msmErrorResequenceMerge. Свойства DatabaseTable и DatabaseKeys содержат имя таблицы последовательности и первичные ключи (имя действия) конфликтующей строки. Свойства ModuleTable и ModuleKeys содержат имя таблицы последовательностей и первичный ключ (имя действия) конфликтующей строки. При слиянии настраиваемого модуля слияния конфигурация может привести к тому, что эти свойства будут ссылаться на строки, которые не существуют в модуле.
msmErrorFileCreate 6 Не используется.
msmErrorDirCreate 7 Возникла проблема при создании каталога для извлечения файла на диск. Свойство Path содержит каталог, который не удалось создать. Все остальные свойства пусты или -1.
msmErrorFeatureRequired 8 Для завершения слияния требуется имя компонента, но имя компонента не указано. Для свойства Type задано значение msmErrorFeatureRequired. Таблицы DatabaseTable и DatabaseKeys содержат имя таблицы и первичные ключи конфликтующей строки. Свойства ModuleTable и ModuleKeys содержат имя таблицы и первичные ключи строки не могут быть объединены. При слиянии настраиваемого модуля слияния конфигурация может привести к тому, что эти свойства будут ссылаться на строки, которые не существуют в модуле. Если сбой находится в созданной таблице FeatureComponents, свойства DatabaseTable и DatabaseKeys пусты, а свойства ModuleTable и ModuleKeys ссылаются на строку в таблице Компонент , вызывающую сбой.
msmErrorBadNullSubstitution 9 Подстановка значения NULL в столбец, не допускающий значения NULL. При этом в свойстве Type будет введено значение msmErrorBadNullSubstitution, а ключи из таблицы ModuleSubstitution для этой строки — в свойства ModuleTable и ModuleKeys . Для всех остальных свойств объекта Error задана пустая строка или -1.

Эта ошибка приводит к немедленному сбою при слиянии и функцииMergeEx для возврата E_FAIL.

msmErrorBadSubstitutionType 10 Подстановка типа текстового формата или типа целочисленного формата в столбец данных двоичного типа . Этот тип ошибки возвращает msmErrorBadSubstitutionType в свойстве Type и вводит "ModuleSubstitution" и ключи из таблицы ModuleSubstitution для этой строки в свойство ModuleTable . Для всех остальных свойств объекта Error задана пустая строка или -1.

Эта ошибка приводит к немедленному сбою при слиянии и функцииMergeEx для возврата E_FAIL.

msmErrorMissingConfigItem 11 Строка в таблице ModuleSubstitution ссылается на элемент конфигурации, не определенный в таблице ModuleConfiguration. Этот тип ошибки возвращает msmErrorMissingConfigItem в свойстве Type и вводит "ModuleSubstitution" и ключи из таблицы ModuleSubstitution для этой строки в свойство ModuleTable . Для всех остальных свойств объекта Error задана пустая строка или -1.

Эта ошибка приводит к немедленному сбою при слиянии и функцииMergeEx для возврата E_FAIL.

msmErrorBadNullResponse 12 Средство разработки вернуло значение NULL для элемента, помеченного атрибутом msmConfigItemNonNullable. Ошибка этого типа возвращает msmErrorBadNullResponse в свойстве Type и вводит "ModuleSubstitution" и ключи из таблицы ModuleSubstitution для элемента в свойство ModuleTable . Для всех остальных свойств объекта Error задана пустая строка или -1.

Эта ошибка приводит к немедленному сбою при слиянии и функцииMergeEx для возврата E_FAIL.

msmErrorDataRequestFailed 13 Средство разработки вернуло код сбоя (не S_OK или S_FALSE) при запросе данных. Ошибка этого типа возвращает msmErrorDataRequestFailed в свойстве Type и вводит "ModuleSubstitution" и ключи из таблицы ModuleSubstitution для элемента в свойство ModuleTable . Для всех остальных свойств объекта Error задана пустая строка или -1.

Эта ошибка приводит к немедленному сбою при слиянии и функцииMergeEx для возврата E_FAIL.

msmErrorPlatformMismatch 14 Указывает, что предпринята попытка объединить 64-разрядный модуль в пакет, который не был 64-разрядным пакетом. Ошибка этого типа возвращает msmErrorPlatformMismatch в свойстве Type . Для всех остальных свойств объекта ошибки задана пустая строка или -1. Эта ошибка вызывает немедленный сбой слияния и приводит к тому, что функция Merge или MergeEx возвращает E_FAIL.

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

Этот метод может возвращать одно из этих значений.

Значение Значение
E_INVALIDARG
ErrorType имеет значение NULL.
S_OK
Функция выполнена успешно.

Требования

Требование Значение
Минимальная версия клиента Mergemod.dll 2.0 или более поздней версии
Целевая платформа Windows
Header mergemod.h
DLL Mergemod.dll

См. также раздел

Автоматизация модуля слияния