5

Visual Studio 2010 で WiX 3.x を使用して、「MyCustomActions」という名前の Windows インストーラー XML「C# カスタム アクション プロジェクト」を作成すると、次のファイルが生成されます。

「CustomAction.config」、「CustomAction.cs」、およびプロジェクト ファイル「MyCustomActions.csproj」。

会社名を含むアセンブリ命名スキームを使用するため、アセンブリ名を次のように変更します: CompanyName.ProductName.MyCustomActions

同時に、CustomActions クラスの既定の名前空間と実際の名前空間を CompanyName.ProductName.MyCustomActions に変更し、 assemblyname と一致させます。

他のファイル名やクラス名を変更せずにこれを行ってもよろしいですか?

私が疑問に思っているのは、「CustomAction.config」ファイルの使用です。その名前は、何らかの方法で出力アセンブリ名に関連付ける必要がありますか? 「CustomAction.config」がどのように使用されるかはわかりません。

また、「CustomAction.cs」ファイルには「CustomActions」(複数形であることに注意) というクラスが含まれており、命名規則では、クラスのコード ファイルはクラス自体と同じ名前にする必要があるため、名前を変更したいと考えています。コード ファイルを「CustomActions.cs」に追加します。大丈夫だと確信しています...そうですか?

最後に、CustomAction クラスの名前を別の名前に変更してもよろしいでしょうか? 繰り返しますが、「CustomAction.config」との関係だけが気になります。

これらの質問はすべて 1 つにまとめることができると思います。「CustomAction.config」ファイルの名前と、残りの名前空間、アセンブリ、およびクラス名との関係は何ですか?

それに対する答えがあれば、以前のすべての質問に答えることができます。

4

2 に答える 2

6

WIX カスタム アクション プロジェクトの場合、クラス、アセンブリ、名前空間などの名前に関係なく、構成ファイルは常に「CustomAction.config」という名前 (WIX でハードコードされていると考えてください) であり、ファイル内のビルド アクションである必要があります。 VS のプロパティは「Content」に設定する必要があります。プロジェクトの他のものについては、そのような要件はありません。

この構成ファイルは、サポートされている CLR バージョン (実際には推奨されています) を指定でき、カスタム アクション DLL が必要とする追加の構成を含めることができます。

dll は、標準の .Net アプリ構成 API を使用して、これらの追加の構成設定を読み取ることができます。

于 2012-08-30T10:14:19.323 に答える
0

構成ファイルを使用して、コンパイル済みフレームワークとともに他の .NET フレームワークでアプリケーションを実行しました。たとえば、CLR 2.0 (.NET Framework 2.0 または 3.5) を使用する場合、そのアプリケーションは .NET Framework 4.0 だけがインストールされたマシンでは実行されませんでした。その場合、configure ファイルに以下のコードを設定し、configure ファイルをアプリケーションとともに配置すると、Framework 4.0 のみがインストールされたマシンで実行されます。

<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v2.0.50727"/>
<supportedRuntime version="v4.0"/>

ここで構成ファイルを使用するのと同じ理由を願っています。

于 2012-08-23T04:16:11.127 に答える