关于erlang反编译的东西

    在查阅了相关文档,想了解erlang反编译的东西。当然,源码可以打包成可以获取源码的,也可以保护源码的。

在ebin下,如果没有或者找不到源码,可以进行反编译,由beam文件得到erl文件。

 

可以通过以下步骤获取本地源码.如下: 在erlang shell下,进入shell,

%这里的a是a.erl 模块,是想得到其源码,之前进入其路径下,

1〉{ok,{_,[{abstract_code,{_,AC}}]}} = beam_lib:chunks(code:which(a), [abstract_code]).

 

2〉io:fwrite("~s~n", [erl_prettypr:format(erl_syntax:form_list(AC))]).

之后,源码将被反编译,可以尝试,可以对其进行处理.

%相关模块函数查阅API

posted @ 2013-09-29 17:28  孤独信徒  阅读(2892)  评论(0编辑  收藏  举报