首页 > 解决方案 > 为什么在 exe 中看到源代码,因为它应该是二进制的?

问题描述

最近,我通过将扩展名重命名为 .txt,对我的一个 c# .NET 编译的 exe 进行了实验。在记事本中查看时,我能够看到我所有的英文源代码,这让我在查看 .cs 文件还是 .exe 文件时感到困惑。

在此事件之后,我意识到拥有此 exe 的任何人都可以复制所有代码,然后将它们重新编译成带有一些隐藏的附加代码(或恶意软件)的克隆,这可能会损害我在用户中的声誉。

但是我对可以将所有方法和属性重命名为非人类可读格式的混淆知之甚少,但我仍然想在这里问一下,exe程序不应该(仅)采用计算机可读的二进制格式(如我在学校学过)?为什么还需要混淆?这个问题是否仅限于具有 CLR 标头的 exe?如果我想让反编译变得困难,我是否应该考虑在 C 等其他语言上创建应用程序?请回答...

编辑:- 大多数代码都可以在这个区域看到,我不知道它包含什么部分的源代码。 例如。 代码截图

Edt:- 同样,当我对使用 Visual Foxpro 编译的 exe 执行相同操作时(在项目属性中检查了 Encrypted),除了一些程序集信息外,甚至看不到一个可读的文本。它使用了什么加密技术,我们可以在 dotnet(免费或付费)中使用它(或类似的)吗?

来源 - https://www.tek-tips.com/viewthread.cfm?qid=286147

标签: c#.netexeclrsource-code-protection

解决方案


推荐阅读