C - 如何通过 window 资源管理器(控制台)获取文件

C - How can get file by window explorer (console)

我正在寻找 打开 window 资源管理器 获取用户选择的文件 的功能。我知道如何为我的 打开 window 资源管理器,但我问错了问题。我想要启用对用户选择文件的读取。

在尝试搜索时,我找到了 OpenFileDialog()。但是这个功能看起来需要GUI。我对吗? (我的程序只运行控制台)

如何在控制台上打开 windows 资源管理器并从用户那里获取文件?

我是 C 的初学者。所以我的问题看起来简单得可笑。但如果你给我答案,我真的很感激。谢谢:)

您正在寻找 GetOpenFileName function。 (OpenFileDialog 适用于 .NET 应用程序;如果您使用的是 C,那么您就没有使用 .NET)。

根据 MSDN,这已被 Common Item Dialog system 取代,但该系统要复杂得多,需要 COM,如果您只选择文件则不需要。 GetOpenFileName 在可预见的未来仍然有效。

要打开 Windows 资源管理器:

system("start \"\" \"c:\program files\"");

打开特定文件:

system("start \"\" \"c:\program files\file.txt\"");