次の方法で共有


IMsmError::get_Type メソッド (mergemod.h)

get_Type メソッドは、Error オブジェクトの Type プロパティを取得します。 このメソッドは、このオブジェクトによって表されるエラーの種類を示す msmErrorType 値を返します。

構文

HRESULT get_Type(
  [out] msmErrorType *ErrorType
);

パラメーター

[out] ErrorType

エラーの種類を受け取るメモリ内の場所へのポインター。

msmErrorType 説明
msmErrorLanguageUnsupported 1 モジュールでサポートされていない言語でモジュールを開く要求が行われました。 モジュールでは、それ以上の一般的な言語はサポートされていません。 MsmErrorLanguageUnsupported を Type プロパティに追加し、要求された言語を Language プロパティ (Error Object) に追加しますError オブジェクトのプロパティはすべて空です。 OpenModule 関数は、(HRESULT として) ERROR_INSTALL_LANGUAGE_UNSUPPORTEDを返します。
msmErrorLanguageFailed 2 サポートされている言語でモジュールを開く要求が行われましたが、モジュールに無効な言語変換があります。 MsmErrorLanguageFailed を Type プロパティに追加し、適用された変換の言語を Error オブジェクトの Language プロパティに追加します。 より一般的な言語を使用した場合、これは要求された言語ではない可能性があります。 Error オブジェクトのその他のプロパティはすべて空です。 OpenModule 関数は、(HRESULT として) ERROR_INSTALL_LANGUAGE_UNSUPPORTEDを返します。
msmErrorExclusion 3 このモジュールは、データベース内の別のモジュールを除外または除外するため、マージできません。 Error オブジェクトの Type プロパティに msmErrorExclusion を追加します。 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 プロパティは、エラーの原因となっている Component テーブル の行を参照します。
msmErrorBadNullSubstitution 9 Null 値を null 非許容列に置き換えます。 これにより、 Type プロパティに msmErrorBadNullSubstitution が入力され、"ModuleSubstitution" と入力され、この行の ModuleSubstitution テーブル のキーが ModuleTable プロパティと ModuleKeys プロパティに入力されます。 Error オブジェクトの他のすべてのプロパティは、空の文字列または -1 に設定されます。

このエラーにより、マージと MergeEx関数 の即時エラーが発生して、E_FAILが返されます。

msmErrorBadSubstitutionType 10 テキスト形式の種類または整数形式の型バイナリ型のデータ列に置き換えます。 この種類のエラーは 、Type プロパティに msmErrorBadSubstitutionType を返し、"ModuleSubstitution" と入力し、この行の ModuleSubstitution テーブル のキーを ModuleTable プロパティに入力します。 Error オブジェクトの他のすべてのプロパティは、空の文字列または -1 に設定されます。

このエラーにより、マージと MergeEx関数 の即時エラーが発生して、E_FAILが返されます。

msmErrorMissingConfigItem 11 ModuleSubstitution テーブルの行は、ModuleConfiguration テーブルで定義されていない構成項目を参照します。 この種類のエラーは 、Type プロパティで msmErrorMissingConfigItem を返し、"ModuleSubstitution" と、この行の ModuleSubstitution テーブル のキーを ModuleTable プロパティに入力します。 Error オブジェクトの他のすべてのプロパティは、空の文字列または -1 に設定されます。

このエラーにより、マージと MergeEx関数 の即時エラーが発生して、E_FAILが返されます。

msmErrorBadNullResponse 12 作成ツールは、msmConfigItemNonNullable 属性でマークされたアイテムの Null 値を返しました。 この型のエラーは 、Type プロパティで msmErrorBadNullResponse を返し、"ModuleSubstitution" と項目の ModuleSubstitution テーブル のキーを ModuleTable プロパティに入力します。 Error オブジェクトの他のすべてのプロパティは、空の文字列または -1 に設定されます。

このエラーにより、マージと MergeEx関数 の即時エラーが発生して、E_FAILが返されます。

msmErrorDataRequestFailed 13 作成ツールは、データの入力を求められたときにエラー コード (S_OKまたはS_FALSEではありません) を返しました。 この型のエラーは 、Type プロパティで msmErrorDataRequestFailed を返し、"ModuleSubstitution" と項目の ModuleSubstitution テーブル のキーを ModuleTable プロパティに入力します。 Error オブジェクトの他のすべてのプロパティは、空の文字列または -1 に設定されます。

このエラーにより、マージと MergeEx関数 の即時エラーが発生して、E_FAILが返されます。

msmErrorPlatformMismatch 14 64 ビット モジュールを 64 ビット パッケージではないパッケージにマージしようとしたことを示します。 この型のエラーは 、Type プロパティで msmErrorPlatformMismatch を返します。 エラー オブジェクトの他のすべてのプロパティは、空の文字列または -1 に設定されます。 このエラーにより、マージの即時エラーが発生し、 Merge 関数または MergeEx 関数がE_FAILを返します。

戻り値

このメソッドは、これらの値のいずれかを返すことができます。

意味
E_INVALIDARG
ErrorType が Null です。
S_OK
関数が正常に実行されました。

要件

要件
サポートされている最小のクライアント Mergemod.dll 2.0 以降
対象プラットフォーム Windows
ヘッダー mergemod.h
[DLL] Mergemod.dll

こちらもご覧ください

マージ モジュールのオートメーション