Чтобы
запустить из программы на C# проводник Windows нам понадобиться
пространство имен System.Diagnostics и класс Process. Данный класс
предлагает метод Start() который и организует вызов внешней программы.
Для этого разместим на форме проекта C# WinForms объект Button,
определим его имя как btnExplorer и зададим содержание функции Click()
обрабатывающей нажатие кнопки:
В
результате, после клика на кнопке экран монитора отобразит проводник
Windows в заданном по умолчанию виде, соответствующем запуску проводника
через кнопку Пуск->Выполнить. Но не всегда этот вид
удовлетворителен. Усложним задачу, требуя, чтобы проводник отображал не
папку "Мои документы", а некоторую наперед заданную...
Для этого достаточно вызвать метод Start() с дополнительным строковым параметром. В нем мы укажем целевой каталог, например папку C:\Windows:
Заметьте, что в пути до целевого каталога использован двойной слэш, чтобы исключить трактовку управляющих символов, начинающихся с \.
Если хочется, чтобы проводник позиционировал конкретный файл используйте ключ /select, например, для выделения в папке Windows файла win.ini выполним:
Тот же эффект возможен и с каталогом. Например выделим папку Windows:
P.S. Приведенный выше код тестировался на Windows XPSP3. Для более поздних версий Windows возможны отличия.
Для этого достаточно вызвать метод Start() с дополнительным строковым параметром. В нем мы укажем целевой каталог, например папку C:\Windows:
Заметьте, что в пути до целевого каталога использован двойной слэш, чтобы исключить трактовку управляющих символов, начинающихся с \.
Если хочется, чтобы проводник позиционировал конкретный файл используйте ключ /select, например, для выделения в папке Windows файла win.ini выполним:
Тот же эффект возможен и с каталогом. Например выделим папку Windows:
P.S. Приведенный выше код тестировался на Windows XPSP3. Для более поздних версий Windows возможны отличия.