程序类似于智能汇编,但适用于C++
Program like smartassembly but for C++?
http://www.red-gate.com/products/dotnet-development/smartassembly/
有没有一个类似C++的smartassembly的程序可以从任何链接的DLL中删除所有不需要的代码(以减小大小),并将它们打包到一个EXE中,然后对其进行模糊处理和压缩?制作一个漂亮的小型安全EXE?
我喜欢我制作的任何.net程序的智能汇编,不知道是否有适合C++的东西。
谢谢!
是的,这样的工具被称为链接器。您通常在编译应用程序后运行它,尽管在大多数集成开发环境中,这只是一个单独的步骤,有一个巧妙的名称,如"构建"。
换言之,对于C++来说,您必须跳过这些障碍来删除不需要的代码,并对C#等托管语言进行"模糊处理"。链接器将只链接代码使用的函数,由于所有内容都被编译为二进制文件,因此它已经被混淆了。
不过,DLL的内容中不会链接任何内容。DLL的全部意义在于它是可执行文件动态引用的,这就是为什么它被称为"动态链接库"。如果您想要在编译时静态链接的代码库,则需要使用静态库而不是DLL。
相关文章:
- FLTK 2.0构建和演示,适用于VS2019的2011年左右的代码库
- C++17 - 使用自定义分配器的节点提取/重新插入 - 适用于 clang++/libc++,但不适用于 libstd
- "string.h"在构建适用于iOS的qt应用程序中找不到消息
- 适用于 WebView2 旧版本的示例应用程序
- 在 NVIDIA GEFORCE GTX 1050 上下载适用于 Windows 10 的 openCL 1.2
- __attribute__(优化(0))) 是否适用于"recursively"?
- 为什么 std::erase(std::erase_if) 不是适用于<algorithm>任何容器的模板?
- 使用一个参数的模板函数时出错(适用于 2)
- 使用 适用于 Android 和 iOS 的 tf-lite C++ API
- 为什么这适用于 G++ 而不是 CLANG?
- 适用于 macOS 的 Xcode 应用程序。这就是我设置从USB麦克风输入获取音频的方式。一年前工作,现在没有了。为什么
- 适用于 Linux 的 c++ 上的代理脚本
- 为什么我的 SFINAE 表达式不再适用于 GCC 8.2?
- 使输出流式处理运算符适用于 boost::variant<std::vector<int>、int、double 的正确方法是什么>
- 有没有适用于Windows.lib文件的GNU二进制文件描述符(BFD)
- 模板函数仅适用于VS
- 如何在cmake中包含适用于g++或viceversa的库
- 适用于win32、linux、mac的POSIX C包装器
- WinDBG适用于从Visual Studio 2015保存的转储,但不适用于任务管理器。显示异常代码"not found"
- 从uint8_t到NPY_UINT16 PyArray_SimpleNewFromData.适用于Linux,但不适用于