MSBUILD动态创建配置XML Dotfuscator
我试图混淆目录中的一堆文件,每次构建都会生成越来越多的文件。我想知道是否有一种方法可以使用MSBUILD任务动态创建Dotfuscator配置xml文件,该任务将在每次向目录添加新文件时生成xml文件?这可能是使用。这种类型的Dotfuscator输入捕获目录中的所有程序集,而不是表示单个程序集(MSBUILD动态创建配置XML Dotfuscator,msbuild,obfuscation,msbuild-task,msbuildcommunitytasks,dotfuscator,Msbuild,Obfuscation,Msbuild Task,Msbuildcommunitytasks,Dotfuscator,我试图混淆目录中的一堆文件,每次构建都会生成越来越多的文件。我想知道是否有一种方法可以使用MSBUILD任务动态创建Dotfuscator配置xml文件,该任务将在每次向目录添加新文件时生成xml文件?这可能是使用。这种类型的Dotfuscator输入捕获目录中的所有程序集,而不是表示单个程序集(.exe或.dll)。当目录内容更改时,Dotfuscator的构建将自动拾取任何新程序集 要使用目录输入创建Dotfuscator配置文件,请打开GUI并像通常那样添加输入(方向和),但不要从浏览菜单
.exe
或.dll
)。当目录内容更改时,Dotfuscator的构建将自动拾取任何新程序集
要使用目录输入创建Dotfuscator配置文件,请打开GUI并像通常那样添加输入(方向和),但不要从浏览菜单中选择文件。。。对话框中,只需导航到目录并单击“打开”,而“文件名”仍列为“文件夹选择”。然后,保存您的配置
从现在起,无论何时运行Dotfuscator(无论是从独立GUI、命令行、Visual Studio集成还是MSBuild任务),目录中的所有程序集都将作为输入进行处理
注意:如果查看配置文件本身,您可能会惊讶于它仍然会列出各个程序集:
<input>
<loadpaths />
<asmlist>
<package refid="19e1b0c5-7221-476f-af4b-bafef68edc95">
<file dir="C:\code\BasicTestApp\BasicTestApp\bin" name="Debug" />
<asmlist>
<inputassembly refid="a6da5d8d-c181-4103-840d-d8cc7c85937a">
<option>honoroas</option>
<option>stripoa</option>
<option>transformxaml</option>
<file dir="" name="BasicTestApp.exe" />
</inputassembly>
<inputassembly refid="df84dad0-fbe8-49ab-b8c8-9fb59e706785">
<option>honoroas</option>
<option>stripoa</option>
<option>library</option>
<option>transformxaml</option>
<file dir="" name="ClassLibrary.dll" />
</inputassembly>
</asmlist>
</package>
</asmlist>
</input>
最新的Dotfuscator版本4.41.1具有最新标志 真的
如果文件丢失,这将生成Dotfuscator配置文件。此外,您还可以将其添加到csproj中,如最新的入门指南所述感谢您的回复。现在它带来了另一个问题,所以我不想混淆文件夹中的所有dll,因为我正在使用的一些.dll是第三方的,它们已经混淆了。所以我感兴趣的一个可以复制到另一个位置,使用Dotfuscator混淆它们,然后在创建包之前将它们复制回来?《用户指南》中的任何地方是否有针对dotfuscator目录支持的任何示例msbuild任务?@varun7447我在回答中添加了一条注释,我认为这将回答您评论中的第一个问题。我建议使用它描述的方法,而不是复制一些DLL,因为这样您就必须配置一个自定义程序集加载路径(模糊化的DLL将引用已排除的DLL,它们不再位于同一目录中)。至于关于MSBuild支持的第二个问题,本例中没有具体的示例,但是由于包是配置文件的一个功能,您可以将配置文件的路径传递给Dotfuscate任务的ConfigPath属性。这非常有用。谢谢你的及时回复。
<option>artifact</option>