以目标目录路径作为参数的静默安装

Silent installation with target directory path as parameter

在我的 C# 应用程序中,我 运行 在静默模式下进行了一些设置。问题是我想让用户选择目标安装目录,但不知道如何。

这是静默安装,工作正常但安装在默认目录中:

void RunSilentSetup(string executableFilePath)
        {

            ProcessStartInfo startInfo = new ProcessStartInfo()
            {
                CreateNoWindow = false,
                UseShellExecute = true,
                FileName = executableFilePath,
                WindowStyle = ProcessWindowStyle.Hidden,
                Arguments = "/s /v/qn"
            };
            using (Process exeProcess = Process.Start(startInfo))
            {
                exeProcess.WaitForExit();
                int exitcode = exeProcess.ExitCode;

                if (exitcode == 0)
                {
                    Console.WriteLine("Installation was successfully completed");
                                        }
                else
                    Console.WriteLine("one or more errors occurred during the installation");
            }

        }

但我需要这样的东西:

void RunSilentSetup(string executableFilePath, string targetDir)
{
 .
 .
 .
    Arguments = "/s /v/qn"+targetDir,
 .
 .
 .
 }

设置参数如下:

更改为:

Arguments = "/s /v/qn /vINSTALLDIR=\"+targetDir+"\"",

如果你直接从 cmd 运行 它看起来像:

C:\someFolder\anotherFolder> setup /s /v/qn /vINSTALLDIR="D:\yourTargetDirectory"