以目标目录路径作为参数的静默安装
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"
在我的 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"