【发布时间】:2008-12-10 02:05:57
【问题描述】:
如何通过 c++ 中的代码在资源管理器中打开路径。我用谷歌搜索,除了系统命令之外找不到任何东西,但是,我不希望它阻止或显示控制台窗口。
【问题讨论】:
如何通过 c++ 中的代码在资源管理器中打开路径。我用谷歌搜索,除了系统命令之外找不到任何东西,但是,我不希望它阻止或显示控制台窗口。
【问题讨论】:
您可能正在寻找shellapi.h 中的ShellExecute() 函数。它使用“动作动词”、路径和可选参数调用。在您的情况下,这将需要“打开”或“探索”,如下所示:
ShellExecuteA(NULL, "open", "C:\\", NULL, NULL, SW_SHOWDEFAULT);
这将在 C: 处打开一个未附加的资源管理器窗口。 ShellExecute() 将提供与在“运行”对话框中输入命令基本相同的操作。它还将处理 URL,因此以下内容将打开用户的默认浏览器:
ShellExecuteA(NULL, "open", "http://www.google.com", NULL, NULL, SW_SHOWDEFAULT);
尽管请务必注意文档中关于 ShellExecute 依赖于 COM 的注释(尽管您的代码不必担心任何 COM 对象本身)。
CoInitializeEx(NULL, COINIT_APARTMENTTHREADED | COINIT_DISABLE_OLE1DDE)
【讨论】:
这不显示命令窗口,只是打开目录。
system("explorer C:\\");
【讨论】:
我现在用的是VS2017,使用方法如下:
ShellExecute(NULL, L"open", L"YourFolderPath\\YourFile.xxx", NULL, NULL, SW_RESTORE);
【讨论】: