Component エレメント

説明
親ディレクトリーのためのコンポーネント。
Windows Installer リファレンス
Component Table, Condition Table, Directory Table
ComponentGroup, Directory, DirectoryRef, Feature, FeatureGroup, FeatureRef, Fragment, Module, Product
タグの内部テキスト
なし
エレメントの選択 (最小:0, 最大:無制限)
属性
名前 タイプ 説明 必須
Id String コンポーネント識別子。これは、コンポーネントを識別するためのプライマリキーです。 Yes
ComPlusFlags Integer ComPlus エントリーを作成するために、この属性を設定します。 値は、.msi ファイルの生成の間に使われるエクスポートフラグであるべきです。 詳細については、プラットフォーム SDK の COM+ ドキュメンテーションを見て下さい。  
Directory String コンポーネントのディレクトリーを設定します。 もしこのエレメントが Directory エレメントの下にネストされるならば、この値は親 Directory/@Id の値がデフォルトになります。  
DisableRegistryReflection YesNoType このコンポーネントにより影響されるすべての既存と新しいレジストリーキーでのレジストリー反映を抑制するために、この属性を 'yes' に設定します。 'yes' に設定される時には、Windows Installer は、コンポーネントによりアクセスされている個々のキーの RegDisableReflectionKey を呼びます。 このビットは Windows Installer バージョン 4.0 で利用可能で、32 ビットシステムにおいては無視されます。  
DiskId Integer この属性は、子のすべての File エレメントの為の デフォルト DiskId 属性を 提供します。 Component エレメントにおいて DiskId 属性を指定する事は、親の Directory や DirectoryRef エレメントによって セットされた あらゆる DiskId 属性を オーバーライドします。DiskId の目的についての詳細に関しては File エレメントの DiskId 属性を見て下さい。  
Feature String Feature エレメントの子 ComponentRef エレメントの略記のように、このコンポーネントが属しているフィーチャーを識別します。 この属性の値は、他の場所に書かれた Feature エレメントの Id 属性と一致しているべきです。 単一のコンポーネントが複数のフィーチャーに属する事ができるけれど、この属性は単一のフィーチャーだけに指定することが可能である事に注意して下さい。  
Guid ComponentGuid この値は、このコンポーネントの内容、言語、プラットフォーム、バージョンをユニークに識別する guid であるべきです。 アンマネージドコンポーネントを指定するために値を空の文字列に設定することも可能です。 アンマネージドコンポーネントは、コンポーネントが Windows Installer によって削除や修復できない(本質的にパッチ不可能で、永続的なコンポーネントである)ので、セキュリティ弱点です。 従って、guid は、将来パッチを当てられる必要があるかもしれないリソースを含んでいるどのようなコンポーネントのためにも 常に指定されるべきです。 Yes
KeyPath YesNoType もしこの属性の値が 'yes' に設定されるなら、このコンポーネントのディレクトリーが KeyPath として使われます。 レジストリキーやファイルをコンポーネントの KeyPath にセットするには、KeyPath 属性をそれら子エレメントのうちの 1 つで 'yes' に設定します。  
Location Enumeration コンポーネントが実行され得る場所を指定する オプションの値。 この属性の値は以下の内の1つでなければなりません:
local
コンポーネントがソースまたはネットワークから動くことを防止します(もしこの属性が設定されないなら、これがデフォルト動作です)。
source
コンポーネントがソースからだけ実行され得る(ユーザーのコンピュータから実行され得ない)ように強制します。
either
コンポーネントがソースからまたはローカルで動くことを許可します。
 
NeverOverwrite YesNoType もしこの属性が 'yes' に設定されるならば、もしすでにコンポーネントのためのキーパスファイルまたはキーパスレジストリー入力が存在するなら、インストーラーはコンポーネントをインストールや再インストールしません。 アプリケーションはコンポーネントのクライアントとして自身を登録します。 Registry テーブルにより登録されているコンポーネントのためだけにこのフラグを使って下さい。 AppId、Class、Extension、ProgId、MIME、Verb テーブルにより登録されるコンポーネントのためにこのフラグを使わないで下さい。  
Permanent YesNoType もしこの属性が 'yes' に設定されるなら、インストーラーはアンインストールの間にコンポーネントを削除しません。 インストーラーは、Windows Installer レジストリー設定においてエクストラ システムクライアントをコンポーネントに登録します(基本的に、少なくとも 1 つのプロダクトがこのコンポーネントを常に参照していると言う事を意味しているだけです)。 このオプションが、guid をセットしない動作とは違うことに注意してください。コンポーネントは永続的だけれど、(Windows Installer がまだそれを追跡しているので)まだパッチ可能で、アンインストール可能ではないだけだからです。  
Shared YesNoType もしこの属性の値が 'yes' に設定されるなら、複数のプロダクトをまたいで共有されるコンポーネントのための高度なパッチの意味を可能にします。 とりわけ、Windows Installer は、パッチアンインストールを向上するために、共有されたファイルをキャッシュします。 この機能は Windows Installer 4.5 以降で利用可能です。  
SharedDllRefCount YesNoType もしこの属性の値が 'yes' に設定されるなら、インストーラーは、コンポーネントのキーファイルの共有 DLL レジストリーでの参照カウントをインクリメントします。 もしこのビットがセットされないなら、すでに参照カウントが存在する時にだけ、インストーラーは参照カウントをインクリメントします。  
Transitive YesNoType もしこの属性が 'yes' に設定されるなら、インストーラーは再インストールにおいて条件のステートメントの値を再評価します。 もし以前に値が False で True に変わったなら、インストーラーはコンポーネントをインストールします。 もし以前に値が True で False に変わったなら、たとえコンポーネントが他のプロダクトをクライアントとして持っていても、インストーラーはコンポーネントを削除します。  
UninstallWhenSuperseded YesNoType もしこの属性が 'yes' に設定されるなら、パッチによってコンポーネントのファイルとレジストリキーが取って換わられる時には、インストーラーはそれをアンインストールします。 この機能は Windows Installer 4.5 以降で利用可能です。  
Win64 YesNoType これを 64 ビットコンポーネントとしてマークするために、この属性を 'yes' に設定します。 この属性は、32 ビットと 64 ビットの両方のコンポーネントを含むパッケージのインストールを容易にします。 もしこのビットがセットされないなら、コンポーネントは 32 ビットコンポーネントとして登録されます。 もしこれが 32 ビットコンポーネントに取って換わる 64 ビットコンポーネントであるなら、このビットをセットし、Guid 属性に新しい GUID を割り当てます。  
Any attribute namespace='##other' processContents='lax'
How To と例
See Also
Wix Schema, ComponentRef, Media