[решено] Две системы - перезагрузка.

Ответить
Аватара пользователя
semiono

[решено] Две системы - перезагрузка.

Сообщение semiono »

Пришла незатейливая идея, подскажите!...

Нужно в файле boot.ini заменить дефолтную строку, всмысле каждый раз на другую - не дефолтную.

Напомню содержимое, например мой boot.ini файл:





Код:

Код: Выделить всё

[boot loader]
timeout=2
default=multi(0)disk(0)rdisk(0)partition(3)\J
[operating systems]
multi(0)disk(0)rdisk(0)partition(3)\J="OS (x64)" /fastdetect
multi(0)disk(0)rdisk(0)partition(3)\I="OS (x86)" /fastdetect
C:\BOOT.BIN=":.:.:.:"

Надо зделать так, чтобы скрипт поочерёдно заменял

строку multi(0)disk(0)rdisk(0)partition(3)\J на multi(0)disk(0)rdisk(0)partition(3)\I



Смысл в том, что любая строка может быть любой, (то-есть её надо обязательно считывать

из файла, а не указать явно), например, multi(0)disk(0)rdisk(1)partition(2)\WINZZ итп.



А смысл скрипта в том чтобы просто кликнуть по нему и неглядя перезагрузиться в другую систему,

так как лезть в "control sysdm.cpl,,3" слишком далеко. Я потом даже shutdoun.exe... добавлю в скрипт.



Если надо перезагрузиться в текущую систему, то скрипт не нужен Изображение
Аватара пользователя
Creat0R

Re: [решено] Две системы - перезагрузка.

Сообщение Creat0R »

Так:





Код:

Код: Выделить всё

$sBootIni_File = @HomeDrive & "\boot.ini"
$sBootLoader_Default = IniRead($sBootIni_File, "Boot Loader", "Default", "")
$aOperatingSystems = IniReadSection($sBootIni_File, "Operating Systems")
For $i = 1 To UBound($aOperatingSystems)-1
    If $aOperatingSystems[$i][0]  $sBootLoader_Default Then
        IniWrite($sBootIni_File, "Boot Loader", "Default", $aOperatingSystems[$i][0])
        ExitLoop
    EndIf
Next

?



Кстати, на эту тему есть
Boot Manager - Выбор ОС для загрузки
.
Аватара пользователя
semiono

Re: [решено] Две системы - перезагрузка.

Сообщение semiono »

Отлично! Я сначала думал только номер партишн будет меняться, действительно и название папки заменяется!

У меня две XP на одном диске стоят, поэтому это важно было.



Я к скрипту добавлю ещё такое

#Include

#NoTrayIcon

TraySetIcon("warning")

Sleep(1000)

Shutdown(6)

Изображение




Цитата Creat0R:



Boot Manager - Выбор ОС для загрузки.
[решено] Две системы - перезагрузка.




Это хорошо! Но мне нравиться когда аскетично. Чтоб вообще без окон Изображение



Кстати, этот скрипт можно тоже порекомендовать, может тоже найдёт любителей, офигенно простое решение,

однако мне не приходила раньше эта идея. Но зато с правильным выверенным кодом от Creat0R! Спасибо +1
Ответить

Вернуться в «AutoIt»