2013-04-09 4 views
2

Je comprends que, avec powershell, il est possible de modifier les valeurs de registre.en utilisant powershell pour modifier les données binaires du registre

par exemple ici: http://poshcode.org/3504

nous pouvons définir les propriétés comme celui-ci:

Set-ItemProperty 'HKCU:\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\ftp\UserChoice' -name ProgId IE.FTP 

cependant, est-il possible de définir ces valeurs binaires en utilisant ?? powershell

enter image description here

Répondre

5
  1. Lire la valeur (un tableau d'octets)
  2. Modifier l'élément de tableau
  3. Ecrire le tableau d'octets retour à la clé de Registre.

Voici un exemple:

$key = 'HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Connections' 

$data = (Get-ItemProperty -Path $key -Name DefaultConnectionSettings).DefaultConnectionSettings 
$data[8] = 9 
Set-ItemProperty -Path $key -Name DefaultConnectionSettings -Value $data 
+0

ce semble incroyable !! quand vous faites cela $ data [8] = 9. est-ce que cela convertit 9 en hex? –

+1

le tableau d'octets est un tableau de valeurs décimales 0-255. voir ['system.byte'] (http://msdn.microsoft.com/en-us/library/5bdb6693 (v = VS.71) .aspx). Les données ne sont affichées qu'en base 16 (hex) avec l'éditeur de registre. –

+0

réponse absolument incroyable! comment as-tu su faire ça? –

Questions connexes