Hallo Zusammen,
ich habe gerade das Problem, dass ich Silent etwas in die Registry für das Programm putty schreiben möchte.
Bisher hatte ich das immer über den Importbefehl gemacht, hier kommt aber immer die Bestätigungsanfrage der Benutzerkontensteuerung.
Der Import über die HKCUReg.au3 funktioniert leider nicht.
---funktioniert , aber Benutzerkontensteuerung muss aktiv bestätigt werden --
;$sCommand01 = ('regedit.exe /s "' & @ScriptDir & '\bin\putty.reg"')
;_RunDOS($sCommand01)
Mit dem Regwrite Befehl funktioniert das Grundsätzlich, aber die Werte stimmen nicht.
Mit folgendem Code schreibe ich nun die Einträge in die Registry. Es wird die Reg Datei eingelesen und dann Zeilenweise eingespielt.
-- schreiben in die Registry funktioniert, aber die Werte sind nicht korrekt ---
$putty_file = @ScriptDir & '\bin\putty.reg.txt'
$RegArray = IniReadSectionNames($putty_file)
;_ArrayDisplay($RegArray)
For $i = 1 To UBound($RegArray) -1
$RegArrayaSec = IniReadSection($putty_file, $RegArray[$i])
_ArrayDisplay($RegArrayaSec)
For $a = 1 To UBound($RegArrayaSec) -1
$dword = StringSplit($RegArrayaSec[$a][1],"dword:",1)
If $dword[0] = 1 Then
RegWrite(StringReplace($RegArray[$i],'"',''), StringReplace($RegArrayaSec[$a][0],'"',''), 'REG_SZ', StringReplace($RegArrayaSec[$a][1],'"',''))
EndIf
If $dword[0] = 2 Then
RegWrite(StringReplace($RegArray[$i],'"',''), StringReplace($RegArrayaSec[$a][0],'"',''), 'REG_DWORD', StringReplace(StringReplace($RegArrayaSec[$a][1],"dword:",""),'"',''))
EndIf
Next
Next
Alles anzeigen
Das Problem ist mir dann beim Öffnen von Putty aufgefallen. Hier hat der SSH Port nicht gestimmt.
Korrekt wäre der Port 22, es kommt aber immer nur Port 16.
Eintrag aus der exportierten Registry (wenn ich das wieder importiere funktioniert es)
Eintrag in der Registry
Wenn ich per Autoit Schreibe, kommt in der Registry folgendes an. Es wird ein aus Port 22 -> Port 16
Könnte das Problem am Zeichensatz oder an der Formatierung liegen?
Gibt es denn eine andere Möglichkeit den Import vorzunehmen?
Danke
Gruß gmmg