如何在控制台应用程序中使用 C# 运行 一个 exe 文件

How to run an exe file using C# in console application

我正在尝试 运行 我的控制台应用程序中的一个 exe 文件,该文件位于网络驱动器上。 所以需要发生的是应用程序需要使用此代码将网络驱动器映射到驱动器号:

 private static void MapDrive()
    {
        System.Diagnostics.Process process = new System.Diagnostics.Process();
        System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo();
        startInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
        startInfo.FileName = "net.exe";
        startInfo.Arguments = @"use w: \<server>\CompanyData\W10 /user:Administrator Password";
        process.StartInfo = startInfo;
        process.Start();
    }

效果很好,驱动器盘符已映射。 现在我面临的问题是 运行 这个映射驱动器中的 exe 文件。 我尝试了以下但似乎不起作用:

 private static void RunSetup()
    {
        System.Diagnostics.Process process = new System.Diagnostics.Process();
        System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo();
        startInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
        startInfo.FileName = "cmd.exe";
        startInfo.Arguments = @"w:\setup.exe";
        process.StartInfo = startInfo;
        process.Start();;
    }

启动 exe 文件似乎没有任何反应。
我需要知道我在这里做错了什么?

谢谢

要么包含“/c”参数

startInfo.FileName = "cmd.exe";
startInfo.Arguments = @"/c w:\setup.exe";

或直接将FileName设置为setup.exe

startInfo.FileName = "w:\setup.exe";

如评论所述