Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 流程。从应用程序开始&;文件名作为变量_C#_Process - Fatal编程技术网

C# 流程。从应用程序开始&;文件名作为变量

C# 流程。从应用程序开始&;文件名作为变量,c#,process,C#,Process,一直在搜索,但意外地没有找到这个特定的问题: 使用C#我希望(通过单击表单中的按钮)使用特定的应用程序运行特定的文件 使用“Process.start(variable)”时,我只能从两个选项中选择一个 通过使用“Process.startinfo.filename”(比如:),情况似乎也是如此 难道不可能以某种“简单”的方式将两者结合起来吗 谢谢。通常,您会使用命令参数(即“notepad.exe file.txt”)与应用程序一起运行文件 如果您尝试启动的应用程序可以这样做,则只需将Star

一直在搜索,但意外地没有找到这个特定的问题:

使用C#我希望(通过单击表单中的按钮)使用特定的应用程序运行特定的文件

使用“Process.start(variable)”时,我只能从两个选项中选择一个

通过使用“Process.startinfo.filename”(比如:),情况似乎也是如此

难道不可能以某种“简单”的方式将两者结合起来吗


谢谢。

通常,您会使用命令参数(即“notepad.exe file.txt”)与应用程序一起运行文件

如果您尝试启动的应用程序可以这样做,则只需将
StartInfo
Filename
属性设置为名称(如果在路径中),或者将应用程序的完整路径设置为文件路径,将
Arguments
属性设置为文件路径

var process = new Process();
process.StartInfo.FileName = "notepad.exe";
process.StartInfo.Arguments = "C:\\{pathToFile}\\file.txt";
process.Start();

上面的代码将启动notepad opening file.txt。您只需将
文件名
参数
替换为包含应用程序和文件路径的变量。

组合是什么意思?@TimothyG。给出两个变量。因此,告诉它要打开哪个文件,并告诉它使用哪个程序打开它。在看到发布的答案后,你的问题现在有意义了,但问题应该是独立的。嗯,这并没有给我预期的结果。但我不知道这是与你的答案有关,还是与程序的运行有关。当使用FME quicktranslator运行工作台时,它不会给我正确的输出。但我猜你的答案可能是正确的,所以我会考虑解决的问题。如果将来有人想知道或读到这个话题,那就谢谢了:它不起作用的原因是路径中存在空间。输入参数时需要使用“$”符号,否则process.start无法正常工作。