2013-03-05 68 views
0

我需要执行c:\中的进程。当我使用Process.Processstartinfo时,它不会从c:\执行,因此无法找到它的依赖关系。它运行在我的应用程序目录中。我如何在c:\目录中运行它?在特定目录中执行进程

+1

我认为你不需要这个问题的'g ++'标记。请分享你已经尝试过的东西。你可以/应该阅读[常问问题]和[问] – 2013-03-05 07:39:21

回答

2

您是否设置了WorkingDirectory

process.StartInfo.WorkingDirectory = @"MyWorkingDirectoryPath"; 

例如为:

var psi = new ProcessStartInfo(); 
psi.WorkingDirectory = @"MyWorkingDirectoryPath"; 

// set additional properties 

Process proc = Process.Start(psi); 

UseShellExecute属性为false,获取或设置工作 目录要启动的过程。当UseShellExecute为 为真时,获取或设置包含进程的目录为 已启动。

+0

工作目录是什么意思,它的过程开始和工作的目录 – 2013-03-05 07:47:52

+0

这不工作,我尝试我有应用程序.exe我测试它打开input.txt并在input.txt中写入文本输出.txt并且它不会在c:\(工作目录)中创建output.txt – 2013-03-05 07:57:46

0

ProcessStartInfo.WorkingDirectory设置为您要启动的进程的工作目录,即您的情况"C:\"