c - fopen 无法打开 Windows 主机文件

标签 c windows network-programming fopen

我这里有一个 FILE* 目标,它应该打开 Windows 主机文件并写入它:

FILE* target;
target = fopen("C:\\windows\\sysnative\\drivers\\etc\\hosts", "r+");
if (target != NULL) {
    printf("true\n");
} else {
    printf("false\n");
}

但是,打开Windows主机文件时,无法打开它。具体来说,fopen() 返回 NULL 并将 false 打印到屏幕上。我检查了目录。这很好。删除多余的 \ ,我可以用记事本打开它。但是 fopen() 无法打开该文件。它可以打开当前工作目录或其中的嵌套目录中的任何文件,但无法打开主机文件。也许我的路径有问题?我错过了什么吗?

最佳答案

您需要管理员权限才能在 Windows 上打开主机文件,请尝试以管理员身份运行脚本。

关于c - fopen 无法打开 Windows 主机文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53981187/

相关文章:

c# - 在linux上用c代码调用c#代码的最佳方法是什么

c# - 如何在 WPF 应用程序中使用 C# 制作类似 google 的自动完成文本框?

c# - 连接的TCP套接字如何同时发送/接收多个文件?

linux - 如何在网络上编写音频/视频应用程序?

c++ - 低级编程 C/C++

c - 为 Windows 库添加 unicode 支持

c++ - 针对推送优化的线程安全 C/C++ 队列

windows - 在运行之前强制批处理文件加载到 RAM

windows - 为什么我的无 CRT 应用程序在启动时间歇性崩溃?

java - 比较传输对象的值