Skip to Content
新しいバージョン 12 を公開しました 🎉

ClickOnce デプロイ

ClickOnce デプロイでは、Compile ステップの直後にターゲットアセンブリを難読化するように Babel タスクを設定します。

Visual Studio の「.csproj」ファイルを開き、Project の終了要素の前に次の MSBuild の記述を追加します。

<UsingTask TaskName="Babel" AssemblyName="Babel.Build, Version=10.0.0.0, Culture=neutral, PublicKeyToken=138d17b5bd621ab7" /> <Target Name="Obfuscate" AfterTargets="Compile" Condition="'$(Configuration)|$(Platform)' == 'Release|AnyCPU'"> <Babel InputFile="$(ProjectDir)$(IntermediateOutputPath)$(TargetFileName)" OutputFile="$(ProjectDir)$(IntermediateOutputPath)$(TargetFileName)" ObfuscateTypes="true" ObfuscateEvents="true" ObfuscateMethods="true" ObfuscateProperties="true" ObfuscateFields="true" VirtualFunctions="true" UnicodeNormalization="true" FlattenNamespaces="true" OverloadedRenaming="true" StringEncryption="hash" ControlFLowObfuscation="if=on;switch=on;case=on;call=on" ControlFLowIterations="3" /> </Target>

タスクの InputFile 属性と OutputFile 属性に、ビルドの中間出力を設定している点に注意してください。これにより、Visual Studio は難読化されたターゲットアセンブリを使って ClickOnce のデプロイ可能なパッケージを作成できます。

Babel Obfuscator の NuGet パッケージ
Babel.Obfuscator NuGet パッケージをお持ちの場合は、プロジェクトファイルで Babel タスクをセットアップする必要はありません。プロジェクトに NuGet パッケージ参照を追加するだけで済みます。

サンプルのソースコードをダウンロード できます。

Last updated on