Dotfuscator使用ildasm来获取IL代码,然后执行其混淆。 Dotfuscator一直在窒息一个特定的组件。这是解决方案中唯一使用IL编织者Fody来编织的组件。编译后的其他CIL进入程序集。有趣的是,Dotfuscator说它很难用哪一行,并且该行总是在Visual Studio中由ReSharper以不同的语法突出显示。总是有多条线突出显示,但Dotfuscator总是在第一条线上出错......很有趣。
如果你告诉我为什么ReSharper认为这些线路不同,也许我可以弄清楚为什么Dotfuscator可以对这个组件进行模糊处理,并且解决方案中只有100多个其他组件。
Dotfuscator Professional Edition Version 4.21.0.3600-release+990d7ec.20160427.26945 Build machine license. This software may be used on binaries for general release. (TaskId:2742)
Your subscription expires in 300 days. (TaskId:2742)
Copyright 2002-2016 PreEmptive Solutions, LLC All Rights Reserved. (TaskId:2742)
(TaskId:2742)
Use of this software implies acceptance of accompanying license agreement. (TaskId:2742)
LICENSED TO: NOPE! (TaskId:2742)
SERIAL #: NOPE! (TaskId:2742)
[Build Output] Loading Assemblies... (TaskId:2742)
[Build Output] (TaskId:2742)
[Build Output] Running C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools\x64\ildasm.exe /OUT=C:\Users\NOPE!\AppData\Local\Temp\~NOPE!.142\NOPE!.dll.il /TEXT /NOBAR /RAWEH /QUOTEALLNAMES /UTF8 /LINENUM /FORWARD C:\NOPE!\bin\x64\Release\NOPE!.dll (TaskId:2742)
[Build Output] (TaskId:2742)
[Build Output] Encountered : at line 4194, column 12. (TaskId:2742)
Was expecting one of: (TaskId:2742)
<HEXBYTE> ... (TaskId:2742)
<SQSTRING> ... (TaskId:2742)
<DSQSTRING> ... (TaskId:2742)
"{" ... (TaskId:2742)
"}" ... (TaskId:2742)
".zeroinit" ... (TaskId:2742)
".#line" ... (TaskId:2742)
".language" ... (TaskId:2742)
".permission" ... (TaskId:2742)
".param" ... (TaskId:2742)
".custom" ... (TaskId:2742)
".vtentry" ... (TaskId:2742)
".locals" ... (TaskId:2742)
".entrypoint" ... (TaskId:2742)
".emitbyte" ... (TaskId:2742)
".override" ... (TaskId:2742)
".data" ... (TaskId:2742)
".maxstack" ... (TaskId:2742)
".export" ... (TaskId:2742)
".try" ... (TaskId:2742)
".permissionset" ... (TaskId:2742)
".line" ... (TaskId:2742)
"sub.ovf.un" ... (TaskId:2742)
"stobj" ... (TaskId:2742)
"mul.ovf.un" ... (TaskId:2742)
"throw" ... (TaskId:2742)
"stfld" ... (TaskId:2742)
"conv.ovf.u.un" ... (TaskId:2742)
"ble" ... (TaskId:2742)
"stind.i" ... (TaskId:2742)
"conv.u2" ... (TaskId:2742)
"newobj" ... (TaskId:2742)
"br.s" ... (TaskId:2742)
"cpblk" ... (TaskId:2742)
"conv.ovf.i4" ... (TaskId:2742)
"ldind.i4" ... (TaskId:2742)
"ldelem.r4" ... (TaskId:2742)
"ldflda" ... (TaskId:2742)
"mul.ovf" ... (TaskId:2742)
"ldelem.i1" ... (TaskId:2742)
"stelem.i8" ... (TaskId:2742)
"clt" ... (TaskId:2742)
"ldarg.1" ... (TaskId:2742)
"rem" ... (TaskId:2742)
"ckfinite" ... (TaskId:2742)
"ldc.i4.5" ... (TaskId:2742)
"unbox" ... (TaskId:2742)
"add.ovf" ... (TaskId:2742)
"ldind.ref" ... (TaskId:2742)
"ldarga.s" ... (TaskId:2742)
"stind.i8" ... (TaskId:2742)
"conv.ovf.u4.un" ... (TaskId:2742)
"ldnull" ... (TaskId:2742)
"conv.ovf.i4.un" ... (TaskId:2742)
"ldind.r8" ... (TaskId:2742)
"conv.i4" ... (TaskId:2742)
"blt.un.s" ... (TaskId:2742)
"call" ... (TaskId:2742)
"ldloca.s" ... (TaskId:2742)
"nop" ... (TaskId:2742)
"conv.ovf.u4" ... (TaskId:2742)
"ldind.u4" ... (TaskId:2742)
"stelem.r4" ... (TaskId:2742)
"ldelema" ... (TaskId:2742)
"leave" ... (TaskId:2742)
"ldelem.i2" ... (TaskId:2742)
"stelem.i1" ... (TaskId:2742)
"ldelem.u1" ... (TaskId:2742)
"ldarg.2" ... (TaskId:2742)
"blt.un" ... (TaskId:2742)
"ldlen" ... (TaskId:2742)
"ldc.i4.6" ... (TaskId:2742)
"ldvirtftn" ... (TaskId:2742)
"rethrow" ... (TaskId:2742)
"stind.r4" ... (TaskId:2742)
"bge.un" ... (TaskId:2742)
"stind.ref" ... (TaskId:2742)
"ldsfld" ... (TaskId:2742)
"ldtoken" ... (TaskId:2742)
"conv.r8" ... (TaskId:2742)
"conv.ovf.u8.un" ... (TaskId:2742)
"stind.i1" ... (TaskId:2742)
"add.ovf.un" ... (TaskId:2742)
"conv.ovf.i8.un" ... (TaskId:2742)
"stsfld" ... (TaskId:2742)
"brtrue.s" ... (TaskId:2742)
"ldarg.s" ... (TaskId:2742)
"tail." ... (TaskId:2742)
"brtrue" ... (TaskId:2742)
"ldarg" ... (TaskId:2742)
"xor" ... (TaskId:2742)
"conv.u4" ... (TaskId:2742)
"ldc.i8" ... (TaskId:2742)
"ldloc" ... (TaskId:2742)
"stloc.0" ... (TaskId:2742)
"conv.u" ... (TaskId:2742)
"stelem.i2" ... (TaskId:2742)
"endfault" ... (TaskId:2742)
"ldelem.u2" ... (TaskId:2742)
"ldarg.3" ... (TaskId:2742)
"ldind.i" ... (TaskId:2742)
"ldc.i4.7" ... (TaskId:2742)
"endfilter" ... (TaskId:2742)
"ble.un.s" ... (TaskId:2742)
"dup" ... (TaskId:2742)
"stind.i2" ... (TaskId:2742)
"isinst" ... (TaskId:2742)
"initobj" ... (TaskId:2742)
"ldc.r4" ... (TaskId:2742)
"unaligned." ... (TaskId:2742)
"conv.ovf.i" ... (TaskId:2742)
"and" ... (TaskId:2742)
"stloc.1" ... (TaskId:2742)
"sub" ... (TaskId:2742)
"shr" ... (TaskId:2742)
"ldelem.i4" ... (TaskId:2742)
"sub.ovf" ... (TaskId:2742)
"ldloca" ... (TaskId:2742)
"ldc.i4.8" ... (TaskId:2742)
"div.un" ... (TaskId:2742)
"callvirt" ... (TaskId:2742)
"ldc.i4.0" ... (TaskId:2742)
"ble.un" ... (TaskId:2742)
"arglist" ... (TaskId:2742)
"rem.un" ... (TaskId:2742)
"stelem.i" ... (TaskId:2742)
"conv.ovf.i8" ... (TaskId:2742)
"ldind.i8" ... (TaskId:2742)
"starg" ... (TaskId:2742)
"initblk" ... (TaskId:2742)
"pop" ... (TaskId:2742)
"ldelem.r8" ... (TaskId:2742)
"mul" ... (TaskId:2742)
"stloc.2" ... (TaskId:2742)
"conv.ovf.u2.un" ... (TaskId:2742)
"stloc" ... (TaskId:2742)
"conv.ovf.i2.un" ... (TaskId:2742)
"refanytype" ... (TaskId:2742)
"stelem.i4" ... (TaskId:2742)
"ldelem.u4" ... (TaskId:2742)
"bgt.un.s" ... (TaskId:2742)
"sizeof" ... (TaskId:2742)
"beq.s" ... (TaskId:2742)
"ldc.i4.1" ... (TaskId:2742)
"neg" ... (TaskId:2742)
"beq" ... (TaskId:2742)
"ldloc.0" ... (TaskId:2742)
"stloc.s" ... (TaskId:2742)
"ldc.i4.m1" ... (TaskId:2742)
"break" ... (TaskId:2742)
"stind.i4" ... (TaskId:2742)
"localloc" ... (TaskId:2742)
"blt.s" ... (TaskId:2742)
"conv.i8" ... (TaskId:2742)
"ldind.r4" ... (TaskId:2742)
"conv.ovf.i.un" ... (TaskId:2742)
"brfalse" ... (TaskId:2742)
"not" ... (TaskId:2742)
"conv.ovf.i1" ... (TaskId:2742)
"bgt" ... (TaskId:2742)
"ldind.i1" ... (TaskId:2742)
"conv.ovf.u8" ... (TaskId:2742)
"stloc.3" ... (TaskId:2742)
"stelem.r8" ... (TaskId:2742)
"ldsflda" ... (TaskId:2742)
"ldstr" ... (TaskId:2742)
"shl" ... (TaskId:2742)
"cgt.un" ... (TaskId:2742)
"switch" ... (TaskId:2742)
"ldelem.ref" ... (TaskId:2742)
"castclass" ... (TaskId:2742)
"stind.r8" ... (TaskId:2742)
"bgt.s" ... (TaskId:2742)
"volatile." ... (TaskId:2742)
"ldc.i4.2" ... (TaskId:2742)
"jmp" ... (TaskId:2742)
"ldloc.1" ... (TaskId:2742)
"ldobj" ... (TaskId:2742)
"conv.r4" ... (TaskId:2742)
"leave.s" ... (TaskId:2742)
"ldftn" ... (TaskId:2742)
"ldfld" ... (TaskId:2742)
"conv.ovf.u1.un" ... (TaskId:2742)
"conv.i1" ... (TaskId:2742)
"conv.u8" ... (TaskId:2742)
"conv.ovf.i1.un" ... (TaskId:2742)
"ldc.i4.s" ... (TaskId:2742)
"conv.ovf.i2" ... (TaskId:2742)
"ldind.i2" ... (TaskId:2742)
"ceq" ... (TaskId:2742)
"ldc.i4" ... (TaskId:2742)
"bge.un.s" ... (TaskId:2742)
"conv.ovf.u1" ... (TaskId:2742)
"ldarga" ... (TaskId:2742)
"ldind.u1" ... (TaskId:2742)
"bge" ... (TaskId:2742)
"conv.i" ... (TaskId:2742)
"ble.s" ... (TaskId:2742)
"stelem.ref" ... (TaskId:2742)
"ldc.i4.3" ... (TaskId:2742)
"cgt" ... (TaskId:2742)
"conv.r.un" ... (TaskId:2742)
"ldloc.2" ... (TaskId:2742)
"conv.ovf.u" ... (TaskId:2742)
"shr.un" ... (TaskId:2742)
"cpobj" ... (TaskId:2742)
"blt" ... (TaskId:2742)
"ldc.r8" ... (TaskId:2742)
"conv.i2" ... (TaskId:2742)
"or" ... (TaskId:2742)
"conv.u1" ... (TaskId:2742)
"br" ... (TaskId:2742)
"ldloc.s" ... (TaskId:2742)
"calli" ... (TaskId:2742)
"box" ... (TaskId:2742)
"endfinally" ... (TaskId:2742)
"conv.ovf.u2" ... (TaskId:2742)
"bge.s" ... (TaskId:2742)
"ldind.u2" ... (TaskId:2742)
"ldelem.i" ... (TaskId:2742)
"newarr" ... (TaskId:2742)
"clt.un" ... (TaskId:2742)
"ldelem.i8" ... (TaskId:2742)
"add" ... (TaskId:2742)
"ret" ... (TaskId:2742)
"ldarg.0" ... (TaskId:2742)
"starg.s" ... (TaskId:2742)
"brfalse.s" ... (TaskId:2742)
"bgt.un" ... (TaskId:2742)
"mkrefany" ... (TaskId:2742)
"ldc.i4.4" ... (TaskId:2742)
"bne.un.s" ... (TaskId:2742)
"div" ... (TaskId:2742)
"bne.un" ... (TaskId:2742)
"ldloc.3" ... (TaskId:2742)
"refanyval" ... (TaskId:2742)
"stelem" ... (TaskId:2742)
"stelem.any" ... (TaskId:2742)
"ldelem" ... (TaskId:2742)
"ldelem.any" ... (TaskId:2742)
"unbox.any" ... (TaskId:2742)
"no." ... (TaskId:2742)
"constrained." ... (TaskId:2742)
"readonly." ... (TaskId:2742)
"ooo" ... (TaskId:2742)
"lll" ... (TaskId:2742)
<ID> ... (TaskId:2742)
(TaskId:2742)
[Build Output] Build Error. (TaskId:2742)
答案 0 :(得分:3)
Fody是邪恶的。
Fody是一名IL织布工。它可以在编译后为程序集添加代码。问题是,由于Fody,PDB文件最终与程序集不匹配,因此ILDASM遇到了生成有效IL代码的问题。删除PDB和Dotfuscator再次工作。