Открыть в проводнике - PullRequest
       12

Открыть в проводнике

7 голосов
/ 10 декабря 2008

Как открыть путь в проводнике по коду на с ++. Я гуглил и не мог найти ничего, кроме системных команд для этого, однако я не хочу, чтобы он блокировал или отображал окно консоли.

Ответы [ 2 ]

18 голосов
/ 10 декабря 2008

Вы, вероятно, ищете функцию ShellExecute () в shell32.h. Он вызывается с «глаголом действия», путем и дополнительными параметрами. В вашем случае вам понадобится либо «открыть», либо «исследовать» следующим образом:

ShellExecute(NULL, "open", "C:\", NULL, NULL, SW_SHOWDEFAULT);

Это откроет неприкрепленное окно проводника в C :. ShellExecute () будет выполнять те же действия, что и ввод команды в диалоговом окне «Выполнить». Он также будет обрабатывать URL-адреса, поэтому откроется браузер пользователя по умолчанию:

ShellExecute(NULL, "open", "http://www.google.com", NULL, NULL, SW_SHOWDEFAULT);

Хотя обязательно обратите внимание на то, что в документации ShellExecute полагается на COM (хотя ваш код не должен беспокоиться о каких-либо COM-объектах).

CoInitializeEx(NULL, COINIT_APARTMENTTHREADED | COINIT_DISABLE_OLE1DDE)
3 голосов
/ 10 декабря 2008

Это командное окно не отображается, просто открывается каталог.


system("explorer C:\\");

...