构建期间的输出是:
8>Compiling Project MyAppObfuscation ...
8>Dotfuscator Professional Version 4.41.1.9417-95d9eec7a
8>Copyright 2002-2019 PreEmptive Solutions, LLC All Rights Reserved.
8>Use of this software implies acceptance of accompanying license agreement.
8>Build machine license. This software may be used on binaries for general release.
8>
8>Your protection is out of date. Learn more at https://www.preemptive.com/keep-your-protection-up-to-date?product=dotfuscator&sku=pro&version=4.41.1.9417. Upgrade at https://www.preemptive.com/products/dotfuscator/downloads.
8>
8>Loading Assemblies...
---several of these lines---
8>Running ...\ildasm.exe /OUT=...\MyApp.exe.il /TEXT /NOBAR /RAWEH /QUOTEALLNAMES /UTF8 /LINENUM /FORWARD "...\MyApp.exe"
8>
--- immediately followed by: ---
8>Encountered - at line 18065, column 26.
8>Was expecting one of:
8> <FLOAT64> ...
8> "float64" ...
8> "float32" ...
8> <INT> ...
8> "(" ...
8>
8>Build Error.
8>MyAppObfuscation build failed.
有人遇到过这个吗?我倾向于相信这是新机器上的东西,但是如果有人对诊断它有提示,我将不胜感激。谢谢!
编辑:只是想添加相同的错误发生在Visual Studio和Dotfuscator专业配置编辑器中。
编辑2:经过进一步检查,ildasm的/ OUT参数中列出的文件夹不包含最后一个ildasm命令的.il文件。 .exe DO之前的程序集的输出文件夹具有.il文件。因此,我认为ildasm可能无法在.exe上运行,但是我可以将命令复制到命令提示符中,并且它可以正常运行并按预期创建.il文件。因此,为什么从Visual Studio中运行ildasm不能正常运行,而只能在命令行中运行-仅适用于项目中的一个程序集/ exe?
这个谜越来越大...
我在Visual Studio中有一个包含Dotfuscator项目的解决方案。完全相同的代码库可以在另一台计算机(旧笔记本电脑)上正确构建和混淆,而在新设置的笔记本电脑上则无法正确混淆。 ...
我希望其他人对此有帮助。