AutomoxAutomox

.NET 4.8 installer

schweeeeet
April 6, 2023 at 3:59 pm UTC
#dot net#.net 4.8#.net install

Here is a worklet for installing .NET 4.8.  It checks the registry location for the version number and if it is not 4.8, it will install.  *whoops, didnt mean for this to be labeled a question*

THIS INSTALL REQUIRES A REBOOT TO FINALIZE INSTALLATION!

powershell111 lines
############################################################
### ~~~ SWEET'S .NET 4.8 INSTALL SCRIPT FOR AUTOMOX! ~~~ ###
############################################################
### --NOTES-- ### 
##############################################################################   
###  - Set the version of the executable for the program as it displays in ###
###    properties of the file                                              ###
###  - Set the path to the executable file                                 ###
###  - Set the name of the log file                                        ###
###  - Copy/Paste into Worklet!!                                           ###
##############################################################################


#################################################################
###   ><><><><><><   START EVALUATION CODE!!!  ><><><><><><   ###
#################################################################

# VARIABLES LIST

$swname = ".NET 4.8" # ex. ".NET 4.8"

$regpath = "HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full" # ex. "HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full"

$regversion = "4.8.03761" # ex. "4.8.03761"

$regkeyname = "Version" # ex. "Version"

$logname = "NET_4.8_INSTALL.log" # ex. "OfficeUpgrade.log"

# Create C:\Temp if it doesn't yet exist

New-Item -Path 'C:\Temp' -ItemType Directory -Force -ErrorAction SilentlyContinue

# Start logging

Start-Transcript -Verbose -Path "C:\Temp\$logname"

# Checks to see if .NET 4.8 is installed.

$output = Get-ItemPropertyValue $regpath -Name $regkeyname 

if ($output -ge $regversion){
  Write-Output "$swname is already installed."
 } else { 
  Write-Output "$swname not present - installer will begin shortly."
}

Stop-Transcript

if ($output -ge $regversion){
  Exit 0
 } else { 
  Exit 1  
}

#################################################################
###   ><><><><><><   END EVALUATION CODE!!!!!  ><><><><><><   ###
#################################################################

# COPY ABOVE THIS LINE INTO EVALUATION PANE

#---------------------------------------------------------------#

# COPY BELOW THIS LINE INTO REMEDIATION PANE

#################################################################
###   ><><><><><><   START REMEDIATION CODE!!  ><><><><><><   ###
#################################################################

# Set Variables!

$swname = ".NET 4.8" # ex. "Java 8.341 (32-bit)"

$swfilename = "ndp48-x86-x64-allos-enu.exe" # ex. "setup.exe"

$logname = "NET_4.8_INSTALL.log" # ex. "OfficeUpgrade.log"

$arguments = "/quiet" # ex. '/i "MicrosoftEdgeEnterpriseX64.msi" /q' TOP TIP! - You may need to use single quotes at the start/end!!

# Starts logging and appends the existing log file created by the Evaluation code

Start-Transcript -Verbose -Path "C:\Temp\$logname" -Append

Write-Output "Copying install files..."

Copy-Item $swfilename -Destination "C:\Temp" -Verbose

Write-Output "Install files copied to C:\Temp."

Write-Output "Executing install command..."

# Executing installer - DO NOT make your life harder, eliminate spaces in filenames!
    try
    {
        Start-Process "C:\Temp\$swfilename" -ArgumentList $arguments -Wait

    }
    catch
    {
        Write-Output "Install of $swname Failed"
        Exit -1
    }
    Write-Output "$swname install command executed."

    Remove-Item -Path "C:\Temp\$swfilename"

Stop-Transcript

#################################################################
###   ><><><><><><   END REMEDIATION CODE!!!!  ><><><><><><   ###
#################################################################

 

This discussion is archived and closed to replies. Continue it in the Automox Community Slack.

Discuss on Slack