Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
5a121718d4 | ||
|
|
6cf58b5646 |
No files matched your search
+3
-1
@@ -51,7 +51,7 @@ powershell.exe -ExecutionPolicy Bypass -File .\DeployCenter.ps1 `
|
||||
-ConfirmDiskErase -RestartWhenComplete -CopyLocally Sources,Drivers
|
||||
```
|
||||
|
||||
Pour laisser Windows gérer OOBE, remplacer les paramètres de profil et de nom d’hôte par `-UnattendProfileId OOBE`. La commande retourne le code de processus `0` en cas de succès et `1` si la préparation ou le déploiement échoue. Après une tentative d’installation, le journal complet est copié à la racine de `C:\`, en cas de succès comme d’échec ; l’original reste dans `Logs`.
|
||||
Pour laisser Windows gérer OOBE, remplacer les paramètres de profil et de nom d’hôte par `-UnattendProfileId OOBE`. La commande retourne le code de processus `0` en cas de succès et `1` si la préparation ou le déploiement échoue. Après une tentative d’installation, le journal complet est copié à la racine de `C:\`, en cas de succès comme d’échec ; l’original reste dans `%TEMP%\DeployCenter` jusqu’au redémarrage de WinPE.
|
||||
|
||||
Conserver à côté du script les ressources habituelles du projet (`Assets`, `uvnc`, `HardwareInfo.ps1`, etc.). Les dossiers `Modules` et `Themes` doivent rester à côté de `DeployCenter.ps1`.
|
||||
|
||||
@@ -93,6 +93,8 @@ Pour produire `AdminPasswordBase64`, lancer `powershell.exe -ExecutionPolicy Byp
|
||||
|
||||
## Historique récent
|
||||
|
||||
- Les journaux de session sont maintenant créés sous `%TEMP%\DeployCenter` par `Logging.psm1`, afin que le dossier du dépôt puisse être en lecture seule. La copie finale du journal à la racine de `C:\` est conservée ; les deux manuels et le changelog le précisent.
|
||||
- Le template Unattend `OEMInstallation.xml` définit `PreventDeviceEncryption=true` pour empêcher l’activation automatique du chiffrement de l’appareil par BitLocker. Il désactive aussi l’hibernation et la veille automatique sur secteur. Les deux manuels documentent ces réglages ; le parcours « Avec OOBE » reste sans fichier Unattend.
|
||||
- Correction des chemins d’images dans les deux README : le dépôt suit le dossier `Images/` avec une majuscule, nécessaire au rendu Gitea sensible à la casse ; l’espace du nom de fichier est encodé en `%20`.
|
||||
- Intégration des six captures de `Images/` dans `README.md` et `README-en.md`, aux étapes de sélection des sources, de progression et de fin du déploiement.
|
||||
- Traduction anglaise du manuel utilisateur dans `README-en.md`, avec conservation des commandes et identifiants de profils.
|
||||
|
||||
@@ -25,6 +25,7 @@ Password=
|
||||
; Empty = the Drivers folder next to DeployCenter.
|
||||
RootPath=
|
||||
; Official references for finding manufacturer driver packs.
|
||||
; https://download.lenovo.com/cdrt/ddrc/RecipeCardWeb.html
|
||||
LenovoURL=https://docs.lenovocdrt.com/dpm/deploy/recipe-cards.html
|
||||
DellURL=https://www.dell.com/support/kbdoc/en-us/000124139/dell-command-deploy-driver-packs-for-enterprise-client-os-deployment
|
||||
HPURL=https://ftp.hp.com/pub/caps-softpaq/cmit/HP_Driverpack_Matrix_x64.html
|
||||
|
||||
+1
-2
@@ -140,7 +140,6 @@ try {
|
||||
$script:AssetsRoot = Join-Path $script:DeployRoot "Assets"
|
||||
$script:LogoPath = Join-Path $script:AssetsRoot "logo.png"
|
||||
$script:LogoDarkPath = Join-Path $script:AssetsRoot "logo-dark.png"
|
||||
$script:LogRoot = Join-Path $script:DeployRoot "Logs"
|
||||
|
||||
# Network detection is centralized in Modules\\Network.psm1.
|
||||
$networkModulePath = Join-Path $PSScriptRoot "Modules\\Network.psm1"
|
||||
@@ -156,7 +155,7 @@ if (-not (Test-Path -LiteralPath $loggingModulePath -PathType Leaf)) {
|
||||
throw "Logging module not found: $loggingModulePath"
|
||||
}
|
||||
. ([scriptblock]::Create([System.IO.File]::ReadAllText($loggingModulePath)))
|
||||
Initialize-DeployCenterLogging -LogRoot $script:LogRoot -IPv4 $script:DeployIPv4
|
||||
Initialize-DeployCenterLogging -IPv4 $script:DeployIPv4
|
||||
# Keep the main script scope so Write-Log remains available to WinForms callbacks.
|
||||
$script:SourceLogAction = {
|
||||
param($Message, $Level, [bool]$SystemOutput = $false)
|
||||
|
||||
@@ -1,5 +0,0 @@
|
||||
# Ignorer tous les fichiers de ce répertoire
|
||||
*
|
||||
|
||||
# Sauf celui-ci
|
||||
!.gitignore
|
||||
@@ -4,14 +4,15 @@
|
||||
function Initialize-DeployCenterLogging {
|
||||
[CmdletBinding()]
|
||||
param(
|
||||
[Parameter(Mandatory = $true)]
|
||||
[string]$LogRoot,
|
||||
|
||||
[AllowNull()]
|
||||
[string]$IPv4 = $null
|
||||
)
|
||||
|
||||
$script:LogRoot = $LogRoot
|
||||
$tempRoot = [Environment]::GetEnvironmentVariable('TEMP')
|
||||
if ([string]::IsNullOrWhiteSpace($tempRoot)) {
|
||||
throw 'The TEMP environment variable is not defined.'
|
||||
}
|
||||
$script:LogRoot = Join-Path $tempRoot 'DeployCenter'
|
||||
if (-not (Test-Path -LiteralPath $script:LogRoot -PathType Container)) {
|
||||
New-Item -Path $script:LogRoot -ItemType Directory -Force -ErrorAction Stop | Out-Null
|
||||
}
|
||||
|
||||
+3
-1
@@ -159,6 +159,8 @@ Enter the password at the hidden prompt, then put the resulting value in `[Unatt
|
||||
|
||||
The `SupportProvider`, `SupportURL`, and `SupportAppURL` keys are optional. `SupportURL` is a support website; `SupportAppURL` is the protocol for a support application. `WallpaperPath` accepts an absolute or DeployCenter-relative `.png`, `.jpg`, or `.bmp` path. When empty, the Windows wallpaper is left unchanged. These customizations apply when an Unattend profile is selected, not with **Use OOBE**.
|
||||
|
||||
The `OEMInstallation` Unattend profile asks Windows not to enable automatic BitLocker device encryption (`PreventDeviceEncryption=true`). It also disables hibernation and automatic sleep while on AC power; battery behavior is unchanged. Disabling hibernation also disables Fast Startup. These settings do not apply to **Use OOBE**, which keeps the default Windows behavior. A policy or manual action can still enable BitLocker later.
|
||||
|
||||
## Unattended deployment
|
||||
|
||||
`-NonInteractive` starts deployment without asking for the choices on the first page. All required parameters must be provided, and `-ConfirmDiskErase` is mandatory. The progress window is still displayed.
|
||||
@@ -195,7 +197,7 @@ Conditional and optional parameters:
|
||||
|
||||
## Logs and troubleshooting
|
||||
|
||||
The **Log** button opens the session log. Log files are created in `Logs` with the detected IPv4 address and a timestamp. After a deployment attempt, a copy is placed at the root of `C:\` so it remains accessible if the network share is no longer available.
|
||||
The **Log** button opens the session log. The file is created in `%TEMP%\DeployCenter` with the detected IPv4 address and a timestamp, so the DeployCenter repository can remain read-only. After a deployment attempt, a copy is placed at the root of `C:\` so it remains accessible if the network share is no longer available. WinPE clears `%TEMP%` on restart.
|
||||
|
||||
If deployment fails:
|
||||
|
||||
|
||||
@@ -159,6 +159,8 @@ Saisissez le mot de passe à l’invite masquée, puis placez la valeur produite
|
||||
|
||||
Les clés `SupportProvider`, `SupportURL` et `SupportAppURL` sont facultatives. `SupportURL` correspond à un site Web d’assistance ; `SupportAppURL` correspond au protocole d’une application d’assistance. `WallpaperPath` accepte un chemin `.png`, `.jpg` ou `.bmp`, absolu ou relatif au dossier DeployCenter ; vide, il laisse le fond Windows inchangé. Ces personnalisations sont appliquées avec un profil Unattend, pas avec **Use OOBE**.
|
||||
|
||||
Le profil Unattend `OEMInstallation` demande à Windows de ne pas activer le chiffrement automatique de l’appareil via BitLocker (`PreventDeviceEncryption=true`). Il désactive aussi l’hibernation et la veille automatique lorsque le PC est sur secteur ; le comportement sur batterie reste inchangé. La désactivation de l’hibernation désactive également le démarrage rapide. Ces options ne s’appliquent pas au choix **Avec OOBE**, qui conserve le comportement Windows par défaut. Une stratégie ou une action manuelle peut toujours activer ultérieurement le chiffrement BitLocker.
|
||||
|
||||
## Déploiement automatisé
|
||||
|
||||
`-NonInteractive` lance le déploiement sans demander les choix de la première page. Tous les paramètres requis doivent être fournis et `-ConfirmDiskErase` est obligatoire. L’application affiche toujours la fenêtre de progression.
|
||||
@@ -195,7 +197,7 @@ Paramètres conditionnels et facultatifs :
|
||||
|
||||
## Journaux et dépannage
|
||||
|
||||
Le bouton **Journal** ouvre le journal de session. Les fichiers sont créés dans `Logs` avec l’adresse IPv4 détectée et l’horodatage. Après une tentative de déploiement, une copie du journal est placée à la racine de `C:\` pour rester accessible même si le partage réseau n’est plus disponible.
|
||||
Le bouton **Journal** ouvre le journal de session. Le fichier est créé dans `%TEMP%\DeployCenter` avec l’adresse IPv4 détectée et l’horodatage ; le dépôt DeployCenter peut donc rester en lecture seule. Après une tentative de déploiement, une copie du journal est placée à la racine de `C:\` pour rester accessible même si le partage réseau n’est plus disponible. Le contenu de `%TEMP%` est supprimé au redémarrage de WinPE.
|
||||
|
||||
En cas d’échec :
|
||||
|
||||
|
||||
@@ -5,6 +5,9 @@
|
||||
<component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS">
|
||||
<ComputerName></ComputerName>
|
||||
</component>
|
||||
<component name="microsoft-windows-securestartup-filterdriver-" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS">
|
||||
<PreventDeviceEncryption>true</PreventDeviceEncryption>
|
||||
</component>
|
||||
<component name="Microsoft-Windows-Deployment" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS">
|
||||
<RunSynchronous>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
@@ -17,6 +20,16 @@
|
||||
<Description>Enable NumLock for new users</Description>
|
||||
<Path>cmd.exe /c reg load HKU\DeployCenterDefaultUser "%SystemDrive%\Users\Default\NTUSER.DAT" && reg add "HKU\DeployCenterDefaultUser\Control Panel\Keyboard" /v InitialKeyboardIndicators /t REG_SZ /d 2 /f && reg unload HKU\DeployCenterDefaultUser</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>3</Order>
|
||||
<Description>Disable hibernation</Description>
|
||||
<Path>cmd.exe /c powercfg.exe /hibernate off</Path>
|
||||
</RunSynchronousCommand>
|
||||
<RunSynchronousCommand wcm:action="add">
|
||||
<Order>4</Order>
|
||||
<Description>Disable automatic sleep on AC power</Description>
|
||||
<Path>cmd.exe /c powercfg.exe /change standby-timeout-ac 0</Path>
|
||||
</RunSynchronousCommand>
|
||||
</RunSynchronous>
|
||||
</component>
|
||||
</settings>
|
||||
|
||||
Reference in new issue
Block a user