c++ - 类似 smartassembly 的程序,但适用于 C++?

标签 c++ compression obfuscation pack smartassembly

http://www.red-gate.com/products/dotnet-development/smartassembly/

是否有类似 smartassembly for C++ 的程序可以从任何链接的 DLL 中删除所有不需要的代码(以减小大小)并将它们打包到单个 EXE 中,然后对其进行混淆和压缩?制作一个不错的小型安全 EXE?

我喜欢我制作的任何 .net 程序的 smartassembly,想知道是否有适用于 C++ 的东西。

谢谢!

最佳答案

是的,这样的工具称为链接器。您通常会在编译应用程序后运行它,尽管在大多数集成开发环境中,这显示为一个单独的步骤,并带有一个巧妙的名称,例如“构建”。

换句话说,对于像 C# 这样的托管语言,您必须跳过环路以删除不需要的代码并将其“混淆”对于 C++ 来说绝对没有必要。链接器只会链接您的代码使用的函数,并且由于所有内容都被编译为二进制文件,因此它已经像将要得到的那样被混淆了。

不过,没有任何内容会链接到 DLL 的内容中。 DLL 的全部要点在于它被可执行文件动态 引用,这就是它被称为“动态 链接库”的原因。如果你想要一个在编译时静态链接进来的代码库,你需要使用静态库而不是DLL。

关于c++ - 类似 smartassembly 的程序,但适用于 C++?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9439391/

相关文章:

c++ - 如何解决 "error LNK2019: unresolved external symbol"?

c++ - 全屏原始分辨率下的 OpenGL 撕裂

Android版本发布警告消息: This App Bundle contains Java/Kotlin code,可能被混淆

c# - 重命名去混淆代码

c++ - 将在 C++ 中创建的动态数组

java - 将 Zip 转换为存储压缩

python - 有效地压缩 numpy 数组

C# Gzip 在服务器端错误地压缩字节数组

javascript - 使用模糊的变量和函数名称智能反转压缩的 javascript?

c++ - 我应该使用前向声明将类移动到文件末尾吗?