c++ - 我如何强制 Windows.h 在 Visual Studio 中静态链接而不是动态链接?

标签 c++ c visual-studio linker static-linking

如何强制我的链接器静态链接 Windows.h,以便 Windows 库的所有函数都进入我的可执行文件?

我希望 VirtualAllocEx、OpenProcess 等 API 调用以及其他 API 调用(例如写入另一个进程的内存等)以及 CreateRemoteThread(基本上是所有通信 API 调用和内存分配调用)位于我的可执行文件中,所以我没有使用 Windows.h 来实现它,所以基本上我的 IAT 不会包含这些函数,实现此目的的最佳方法是什么?

最佳答案

你不能。

这些东西是操作系统的一部分。

操作系统有权执行您自己的代码未执行的操作。

此外,您的操作系统的实现对于该版本的操作系统是正确的。

这是一件好事。您不想静态链接操作系统的 API 实现。

头文件 Windows.h 仅提供允许您调用它们的声明。

关于c++ - 我如何强制 Windows.h 在 Visual Studio 中静态链接而不是动态链接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57545460/

相关文章:

c# - 评论存储在哪里以及如何提取它们?

visual-studio - 发布到 Azure 不会更新 App_Data 中的文件

c++ - 在 C++ 中使用组合进行对象实例化计算

c++ - MMGR 问题、代码使用和线程安全

c - Sendto 返回随机值

c# - 访问 LTO 磁带内存的源代码 (C/C#)

javascript - 在 HTML 或 Javascript 中,如何为每个人存储变量?

c++ - 有效的图形解释 C++

c++ - 通过 const_cast 修改 const std::vector<T> 的元素

c - Memset 结构指针导致空检查失败