Files
Win-VM/01_Config/SRV-WSUS-01/BGInfo-SRV-WSUS-01.ps1
2022-02-16 23:33:59 +01:00

80 lines
3.3 KiB
PowerShell

<#
.SYNOPSIS
A script used to download, install and configure the latest BgInfo version on a Windows Server 2016 or 2019.
.DESCRIPTION
A script used to download, install and configure the latest BgInfo version (v4.27) on a Windows Server 2016 or 2019. The BgInfo folder will be created on the C: drive if the folder does not already exist.
Then the latest BgInfo.zip file will be downloaded and extracted in the BgInfo folder. The LogonBgi.zip file which holds the preferred settings will also be downloaded and extracted to the BgInfo folder.
After extraction both .zip files will be deleted. A registry key (regkey) to AutoStart the BgInfo tool in combination with the logon.bgi config file will be created. At the end of the script BgInfo will
be started for the first time and the PowerShell window will be closed.
.NOTES
File Name: BgInfo_Automated_Windows_Server_2016_2019.ps1
Created: 08/09/2019
Last modified: 13/09/2019
Author: Wim Matthyssen
PowerShell: 5.1 or above
Requires: -RunAsAdministrator
OS: Windows Server 2016 and Windows Server 2019
Version: 2.2
Action: Change variables were needed to fit your needs
Disclaimer: This script is provided "As Is" with no warranties.
.EXAMPLE
.\BgInfo_Automated_Windows_Server_2016_2019.ps1
.LINK
https://tinyurl.com/y3wmsh7o
#>
## Variables
$bgInfoFolder = "C:\BgInfo"
$bgInfoFolderContent = $bgInfoFolder + "\*"
$itemType = "Directory"
$bgInfoUrl = "https://download.sysinternals.com/files/BGInfo.zip"
$bgInfoZip = "C:\BgInfo\BGInfo.zip"
$bgInfoEula = "C:\BgInfo\Eula.txt"
$logonBgiUrl = "https://tinyurl.com/yxlxbgun"
$logonBgiZip = "C:\BgInfo\LogonBgi.zip"
$bgInfoRegPath = "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run"
$bgInfoRegKey = "BgInfo"
$bgInfoRegType = "String"
$bgInfoRegKeyValue = "C:\BgInfo\Bginfo64.exe C:\BgInfo\logon.bgi /timer:0 /nolicprompt"
$regKeyExists = (Get-Item $bgInfoRegPath -EA Ignore).Property -contains $bgInfoRegkey
$writeEmptyLine = "`n"
$writeSeperator = " - "
$time = Get-Date -UFormat "%A %m/%d/%Y %R"
$foregroundColor1 = "Yellow"
$foregroundColor2 = "Red"
##-------------------------------------------------------------------------------------------------------------------------------------------------------
## Create BgInfo Registry Key to AutoStart
If ($regKeyExists -eq $True){Write-Host ($writeEmptyLine + "BgInfo regkey exists, script wil go on" + $writeSeperator + $time)`
-foregroundcolor $foregroundColor2 $writeEmptyLine
}Else{
New-ItemProperty -Path $bgInfoRegPath -Name $bgInfoRegkey -PropertyType $bgInfoRegType -Value $bgInfoRegkeyValue
Write-Host ($writeEmptyLine + "# BgInfo regkey added" + $writeSeperator + $time)`
-foregroundcolor $foregroundColor1 $writeEmptyLine}
##-------------------------------------------------------------------------------------------------------------------------------------------------------
## Run BgInfo
C:\BgInfo\Bginfo64.exe C:\BgInfo\logon.bgi /timer:0 /nolicprompt
##-------------------------------------------------------------------------------------------------------------------------------------------------------
## Exit PowerShell window 2 seconds after completion
Start-Sleep 2
stop-process -Id $PID
##-------------------------------------------------------------------------------------------------------------------------------------------------------