为 Windows 实现自定义 unistd.h 以在 Visual Studio 上工作 - 问题
Posted
技术标签:
【中文标题】为 Windows 实现自定义 unistd.h 以在 Visual Studio 上工作 - 问题【英文标题】:Implementing a custom unistd.h for windows to work on Visual Studio - problems 【发布时间】:2016-03-24 16:55:23 【问题描述】:我继承了最初为 linux 编写的 dll 文件的源代码。不幸的是,我正在使用 Windows 和 Visual Studio,而对 linux 的更改是不可能的。特别是,其中一个类需要 unistd.h。
由于 windows 没有 unistd.h 之类的东西,我尝试按照 what was nicely written here.
我创建了一个头文件 unistd.h 并将其添加到我的项目的头文件中(我还根据this 制作了一个自定义 getopts。不幸的是,这并没有解决我的问题 - 我的代码不会构建,因为我不断得到
Cannot open include file: 'unistd.h': No such file or directory
我的自定义 unistd.h 在我的解决方案的头文件中,所以我完全不明白出了什么问题。我已经使用了
#include "unistd.h"
因为它是一个自定义标题。
我们将不胜感激任何建议和帮助。感谢您的关注。
【问题讨论】:
很难看出您的代码有什么问题,因为您没有发布任何代码。您至少可以在包含标题的位置发布 sn-p。 试试#include "unistd.h"
而不是#include <unistd.h>
【参考方案1】:
看来您的所有头文件和源文件都应该在同一个 VS 项目文件夹中 - 原始头文件和源文件在我的计算机上的另一个文件夹中,在创建新项目后,我使用添加现有项目并找到并选择它们添加。
我稍后通过向项目添加新项目创建的 unistd.h 文件 - 实际上两个文件组位于两个不同的位置,这导致他们没有“看到”自定义 unistd.h 的事实。这不是代码或我包含头文件的方式的问题,而是文件的放置问题。
【讨论】:
以上是关于为 Windows 实现自定义 unistd.h 以在 Visual Studio 上工作 - 问题的主要内容,如果未能解决你的问题,请参考以下文章
Android 逆向ART 函数抽取加壳 ⑤ ( unistd.h#execve 函数分析 | 使用自定义的 myexecve 函数替换 libc.so#execve 函数 )
无法打开包含文件:'unistd.h':没有这样的文件或目录
Python 安装zbar-py时出现 无法打开包括文件: “unistd.h” no such file or directory