mono の AOT 機能を使用して、.NET DLL (または EXE) をネイティブに「プリコンパイル」し、リバース エンジニアリングを困難にすることはできますか?
その場合、Windows 7 で mono/AOT を動作させるにはどうすればよいですか? (私は x64 を実行していますが、アプリは明示的に x86 をターゲットにしています。) Mono 2.6.3 と MinGW 5.1.6 をインストールしたばかりで、exe (または dll、それは問題ではありません) を AOT コンパイルしようとしています。
エラーメッセージの画面と画面が表示されます:
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'
生成されたアセンブリ コードを開くことはできますが、アセンブラがコードを詰まらせる理由がわかりません。
.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)
(上記の括弧内の数字は行番号です)