C opendir 按主机名

C opendir by Hostname

我尝试在另一台计算机上打开一个共享目录。 这是我使用的代码。

#include <stdio.h>
#include <stdlib.h>
#include <dirent.h>

int main()
{
    DIR * rep = NULL;

    rep = opendir("\\MYCOMPUTER");
    if(rep==NULL)
        perror("");
    else{
        printf("enfin !");
    }
    return 0;
}

不知道为什么会报没有文件目录的错误。 当我尝试通过我的资源管理器打开我的目录时,它工作正常。我使用 \\MYCOMPUTER 打开它。

你有想法吗?

谢谢你:)

您在这里使用 UNC syntax。我现在无法对其进行测试,但我 假设 ...因为所有 UNC 路径都定义为以下形式:

\host\shared_folder\resource

简单

\host

不符合 目录 的条件。该代码可能适用于

\host\shared_folder

因此,如果您想枚举 windows 网络服务器上的所有 共享文件夹 ,您可能不得不求助于 native win32 API