Открытие рабочей папки

Frankestein
Дата: 09.04.2014 11:28:36
Доброго дня !

Банальная ситуация. Я хочу чтобы при нажатие кнопки открывалась папка с выделение файла. Погуглил и прочитал форумы. Везде идет использование через команду

System.Diagnostics.Process.Start("explorer.exe", @"/select," + fileName);

Но при проверке процессов в диспетчере задач получается , что создаётся процесс explorer.exe и при закрытие программы он все еще висит. Как сделать так, чтобы процесс прекращал работу/удалялся или чего я не учёл? Сборщик мусора в коде прописан

p.s.: Большого опыта в программирование нет. Учусь.

Спасибо за понимание.
Arm79
Дата: 09.04.2014 11:37:49
Frankestein
процесс explorer.exe

Что, десяток explorer-ов висит и не выгружаются? :-)
Frankestein
Дата: 09.04.2014 11:51:51
Arm79,

Да
igr_ok
Дата: 09.04.2014 13:11:57
Frankestein
чего я не учёл?
Что программа входит в поставку Windows.
Frankestein
Дата: 09.04.2014 13:35:39
igr_ok,

Без сарказма можно, пожалуйста ?!

Я для этого и спрашиваю как правильно остановить запустившейся процесс после использование программы, либо какие еще способы существуют для открытия рабочей папки с выделением файла ?! В 1 сообщение я писал
"Погуглил и прочитал форумы. Везде идет использование через команду ..."
igr_ok
Дата: 09.04.2014 14:19:17
Frankestein
igr_ok,

Без сарказма можно, пожалуйста ?!

Я для этого и спрашиваю как правильно остановить запустившейся процесс после использование программы, либо какие еще способы существуют для открытия рабочей папки с выделением файла ?! В 1 сообщение я писал
"Погуглил и прочитал форумы. Везде идет использование через команду ..."
Данную конкретную программу explorer.exe нельзя останавливать, т.к. она используется Windows.
Frankestein
Дата: 09.04.2014 14:39:19
igr_ok,

Ясно (. А какие еще варианты есть по запуску рабочей папки ?
Alex Kuznetsov
Дата: 09.04.2014 22:00:54
Frankestein
Доброго дня !

Банальная ситуация. Я хочу чтобы при нажатие кнопки открывалась папка с выделение файла. Погуглил и прочитал форумы. Везде идет использование через команду

System.Diagnostics.Process.Start("explorer.exe", @"/select," + fileName);

Но при проверке процессов в диспетчере задач получается , что создаётся процесс explorer.exe и при закрытие программы он все еще висит. Как сделать так, чтобы процесс прекращал работу/удалялся или чего я не учёл? Сборщик мусора в коде прописан

p.s.: Большого опыта в программирование нет. Учусь.

Спасибо за понимание.
А почему Вы полагаете, что процесс exprorer.exe должен прекращать работу после прекращения работы Вашего приложения?
Вы запустили внешний процесс и всё. Вы можете свободно управлять процессом и потокам Вашего приложения, но запущенный Вами отдельный процесс управляется уже совсем по другому.
Если Вам так уж нужно его "прибить" по завершению Вашего процесса, то запоминайте дескриптор процесса, который Вы получаете при его запуске, а затем уже останавливайте процесс используя соответствующее API.
Ну или хотя-бы пример почитайте, что-ли?
Pallaris
Дата: 09.04.2014 22:32:10
Frankestein
igr_ok,

Ясно (. А какие еще варианты есть по запуску рабочей папки ?


System.Diagnostics.Process.Start("start", @"c:");


ну или как-то так ("start c:" работает из cmd)
igr_ok
Дата: 10.04.2014 11:31:43
Frankestein,

А зачем вообще вызывать Проводник? Что в нем делается такого, с чем не могла бы справиться ваша программа?