Correction de la façon de désactiver Bitlocker

Désactivation du délai écran noir sur secteur
Suppression de unattend.xml qui reste par endroit avec le mot de passe admin
Mise en place du numéro de version dans le pied de page à droite.
Reste à finaliser le contrôle de mise à jour disponible.
This commit is contained in:
benoit committed 2026-10-19 20:44:58 +02:00
1 parent 5a121718d4
commit a765701fed
8 files changed
+251 -21

No files matched your search

+78
View File
@@ -0,0 +1,78 @@
# DeployCenter - asynchronous Gitea release check
# Compatible with Windows PowerShell 5.1
function ConvertTo-DeployCenterComparableVersion {
[CmdletBinding()]
param([Parameter(Mandatory=$true)][string]$VersionText)
if ($VersionText -notmatch '(?i)(?:^|[-_])v?(?<Numeric>\d+(?:\.\d+){1,3})(?=$|[-+])') {
return $null
}
$parts = @($Matches.Numeric.Split('.'))
while ($parts.Count -lt 4) { $parts += '0' }
try { return [version]::Parse(($parts -join '.')) } catch { return $null }
}
function Start-DeployCenterVersionCheck {
[CmdletBinding()]
param(
[Parameter(Mandatory=$true)][string]$CurrentVersion,
[Parameter(Mandatory=$true)][string]$ReleaseApiUrl
)
try {
[System.Net.ServicePointManager]::SecurityProtocol =
[System.Net.ServicePointManager]::SecurityProtocol -bor [System.Net.SecurityProtocolType]::Tls12
$request = [System.Net.HttpWebRequest]::Create($ReleaseApiUrl)
$request.Method = 'GET'
$request.Accept = 'application/json'
$request.UserAgent = 'DeployCenter-VersionCheck/1.0'
$request.Timeout = 4000
$request.ReadWriteTimeout = 4000
$request.KeepAlive = $false
$asyncResult = $request.BeginGetResponse($null, $null)
return [pscustomobject]@{
CurrentVersion = $CurrentVersion
Request = $request
AsyncResult = $asyncResult
Completed = $false
Update = $null
}
} catch {
# This optional check must never interrupt startup or deployment.
return $null
}
}
function Complete-DeployCenterVersionCheck {
[CmdletBinding()]
param([Parameter(Mandatory=$true)]$Check)
if ($Check.Completed -or -not $Check.AsyncResult.IsCompleted) { return $null }
$Check.Completed = $true
$response = $null
$reader = $null
try {
$response = [System.Net.HttpWebResponse]$Check.Request.EndGetResponse($Check.AsyncResult)
if ([int]$response.StatusCode -ne 200) { return $null }
$reader = New-Object System.IO.StreamReader($response.GetResponseStream())
$release = ConvertFrom-Json -InputObject $reader.ReadToEnd() -ErrorAction Stop
if ($release.draft -or [string]::IsNullOrWhiteSpace([string]$release.tag_name)) { return $null }
$current = ConvertTo-DeployCenterComparableVersion -VersionText ([string]$Check.CurrentVersion)
$latest = ConvertTo-DeployCenterComparableVersion -VersionText ([string]$release.tag_name)
if ($null -eq $current -or $null -eq $latest -or $latest -le $current) { return $null }
$Check.Update = [pscustomobject]@{
CurrentVersion = [string]$Check.CurrentVersion
LatestVersion = [string]$release.tag_name
}
return $Check.Update
} catch {
# A network/API failure simply leaves the local version visible.
return $null
} finally {
if ($null -ne $reader) { $reader.Dispose() }
if ($null -ne $response) { $response.Dispose() }
}
}
Export-ModuleMember -Function Start-DeployCenterVersionCheck, Complete-DeployCenterVersionCheck