ок, неподумал, что походу REG_SZ подходит лучше.
примерно так:
Код:
Код: Выделить всё
;~ #RequireAdmin; для записи в HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
$sPath = EnvGet('WINDIR');EnvGet('OFFLINESYSTEM')
If Not $sPath Then Exit 1
$sVers = FileGetVersion($sPath & '\System32\winver.exe')
$sVers = StringRegExpReplace($sVers, '^(\d+\.\d+).*', '$1')
If @extended 1 Then Exit 2
ConsoleWrite($sVers & @LF)
RegWrite('HKEY_CURRENT_USER\Environment', 'OFFLINESYSTEMVER', 'REG_SZ', $sVers)
Run(@ComSpec & ' /C SETX OFFLINESYSTEMVER & $sVers"', '', @SW_HIDE)
If @error Then Exit 3
вроде работает
теперь как бы сделать так, чтобы запущенный с параметром /auto скрипт, вместо конкретно заданной переменной (WINDIR,OFFLINESYSTEM), перебирал диск, начиная с C: (но пропуская X: ) и дальше, и при наличии папки Windows, использовал её вместо переменной?