从Windows 7计算机上了解到的是,当我安装.Net Framework 4.7.1时,需要重新启动才能生效,否则使用此.Net fx版本设计的应用程序将无法启动。
那么,如果我在Windows Server Edition(2008r2起)上安装.Net fx 4.7.1,是否还需要重新启动?
我想通过一个脚本来自动化安装.Net fx和应用程序,因此我已经完成了脚本,但是不确定如何重启Windows服务器
如果我确实想重新启动Windows Server,那么可以将其添加到基于Power Shell的脚本中吗?
编辑我的示例脚本如下
if(Test-Path 'HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full'){
$NetRegKey = Get-Childitem %%'HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full'
if($NetRegKey){
$Release = $NetRegKey.GetValue("Release")
if($Release){
if($Release -lt 461308){
try{
$prc = Start-Process C:\NDP471-KB4033342-x86-x64-AllOS-ENU.exe -Wait
}
catch{
}
}
}
}
}
else{
try{
$prc = Start-Process C:\NDP471-KB4033342-x86-x64-AllOS-ENU.exe -Wait
}
catch{
}
}
答案 0 :(得分:0)
我发现上面我自己的问题的解决方案是
if( -NOT ((Test-Path 'HKLM:\SOFTWARE\Microsoft\.NETFramework\v4.0.30319\SKUs\.NETFramework,Version=v4.7.1') -or (Test-Path 'C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe') -or (Test-Path 'HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full'))) {
Start-Process .\DotNetFX471\NDP471-KB4033342-x86-x64-AllOS-ENU.exe -RedirectStandardError "DotNetInstallationStatus.txt" -Wait
if ($LastExitCode -ne 0){
Write-Host "ERROR: "
Get-Content -Path .\appInstallStatus.txt
return
}
Write-Host ".Net Framework installation is completed successfully"
}
Write-Host "Running CIE installer, please wait..."
$installerParam = "--p 'C:\Program Files\APP'"
Start-Process .\install.exe $installerParam -RedirectStandardError "appInstallStatus.txt" -Wait
if ($LastExitCode -ne 0){
Write-Host "ERROR: "
Get-Content -Path .\appInstallStatus.txt
return
}
一旦我们在任何Windows服务器上安装.Net框架,我们都应该看到在“ C:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ MSBuild.exe”创建的文件夹,运行此MSBuild.exe即可获取版本。 通常,如果我们没有.Net framework,则此文件夹将不可用,尽管如果此文件夹可用,则通过运行此MSBuild.exe文件,您将获得正确的.Net Framework版本。