|
|
导航: |
论坛 -> DELPHI技术
斑竹:liumazi,sephil |
|
作者: |
yxsoft (yxsoft) |
★☆☆☆☆ |
-
|
盒子活跃会员 |
|
2018/9/8 2:42:43 |
标题: |
发现Delphi编译后的EXE在运行时能看到所有Unit名称,类名等 |
浏览:2381 |
|
加入我的收藏 |
楼主: |
我已经加了取消RTTI的编译宏,是什么情况,如果去掉这些信息
{$IF CompilerVersion >= 21.0} {$WEAKLINKRTTI ON} {$RTTI EXPLICIT METHODS([]) PROPERTIES([]) FIELDS([])} {$IFEND}
----------------------------------------------
Great! |
作者: |
|
2018/9/8 9:07:45 |
1楼: |
运行时能看到? 为啥我的 EXE 运行的时候 只有 UI ? 算了,你们都高手。
----------------------------------------------
(C)(P)Flying Wang
|
作者: |
|
2018/9/8 10:38:25 |
2楼: |
看到又如何呢?莫非兰州有什么不得了的秘密?
----------------------------------------------
--
|
作者: |
yxsoft (yxsoft) |
★☆☆☆☆ |
-
|
盒子活跃会员 |
|
2018/9/8 11:50:30 |
3楼: |
理论上可以通过单元名称和类名推断是怎么实现的
----------------------------------------------
Great!
|
作者: |
yxsoft (yxsoft) |
★☆☆☆☆ |
-
|
盒子活跃会员 |
|
2018/9/8 12:11:39 |
4楼: |
随便找个工具导出运行时的string就可以了
此帖子包含附件:
大小:40.2K |
----------------------------------------------
Great!
|
作者: |
|
2018/9/8 13:07:09 |
5楼: |
DeDe反编译?
----------------------------------------------
-
|
作者: |
|
2018/9/8 13:13:07 |
6楼: |
用VMProtect?
----------------------------------------------
-
|
作者: |
|
2018/9/9 0:52:20 |
7楼: |
为什么我的 VS 编译的 C++ 能看到所有 类名,还能看到过程逻辑?
----------------------------------------------
-
|
作者: |
|
2018/9/9 11:40:39 |
8楼: |
楼上的确定不是看了源码而是看的bin?
我还是第一次见有人说c++编译后,不反编译就能看到过程逻辑的。
----------------------------------------------
--
|
作者: |
|
2018/9/9 12:07:50 |
9楼: |
把逻辑写成脚本,把脚本存为 EXE 的资源。
----------------------------------------------
(C)(P)Flying Wang
|
作者: |
yxsoft (yxsoft) |
★☆☆☆☆ |
-
|
盒子活跃会员 |
|
2018/9/9 12:31:13 |
10楼: |
最主要的原因是TObject有这样两个函数: System.TObject.UnitName System.TObject.ClassName 所以EXE文件里肯定会有这样的信息了,只是这两个函数理论上放到ToolsAPI这类里面就行了,没想Release版还有,估计就是这类RAD语言不严谨的地方了
----------------------------------------------
Great!
|
作者: |
|
2018/9/10 0:38:01 |
11楼: |
删除PE里面资源节:Data-->PackageInfo即可。
----------------------------------------------
是你上错了车,还是我下错了站?
|
作者: |
|
2018/9/10 8:54:56 |
12楼: |
11楼说的对,不想要,去掉PackageInfo就可以
----------------------------------------------
-
|
作者: |
|
2018/9/10 11:10:48 |
13楼: |
去掉Data-->PackageInfo,会有副作用吗? 如果软件里使用了rtti,软件运行时会不会报错?谢谢啊
----------------------------------------------
-
|
作者: |
|
2018/9/10 14:16:52 |
14楼: |
你是没有lisence 怕EMB找上门来? 还是怕被破解? 破解的话 这几个类名对于破解提供不不了什么帮助
----------------------------------------------
-
|
作者: |
|
2018/9/10 14:20:01 |
15楼: |
这都不是事。 有些人非常可笑,将数据库的正式用户名和密码存到了 设计期。 这不就等于是公开了吗? 比那个 github 上存密码的还公开。
这样的人,还会设计期 打开 数据源,结果这个数据源控件,比较老,不支持 运行期和设计期分别设置。 那么 他们的 EXE 一启动就自动连数据库了。 他们的数据源地址,居然写的本机的绝对地址,立马出错。
别人说他们,他们还不相信。
----------------------------------------------
(C)(P)Flying Wang
|
作者: |
|
2018/9/10 14:52:43 |
14楼: |
通过单元名和类名就能推断出实现方法?我只能说,你很强大!很多时候光看源代码都不一定能弄清楚内在实现逻辑,何况是只看个名字?
----------------------------------------------
-广袤璀璨的银河,永无止境的梦想(梦无止境游银河) 博客挂了……
|
作者: |
|
2018/9/10 15:15:05 |
16楼: |
哦,对了,你所有的窗体资源也包含在RCData里呢,如果你把SQL之类的在设计期就设置好,那也能看到哦^o^
----------------------------------------------
-广袤璀璨的银河,永无止境的梦想(梦无止境游银河) 博客挂了……
|
作者: |
|
2018/9/11 12:37:44 |
17楼: |
不需要DEDE,因为Delphi编译的TypeInfo信息就是存在PE文件里面的,PackageInfo,Unit,Type等各种信息。 Delphi的运行时信息有两套: 一套叫TypeInfo是一直就有的,这些信息是关不掉的。 另一套叫RTTI是Delphi2010版本以后引入的,这部分信息可以用编译开关关掉。
----------------------------------------------
武稀松http://www.raysoftware.cn
|
作者: |
|
2018/9/12 11:11:01 |
18楼: |
多弄一百几十个上去混肴视听不就得了。
----------------------------------------------
声明:本人不在论坛询问任何编程问题,请不要将我的帖子当成问题来回答。炒股一天,编程三年,不浪费时间了。 经常在外面,没空,不要找我..
|
作者: |
|
2018/9/14 9:11:58 |
19楼: |
C#和Java抱头哭晕在厕所!
----------------------------------------------
-
|
作者: |
|
2018/9/15 10:01:16 |
20楼: |
几个单元名称和类名就能分析出这么多,高人啊,膜拜! 有些给源码的都要读很久,有时候还不定全读明白。
----------------------------------------------
简单做人,认真做事。
|
作者: |
|
2018/9/15 10:23:12 |
21楼: |
楼上的,小心楼主说你 阴阳怪气 。
----------------------------------------------
(C)(P)Flying Wang
|
作者: |
|
2018/9/17 9:56:58 |
22楼: |
8楼,@ bahamut8348 (leonna) 你理解有问题啊。你倒给我不反编译就能看看楼主说的 “发现Delphi编译后的EXE在运行时能看到所有Unit名称,类名等”
再说,我这是接楼主的话的,讽刺的,听不懂?如果Delphi编译后的EXE能看到所有Unit名称,类名,我用vs编译的exe照样可以出源码(如果要较真的话,请了解一下IDAd的 F5 DA法)
就像 wk_knife (wk_knife)说的,如果连Delphi还要纠结这个,C#和Java两兄弟老早就抱头哭晕在厕所!
----------------------------------------------
-
|
|