Ste*_*ink 1 dotfuscator xamarin xamarin.forms visual-studio-2019
我已按照https://www.preemptive.com/dotfuscator/ce/docs/help/getting_started_xamarin.html#setup-targets上的说明进行操作,并多次验证了准确性。它说第一个构建将创建 DotfuscatorConfig.xml,但它失败并出现错误 1。然后它说将详细程度设置为“正常”,所以我这样做了,但仍然没有透露为什么它不会创建该文件。我可以将构建更改回“调试”并且构建得很好,但是更改回“发布”会产生相同的两个错误。有没有人经历过这个并解决过?
Severity Code Description Project File Line Suppression State
Run Code Online (Sandbox Code Playgroud)
错误命令“”C:\ Program Files(x86)\ Microsoft Visual Studio \ 2019 \ Community \ Common7 \ IDE \ Extensions \ PreEmptiveSolutions \ DotfuscatorCE \ dotfuscator.exe”/p:InDir =“obj \ Release \ 100 \ DotfuscatorXamarin \ dfin",OutDir="obj\Release\100\DotfuscatorXamarin\dfout",ReportDir="DotfuscatorReports\Release" "obj\Release\100\DotfuscatorXamarin\Template.dfconfig" /in:+"${configdir}${InDir} \WetYourWhistle.Android.dll",+"${configdir}${InDir}\WetYourWhistle.dll" /makeconfig:"DotfuscatorConfig.xml"" 退出,代码为 1. WetYourWhistle.Android C:\Users\leuol\source\repos \WetYourWhistle\PreEmptive.Dotfuscator.Xamarin\PreEmptive.Dotfuscator.Xamarin.targets 508 严重性代码说明项目文件行抑制状态错误“_DotfuscatorXamarin_SetProjectPropsTask”任务意外失败。System.IO.FileNotFoundException:找不到文件“C:\ Users \ leuol \ source \ repos \ WetYourWhistle \ WetYourWhistle \ WetYourWhistle.Android \ DotfuscatorConfig.xml”。文件名: 'C:\Users\leuol\source\repos\WetYourWhistle\WetYourWhistle\WetYourWhistle.Android\DotfuscatorConfig.xml' 在 System.IO.__Error.WinIOError(Int32 errorCode, String MaybeFullPath) 在 System.IO.FileStream.Init (字符串路径、FileMode 模式、FileAccess 访问、Int32 权限、布尔 useRights、FileShare 共享、Int32 bufferSize、FileOptions 选项、SECURITY_ATTRIBUTES secAttrs、字符串 msgPath、布尔 bFromProxy、布尔 useLongPath、布尔 checkHost)位于 System.IO.FileStream..ctor(字符串路径、FileMode 模式、FileAccess 访问、FileShare 共享、Int32 bufferSize)位于 System.Xml.XmlDownloadManager.GetStream(Uri uri、ICredentials 凭据、IWebProxy 代理、RequestCachePolicy cachePolicy)位于 System.Xml.XmlUrlResolver.GetEntity(Uri AbsoluteUri、字符串角色) ,类型 ofObjectToReturn) 在 System.Xml.XmlTextReaderImpl.FinishInitUriString() 在 System.Xml.XmlTextReaderImpl..ctor(String uriStr,XmlReaderSettings 设置,XmlParserContext 上下文,XmlResolver uriResolver) 在 System.Xml.XmlReaderSettings.CreateReader(String inputUri,XmlParserContext inputContext )在System.Xml.XmlReader.Create(字符串inputUri,XmlReaderSettings设置,XmlParserContext inputContext)在System.Xml.Linq.XDocument.Load(字符串uri,LoadOptions选项)在System.Xml.Linq.XDocument.Load(字符串uri)在 c:\Users\leuol\AppData\Local\Temp\r0wqtkdr\r0wqtkdr.0.cs 中的 InlineCode._DotfuscatorXamarin_SetProjectPropsTask.Execute() 处:第 93 行在 Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute () 在 Microsoft.Build.BackEnd.TaskBuilder.d__26.MoveNext() WetYourWhistle.Android C:\Users\leuol\source\repos\WetYourWhistle\PreEmptive.Dotfuscator.Xamarin\PreEmptive.Dotfuscator.Xamarin.targets 520 错误命令“ “C:\ Program Files(x86)\ Microsoft Visual Studio \ 2019 \ Community \ Common7 \ IDE \ Extensions \ PreEmptiveSolutions \ DotfuscatorCE \ dotfuscator.exe”/ p:
更新 - 现在代码编译没有错误,但仍然不会生成 DotfuscatorConfig.xml 文件。不知道还能尝试什么,而且似乎没有人知道。
小智 8
解决方案是将命令 dotfuscator.exe 临时更改为 dotfuscatorUI.exe :
<PropertyGroup>
<DotfuscatorXamarinConfigFileName>DotfuscatorConfig.xml</DotfuscatorXamarinConfigFileNam
<DotfuscatorXamarinCliPath>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\Extensions\PreEmptiveSolutions\DotfuscatorCE\dotfuscatorUI.exe</DotfuscatorXamarinCliPath>
<DotfuscatorGenerateConfigFileIfMissing>true</DotfuscatorGenerateConfigFileIfMissing>
<DotfuscatorEnabled>true</DotfuscatorEnabled>
<DotfuscatorXamarinEnabled Condition="'$(Configuration)' == 'Release'">true</DotfuscatorXamarinEnabled>
</PropertyGroup>
<Import Project="../../PreEmptive.Dotfuscator.Xamarin/PreEmptive.Dotfuscator.Xamarin.targets" />
Run Code Online (Sandbox Code Playgroud)
然后开始构建。dotfuscator UI 以一个窗口开始: 显示图像
然后按“构建”。完成后,单击右上角的“x”关闭窗口。然后 Visual Studio 上的输出显示成功的结果:
Build started: Project: [AppName].Android, Configuration: Release Any CPU ------
[AppName].Android -> D:\Users\[UserName]\source\repos\[FolderName]\[AppName]\[AppName].Android\bin\Release\[AppName].Android.dll
Running Dotfuscator with a new config file based on project references...
Finished running Dotfuscator with a new config file.
D:\Users\[UserName]\source\repos\[FolderName]\[AppName]\[AppName].Android\[AppName].Android.csproj : warning : A new Dotfuscator config file was generated because it did not exist: 'DotfuscatorConfig.xml'.
Run Code Online (Sandbox Code Playgroud)
您可以看到在文件夹 [AppName].Android 中创建了 dotfuscatorconfig.xml。
然后从 dotfuscatorUI.exe 恢复为 dotfuscator.exe 。
<PropertyGroup>
<DotfuscatorXamarinConfigFileName>DotfuscatorConfig.xml</DotfuscatorXamarinConfigFileNam
<DotfuscatorXamarinCliPath>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\Extensions\PreEmptiveSolutions\DotfuscatorCE\dotfuscator.exe</DotfuscatorXamarinCliPath>
<DotfuscatorGenerateConfigFileIfMissing>true</DotfuscatorGenerateConfigFileIfMissing>
<DotfuscatorEnabled>true</DotfuscatorEnabled>
<DotfuscatorXamarinEnabled Condition="'$(Configuration)' == 'Release'">true</DotfuscatorXamarinEnabled>
</PropertyGroup>
<Import Project="../../PreEmptive.Dotfuscator.Xamarin/PreEmptive.Dotfuscator.Xamarin.targets" />
Run Code Online (Sandbox Code Playgroud)
然后构建应该可以在没有 UI 弹出窗口的情况下运行。
归档时间: |
|
查看次数: |
550 次 |
最近记录: |