↑  ←  Описание функции


_Setting_MigrateRegToIni

Копирует данные из реестра в ini-файл

#Include <_Setting.au3>
_Setting_MigrateRegToIni ( $sKey, $sPath[, $flag = 0] )

Параметры

$sKey Путь к корневому разделу реестра программы
$sPath Путь к ini-файлу
$flag [необязательный] Может быть комбинацией следующих значений:
0 - (по умолчанию) пустой флаг
1 - Очищает место назначения перед копированием, удалив все секции в ini-файле
2 - Удаляет источник (раздел реестра) после копирования
4 - Использует IniWrite вместо IniWriteSection, чтобы не удалять существующие параметры в секциях

Возвращаемое значение

Успех:Возвращает True.
Ошибка:Возвращает False и устанавливает @error равным количеству параметров, которые не удалось записать, @extended содержит количество параметров, которые удалось записать.

Примечания

При записи в ini-файл каждый вызов записи секции удаляет одноимённую, поэтому незатронутыми останутся только секции отсутствующие в реестре, но присутствующие в ini-файле Используйте $flag = 4 чтобы записывать поверх, ничего не удаляя. Флаг $flag = 1 полностью очистит ini-файл.
Не актуально использовать вместе флаги 1 и 4.

Пример

; AZJIO
; http://www.autoitscript.com/forum/topic/143315-setting-choice-of-storage-options-registry-or-ini-file/
#include <_Setting.au3>

$sPath = FileOpenDialog('Открыть', @DesktopDir, 'Конфигурационный (*.ini)', 8, 'MySoft.ini')
If @error Then Exit
If StringRight($sPath, 4) <> '.ini' Then $sPath &= '.ini'

$sKey = 'HKEY_CURRENT_USER\Software\AutoIt v3'
_Setting_MigrateRegToIni($sKey, $sPath)

RunWait('notepad.exe "' & $sPath & '"') ; просмотр в блокноте
FileDelete($sPath) ; удаляет ini-файл