Build Notes for Masscan on Windows X64 Bit
解决缺少 DLL 的动态编译提示
问题原因:
Visual Studio 进行编译时,默认选择的编译解决方案为动态编译选项,这意味着编译过程中不会将 DLL 文件打包到生成的二进制文件中。相反,DLL 文件会在程序运行时从系统中调用。
解决方法:
在 Visual Studio 中选择静态编译的编译方案,这将在程序编译时将 DLL 文件链接到目标代码中,从而使程序运行时不再需要外部 DLL 动态库的存在。
具体步骤:
项目属性 - 配置属性 - C/C++ - 代码生成 - 运行库,选择运行库为【多线程调试 (/MTd)】

动态编译与静态编译
-
静态编译: 在程序编译时,DLL 文件会被链接到目标代码中,因此程序运行时不再需要外部静态库的存在。
-
动态编译: 与静态编译不同,动态编译在程序编译时不会将 DLL 文件链接到目标代码中。相反,DLL 文件会在程序运行时被动态加载,因此在运行时需要外部动态库的存在。
通过选择静态编译选项,您可以消除动态编译时缺少 DLL 的问题,从而提高程序的可移植性和稳定性。