0

我为该工具创建了一个小型 C# 工具和一个安装程序项目,我的工具使用 .net 框架 4.6。客户端使用 3.5 版(Windows 7 SP1 32 位) - 一切正常。

Setup-Project 检测到先决条件版本并开始安装 dotNetFx45_Full_x86_x64.exe

但是安装 dotnetfx 后,安装项目并没有开始重新启动。安装 dotnetfx 后是否可以重新启动 Setup.exe?

我猜是的,可能使用以下参数 /norestart /ChainingPackage

但是如何将此参数传递给 dotnetfx.exe?

我当前的设置文件夹:

/Setup.exe
/DotNetFX45/dotNetFx45_Full_x86_x64.exe
/DotNetFX45/dotNetFx45LP_Full_x86_x64de.exe

或者我应该使用以下设置文件夹:

/Setup.exe
/dotNetFx45_Full_x86_x64.exe
/dotNetFx45LP_Full_x86_x64de.exe

谢谢。

4

2 回答 2

0

这可能与操作系统设置或防病毒软件有关,因为我认为它应该在重新启动后重新启动 setup.exe,它再次通过先决条件检查并继续。有时,Windows 和 AV 软件会设置为防止重新启动后自动运行。因此,在安装 NETFx 之后,当安装程序要求重新启动时,请查看 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run 和 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce 键(以及 HKCU 中的等效项)查看那里是否有任何条目,因为这通常是它在重新启动后尝试重新启动的方式。如果条目在那里,那么您的操作系统中似乎有一些东西阻止了自动重启,这是一个可以理解的安全功能。

更改命令行以执行 /norestart 选项需要您在 Visual Studio 中打开 setup.exe 代码文件(作为文件打开)并进入资源设置,其中有一个包含 NET Framework 命令行的嵌入式清单 -你会改变它并保存代码文件。如果您在设置中托管了代码自定义操作,则推迟重新启动可能是一个问题,因为严格来说,框架安装在需要重新启动之后才完全安装。

于 2016-12-26T19:48:08.740 回答
0

根据您的要求,您可以查看以下内容:面向开发人员的 .NET Framework 部署指南

在目标机器上部署 .NET Framework 版本有三种方法,您可以在应用安装中直接指定 .NET Framework 作为先决条件,或在应用安装中链接 .NET Framework 安装过程。

当您尝试将可再发行的 .NET Framework 链接到您的应用程序设置时,会描述一些有用的命令行选项,例如/chainingpackage packageName、/norestart、/q ...。您可以使用这些参数和您的设置文件夹结构进行测试,检查它是否符合您的想法。

于 2016-12-26T03:09:11.133 回答