我可以用户单的AOT功能本机pre-编译.NET的DLL(和或EXE文件),以使它们更难进行逆向工程?
Can I user mono's AOT feature to natively "pre-compile" .NET DLLs (and or EXEs) to make them harder to reverse engineer?
如果是这样,我怎么单声道/ AOT在Windows 7的工作? (我运行64位,但应用程序被明确定位86)。我刚安装了单2.6.3和MinGW 5.1.6,我想AOT编译EXE(或DLL,也没关系)。
If so, how do I get mono/AOT working in Windows 7? (I'm running x64 but the app is targeting x86 explicitly.) I just installed Mono 2.6.3 and MinGW 5.1.6 and I'm trying to AOT compile an exe (or a dll, it doesn't matter).
我收到错误消息的屏幕和屏幕:
I get screens and screens of error messages:
C:\Users\jupdike\AppData\Local\Temp\mono_aot_XSDEAV:533: Error: junk at end of line, first unrecognized character is `H'
C:\Users\jupdike\AppData\Local\Temp\mono_aot_XSDEAV:539: Error: unknown pseudo-op: `.local'
C:\Users\jupdike\AppData\Local\Temp\mono_aot_XSDEAV:546: Warning: .size pseudo-op used outside of .def/.endef ignored.
C:\Users\jupdike\AppData\Local\Temp\mono_aot_XSDEAV:546: Error: junk at end of line, first unrecognized character is `H'
我可以打开生成的程序集code,但我不知道为什么汇编电抗器就可以了:
I can open the generated assembly code but I have no idea why the assembler chokes on it:
.size HappyForms_TextForm__ctor_string_string_string_bool,.-HappyForms_TextForm__ctor_string_string_string_bool (533)
_.Lme_a:
.Lme_a:
.balign 16
_.Lm_b:
.Lm_b:
.local HappyForms_TextForm_get_InputValue (539)
_HappyForms_TextForm_get_InputValue:
HappyForms_TextForm_get_InputValue:
.byte 85,139,236,131,236,8,139,69,8,139,128,216,2,0,0,131,236,12,80,139,0,144,144,144,255,144,200,2,0,0,131,196
.byte 16,201,195
.size HappyForms_TextForm_get_InputValue,.-HappyForms_TextForm_get_InputValue (546)
(以上括号中的数字是行号)
(numbers above in parens are line numbers)
它看起来并不像,这将解决我的问题,它也不像单AOT在这个时候支持Windows。请参阅this问题获取更多的信息。
It doesn't look like this will solve my problem and it also doesn't look like mono AOT is supported on Windows at this time. See this question for more info.