« PowerShell/Registre » : différence entre les versions
Aller à la navigation
Aller à la recherche
m (→Voir aussi) |
|||
| (5 versions intermédiaires par le même utilisateur non affichées) | |||
| Ligne 20 : | Ligne 20 : | ||
| <code>HKEY_CURRENT_CONFIG</code> || || | | <code>HKEY_CURRENT_CONFIG</code> || || | ||
|} | |} | ||
== Exemple général == | |||
<source> | |||
# Enable some feature | |||
Function EnableSomeFeature { | |||
Write-Output "Enabling some feature..." | |||
If (!(Test-Path "HKLM:\Some\Registry\Key")) { | |||
New-Item -Path "HKLM:\Some\Registry\Key" -Force | Out-Null | |||
} | |||
Set-ItemProperty -Path "HKLM:\Some\Registry\Key" -Name "SomeValueName" -Type String -Value "SomeValue" | |||
} | |||
# Disable some feature | |||
Function DisableSomeFeature { | |||
Write-Output "Disabling some feature..." | |||
Remove-ItemProperty -Path "HKLM:\Some\Registry\Key" -Name "SomeValueName" -ErrorAction SilentlyContinue | |||
} | |||
</source> | |||
== Liste d'éléments concernant les utilisateurs sur un serveur RDS == | == Liste d'éléments concernant les utilisateurs sur un serveur RDS == | ||
| Ligne 88 : | Ligne 106 : | ||
#Set-ItemProperty -Path "$branche\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name TaskbarGlomLevel -value | #Set-ItemProperty -Path "$branche\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name TaskbarGlomLevel -value | ||
#}</source> | #}</source> | ||
== Ajustement des effets pour la performance pour l'utilisateur courant == | |||
<source> | |||
# Déclaration de la fonction "SetVisualFXPerformance" | |||
Function SetVisualFXPerformance { | |||
Write-Output "Ajustement des effets pour la performance..." | |||
Set-ItemProperty -Path "HKCU:\Control Panel\Desktop" -Name "DragFullWindows" -Type String -Value 0 | |||
Set-ItemProperty -Path "HKCU:\Control Panel\Desktop" -Name "FontSmoothing" -Type String -Value 1 | |||
Set-ItemProperty -Path "HKCU:\Control Panel\Desktop" -Name "MenuShowDelay" -Type String -Value 0 | |||
Set-ItemProperty -Path "HKCU:\Control Panel\Desktop" -Name "UserPreferencesMask" -Type Binary -Value ([byte[]](90,32,07,80,10,0,0,0)) | |||
Set-ItemProperty -Path "HKCU:\Control Panel\Desktop\WindowMetrics" -Name "MinAnimate" -Type String -Value 0 | |||
Set-ItemProperty -Path "HKCU:\Control Panel\Keyboard" -Name "KeyboardDelay" -Type DWord -Value 0 | |||
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "IconsOnly" -Type DWord -Value 0 | |||
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "ListviewAlphaSelect" -Type DWord -Value 0 | |||
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "ListviewShadow" -Type DWord -Value 0 | |||
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "TaskbarAnimations" -Type DWord -Value 0 | |||
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "TaskbarGlomLevel" -Type DWord -Value 1 | |||
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "MMTaskbarGlomLevel" -Type DWord -Value 1 | |||
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "IconSizePreference" -Type DWord -Value 2 | |||
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\VisualEffects" -Name "VisualFXSetting" -Type DWord -Value 3 | |||
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Themes\Personalize" -Name "EnableTransparency" -Type DWord -Value 0 | |||
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\DWM" -Name "EnableAeroPeek" -Type DWord -Value 0 | |||
} | |||
# Exécution de la fonction | |||
SetVisualFXPerformance | |||
</source> | |||
== Navigateur, page d'accueil et nouvel onglet == | |||
=== Fichier d'inscription au registre (.reg) === | |||
<source> | |||
Windows Registry Editor Version 5.00 | |||
[HKEY_CURRENT_USER\SOFTWARE\Policies\Microsoft\Edge] | |||
; Autoriser le contenu Microsoft sur la page du nouvel onglet | |||
; https://learn.microsoft.com/fr-fr/deployedge/microsoft-edge-browser-policies/newtabpagecontentenabled | |||
"NewTabPageContentEnabled"=dword:00000000 | |||
"NewTabPageAllowedBackgroundTypes"=dword:00000003 | |||
"NewTabPageQuickLinksEnabled"=dword:00000000 | |||
"AlwaysOpenPdfExternally"==dword:00000001 | |||
; page d accueil par défaut | |||
; Définir la page Nouvel onglet comme | |||
page d accueil | |||
; https://learn.microsoft.com/fr-fr/deployedge/microsoft-edge-browser-policies/homepageisnewtabpage | |||
"HomepageIsNewTabPage"=dword:00000001 | |||
; https://learn.microsoft.com/fr-fr/deployedge/microsoft-edge-browser-policies/homepagelocation | |||
"HomepageLocation"="https://www.google.fr" | |||
; Configurer l URL du nouvel onglet | |||
; https://learn.microsoft.com/fr-fr/deployedge/microsoft-edge-browser-policies/newtabpagelocation | |||
"NewTabPageLocation"="https://www.google.fr" | |||
[HKEY_CURRENT_USER\SOFTWARE\Policies\Microsoft\Edge\Recommended] | |||
"AlwaysOpenPdfExternally"==dword:00000001 | |||
"ShowHomeButton"=dword:00000001 | |||
"HomepageIsNewTabPage"=dword:00000001 | |||
"HomepageLocation"="https://www.google.fr" | |||
"NewTabPageLocation"="https://www.google.fr" | |||
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Edge] | |||
"NewTabPageContentEnabled"=dword:00000000 | |||
"NewTabPageAllowedBackgroundTypes"=dword:00000003 | |||
"NewTabPageQuickLinksEnabled"=dword:00000000 | |||
"NewTabPageContentEnabled"=dword:00000000 | |||
"HomepageIsNewTabPage"=dword:00000001 | |||
"HomepageLocation"="https://www.google.fr" | |||
"NewTabPageLocation"="https://www.google.fr" | |||
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Edge\Recommended] | |||
"HomepageIsNewTabPage"=dword:00000001 | |||
"HomepageLocation"="https://www.google.fr" | |||
"NewTabPageLocation"="https://www.google.fr" | |||
</source> | |||
=== Script PowerShell === | |||
<source> | |||
# Déclaration de la fonction "SetWebBrowerHomePage" | |||
Function SetWebBrowerHomePage { | |||
$sitWeb = "https://www.google.fr" | |||
$sitWeb = "https://kono.phpage.fr" | |||
Write-Host "Ajustement pour le navigateur Microsoft Edge, en cours..." -ForegroundColor Yellow | |||
Set-ItemProperty -Path "HKCU:\SOFTWARE\Policies\Microsoft\Edge" -Name "NewTabPageContentEnabled" -Type DWord -Value 0 | |||
Set-ItemProperty -Path "HKCU:\SOFTWARE\Policies\Microsoft\Edge" -Name "NewTabPageAllowedBackgroundTypes" -Type DWord -Value 3 | |||
Set-ItemProperty -Path "HKCU:\SOFTWARE\Policies\Microsoft\Edge" -Name "NewTabPageQuickLinksEnabled" -Type DWord -Value 0 | |||
Set-ItemProperty -Path "HKCU:\SOFTWARE\Policies\Microsoft\Edge" -Name "AlwaysOpenPdfExternally" -Type DWord -Value 1 | |||
Set-ItemProperty -Path "HKCU:\SOFTWARE\Policies\Microsoft\Edge" -Name "HomepageIsNewTabPage" -Type DWord -Value 1 | |||
Set-ItemProperty -Path "HKCU:\SOFTWARE\Policies\Microsoft\Edge" -Name "HomepageLocation" -Type string -Value $sitWeb | |||
Set-ItemProperty -Path "HKCU:\SOFTWARE\Policies\Microsoft\Edge" -Name "NewTabPageLocation" -Type String -Value $sitWeb | |||
Set-ItemProperty -Path "HKCU:\SOFTWARE\Policies\Microsoft\Edge" -Name "AlwaysOpenPdfExternally" -Type DWord -Value 1 | |||
Write-Host "Ajustement pour le navigateur Microsoft Edge, terminé" -ForegroundColor Green | |||
Write-Host "Contrôle de la clé 'HomepageLocation' :" (Get-ItemProperty -Path "HKCU:\SOFTWARE\Policies\Microsoft\Edge" -Name "HomepageLocation").HomepageLocation | |||
} | |||
# Exécution de la fonction | |||
SetWebBrowerHomePage | |||
</source> | |||
== Voir aussi == | == Voir aussi == | ||
Dernière version du 5 décembre 2025 à 17:12
PowerShell et le registre.
Généralité
Les différentes entrées pour la base de registre (BDR) sont :
| Racine | Abrégé | Commentaire |
|---|---|---|
HKEY_CLASSES_ROOT |
HKCR |
|
HKEY_CURRENT_USER |
HKCU |
|
HKEY_LOCAL_MACHINE |
HKLM |
|
HKEY_USERS |
HKU |
|
HKEY_CURRENT_CONFIG |
Exemple général
# Enable some feature
Function EnableSomeFeature {
Write-Output "Enabling some feature..."
If (!(Test-Path "HKLM:\Some\Registry\Key")) {
New-Item -Path "HKLM:\Some\Registry\Key" -Force | Out-Null
}
Set-ItemProperty -Path "HKLM:\Some\Registry\Key" -Name "SomeValueName" -Type String -Value "SomeValue"
}
# Disable some feature
Function DisableSomeFeature {
Write-Output "Disabling some feature..."
Remove-ItemProperty -Path "HKLM:\Some\Registry\Key" -Name "SomeValueName" -ErrorAction SilentlyContinue
}
Liste d'éléments concernant les utilisateurs sur un serveur RDS
$utilisateurListe = Get-ChildItem -Path Registry::HKEY_USERS\ | Where-Object {$_.Name -match '^HKEY_USERS\\S-1-5-21-[\d\-]+$'}
foreach ($utilisateur in $utilisateurListe) {
$chemin = Join-Path $utilisateur.PSPath "Software\FSLogix\Profiles\Session"
$element = Get-ItemProperty -Path $chemin
Write-Host $utilisateur, $element.ProfilePath, $element.LocalProfilePath
}
Création de plusieurs clés
Exemple 1
$racine = "S-1-5-21-1234567890-123456789-123456789-"
$liste = Get-ChildItem -Path Registry::HKEY_USERS\ | Where-Object {$_.Name -match "$racine\d{4}$"}
foreach ($compte in $liste) {
$branche = "Registry::\$compte\Volatile Environment\"
## Affichage de la valeur de la clé "USERNAME"
(Get-ItemProperty -Path $branche -Name USERNAME).username
## Création d'éléments
New-ItemProperty -Path $branche -Name "test" -PropertyType String -Value "Alphorm"
New-ItemProperty -Path $branche -Name "HomepageLocation" -PropertyType String -Value "http://phpage.fr"
}
Exemple 2
#HKEY_USERS\S-1-5-21-1234567890-1234567890-123456789-1234 C:\Users\dm C:\Users\local_dm
#HKEY_USERS\S-1-5-21-1234567890-1234567890-123456789-1248 C:\Users\adminphp C:\Users\local_adminphp
$racine = "S-1-5-21-1234567890-1234567890-123456789"
$liste = Get-ChildItem -Path Registry::HKEY_USERS\ | Where-Object {$_.Name -match "$racine-\d{4}$"}
$compte = "$racine-1248"
#foreach ($compte in $liste) {
$branche = "Registry::HKEY_USERS\$compte"
## Affichage de la valeur de la clé "USERNAME"
(Get-ItemProperty -Path $branche -Name USERNAME).username
Get-ItemProperty -Path "$branche\Control Panel\Desktop" -Name UserPreferencesMask
Get-ItemProperty -Path "$branche\Control Panel\Desktop" -Name DragFullWindows
Get-ItemProperty -Path "$branche\Control Panel\Desktop" -Name FontSmoothing
Get-ItemProperty -Path "$branche\Software\Microsoft\Windows\CurrentVersion\Themes\Personalize" -Name EnableTransparency
## test de présence de la clé ; si non présence alors création
$valeurs = Get-ItemProperty -path "$branche\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced"
if ($valeurs.PSObject.Properties.Name -notcontains "TaskbarGlomLevel") {
New-ItemProperty -Path "$branche\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "TaskbarGlomLevel" -PropertyType DWord -Value "1"
}
#Get-ItemProperty -Path "$branche\Control Panel\Desktop\WindowMetrics" -Name MinAnimate
## Création d'éléments
#New-ItemProperty -Path $branche -Name "test" -PropertyType String -Value "Alphorm"
#New-ItemProperty -Path $branche -Name "HomepageLocation" -PropertyType String -Value "http://phpage.fr"
## Modification de valeur d'élément
Set-ItemProperty -Path "$branche\Control Panel\Desktop" -Name DragFullWindows -Value "0"
Set-ItemProperty -Path "$branche\Software\Microsoft\Windows\CurrentVersion\Themes\Personalize" -Name EnableTransparency -Value "0"
#Set-ItemProperty -Path "$branche\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name TaskbarGlomLevel -value
#}
Ajustement des effets pour la performance pour l'utilisateur courant
# Déclaration de la fonction "SetVisualFXPerformance"
Function SetVisualFXPerformance {
Write-Output "Ajustement des effets pour la performance..."
Set-ItemProperty -Path "HKCU:\Control Panel\Desktop" -Name "DragFullWindows" -Type String -Value 0
Set-ItemProperty -Path "HKCU:\Control Panel\Desktop" -Name "FontSmoothing" -Type String -Value 1
Set-ItemProperty -Path "HKCU:\Control Panel\Desktop" -Name "MenuShowDelay" -Type String -Value 0
Set-ItemProperty -Path "HKCU:\Control Panel\Desktop" -Name "UserPreferencesMask" -Type Binary -Value ([byte[]](90,32,07,80,10,0,0,0))
Set-ItemProperty -Path "HKCU:\Control Panel\Desktop\WindowMetrics" -Name "MinAnimate" -Type String -Value 0
Set-ItemProperty -Path "HKCU:\Control Panel\Keyboard" -Name "KeyboardDelay" -Type DWord -Value 0
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "IconsOnly" -Type DWord -Value 0
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "ListviewAlphaSelect" -Type DWord -Value 0
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "ListviewShadow" -Type DWord -Value 0
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "TaskbarAnimations" -Type DWord -Value 0
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "TaskbarGlomLevel" -Type DWord -Value 1
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "MMTaskbarGlomLevel" -Type DWord -Value 1
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "IconSizePreference" -Type DWord -Value 2
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\VisualEffects" -Name "VisualFXSetting" -Type DWord -Value 3
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Themes\Personalize" -Name "EnableTransparency" -Type DWord -Value 0
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\DWM" -Name "EnableAeroPeek" -Type DWord -Value 0
}
# Exécution de la fonction
SetVisualFXPerformance
Fichier d'inscription au registre (.reg)
Windows Registry Editor Version 5.00 [HKEY_CURRENT_USER\SOFTWARE\Policies\Microsoft\Edge] ; Autoriser le contenu Microsoft sur la page du nouvel onglet ; https://learn.microsoft.com/fr-fr/deployedge/microsoft-edge-browser-policies/newtabpagecontentenabled "NewTabPageContentEnabled"=dword:00000000 "NewTabPageAllowedBackgroundTypes"=dword:00000003 "NewTabPageQuickLinksEnabled"=dword:00000000 "AlwaysOpenPdfExternally"==dword:00000001 ; page d accueil par défaut ; Définir la page Nouvel onglet comme page d accueil ; https://learn.microsoft.com/fr-fr/deployedge/microsoft-edge-browser-policies/homepageisnewtabpage "HomepageIsNewTabPage"=dword:00000001 ; https://learn.microsoft.com/fr-fr/deployedge/microsoft-edge-browser-policies/homepagelocation "HomepageLocation"="https://www.google.fr" ; Configurer l URL du nouvel onglet ; https://learn.microsoft.com/fr-fr/deployedge/microsoft-edge-browser-policies/newtabpagelocation "NewTabPageLocation"="https://www.google.fr" [HKEY_CURRENT_USER\SOFTWARE\Policies\Microsoft\Edge\Recommended] "AlwaysOpenPdfExternally"==dword:00000001 "ShowHomeButton"=dword:00000001 "HomepageIsNewTabPage"=dword:00000001 "HomepageLocation"="https://www.google.fr" "NewTabPageLocation"="https://www.google.fr" [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Edge] "NewTabPageContentEnabled"=dword:00000000 "NewTabPageAllowedBackgroundTypes"=dword:00000003 "NewTabPageQuickLinksEnabled"=dword:00000000 "NewTabPageContentEnabled"=dword:00000000 "HomepageIsNewTabPage"=dword:00000001 "HomepageLocation"="https://www.google.fr" "NewTabPageLocation"="https://www.google.fr" [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Edge\Recommended] "HomepageIsNewTabPage"=dword:00000001 "HomepageLocation"="https://www.google.fr" "NewTabPageLocation"="https://www.google.fr"
Script PowerShell
# Déclaration de la fonction "SetWebBrowerHomePage"
Function SetWebBrowerHomePage {
$sitWeb = "https://www.google.fr"
$sitWeb = "https://kono.phpage.fr"
Write-Host "Ajustement pour le navigateur Microsoft Edge, en cours..." -ForegroundColor Yellow
Set-ItemProperty -Path "HKCU:\SOFTWARE\Policies\Microsoft\Edge" -Name "NewTabPageContentEnabled" -Type DWord -Value 0
Set-ItemProperty -Path "HKCU:\SOFTWARE\Policies\Microsoft\Edge" -Name "NewTabPageAllowedBackgroundTypes" -Type DWord -Value 3
Set-ItemProperty -Path "HKCU:\SOFTWARE\Policies\Microsoft\Edge" -Name "NewTabPageQuickLinksEnabled" -Type DWord -Value 0
Set-ItemProperty -Path "HKCU:\SOFTWARE\Policies\Microsoft\Edge" -Name "AlwaysOpenPdfExternally" -Type DWord -Value 1
Set-ItemProperty -Path "HKCU:\SOFTWARE\Policies\Microsoft\Edge" -Name "HomepageIsNewTabPage" -Type DWord -Value 1
Set-ItemProperty -Path "HKCU:\SOFTWARE\Policies\Microsoft\Edge" -Name "HomepageLocation" -Type string -Value $sitWeb
Set-ItemProperty -Path "HKCU:\SOFTWARE\Policies\Microsoft\Edge" -Name "NewTabPageLocation" -Type String -Value $sitWeb
Set-ItemProperty -Path "HKCU:\SOFTWARE\Policies\Microsoft\Edge" -Name "AlwaysOpenPdfExternally" -Type DWord -Value 1
Write-Host "Ajustement pour le navigateur Microsoft Edge, terminé" -ForegroundColor Green
Write-Host "Contrôle de la clé 'HomepageLocation' :" (Get-ItemProperty -Path "HKCU:\SOFTWARE\Policies\Microsoft\Edge" -Name "HomepageLocation").HomepageLocation
}
# Exécution de la fonction
SetWebBrowerHomePage