当直接启动应用程序时,会启动该应用程序,但当通过cmd
启动时,则不会。
例如:
作品:
Process.Start("firefox");
不起作用:
Process.Start(
new ProcessStartInfo
{
FileName = "cmd",
Arguments = "/k firefox"
});
我曾尝试将UseShellExecute
设置为true,但没有成功。我仍然得到:
"firefox"未被识别为内部或外部命令,可操作程序或批处理文件。
所以,是的,我可以指定完整的路径。但是有办法避免这种情况吗?或者换句话说,两者之间的区别是什么,导致第二个失败?
还没有测试过,但我想您可能正在寻找start
命令:
Process.Start(
new ProcessStartInfo
{
FileName = "cmd",
Arguments = "/k start firefox"
});
作为提示,只需在命令提示符->中运行"firefox",就会得到相同的错误消息。