我正在研究 Xamarin 表单项目(带有可移植项目) 我正在尝试使用 .Net Reactor 混淆可移植 dll 我已经使用一个批处理文件完成了该操作,该批处理文件设置为可移植项目的构建后事件并且一切正常(即生成的 dll 被成功混淆)这里是脚本代码
"C:\Program Files (x86)\Eziriz\.NET Reactor\dotNET_Reactor.exe" -project
"reactor.nrproj" -file "myProject.dll"
copy "myProject_Secure\myProject.dll" "myProject.dll"
问题是当我构建 droid 项目时出现以下错误
加载程序集时出现异常:System.IO.FileNotFoundException:无法加载程序集“Windows,版本=255.255.255.255,文化=中性,PublicKeyToken=”。也许它在 Mono for Android 配置文件中不存在?文件名:/Users/builder/data/lanes/5147/c2a33d8e/source/xamarin-android/external/Java 中的 Java.Interop.Tools.Cecil.DirectoryAssemblyResolver.Resolve(AssemblyNameReference 参考,ReaderParameters 参数)中的“Windows.dll” .Interop/src/Java.Interop.Tools.Cecil/Java.Interop.Tools.Cecil/DirectoryAssemblyResolver.cs:Xamarin.Android.Tasks.ResolveAssemblies.AddAssemblyReferences 的第 220 行(DirectoryAssemblyResolver 解析器,ICollection`1 程序集,AssemblyDefinition 程序集,布尔值topLevel) 在 Xamarin.Android.Tasks.ResolveAssemblies。
我确信问题来自混淆,因为没有混淆一切正常
有人使用 .Net reactor 来混淆 Xamarin 表单项目吗?
顺便说一句,我已取消检查 .Net 反应器的所有快速设置,但问题仍然存在