1

.msi我有一个在构建时生成的安装程序项目。在预构建事件中,我正在调用Confuser.CLI.exe混淆代码,但exe正在异步工作并且花费太多时间,并且编译器之前完成exe,所以我有.msiDLLs的然后何时.msi生成,新DLLs的覆盖旧的。我什至尝试了构建后事件,但得到了相同的结果。

4

1 回答 1

0

在安装程序项目 -.wixproj中,我放置了 2 个将执行不同命令的目标:

  <Target Name="ConfuserExScript" AfterTargets="CopyReferencedProjects">
    <Exec Command="Powershell.exe -executionpolicy remotesigned -File &quot;$(SolutionDir)Installers\Scripts\Build\PostBuild_RunConfuserEx.ps1&quot; &quot;$(SolutionDir)\&quot;" />
  </Target>

  <Target Condition=" '$(ConfigurationName)' == 'ReleaseDC' " Name="Obfuscator" AfterTargets="ConfuserExScript">
    <Exec Command="$(SolutionDir)Installers\ConfuserEx\Confuser.CLI.exe $(ProjectDir)ConfuserOutput.crproj" />
  </Target>

第一个是收集 DLL 和创建crproj文件ConfuserEx,第二个是运行Confuser.CLI.exe和混淆代码。重要的是我使用afterTargets了所以第二行在第一行完成后执行。

于 2021-06-04T07:08:20.567 回答