Описание команды


iniwr

Запись значения ключу INI файла.

iniwr=FileINI||Section||Key||Value||Mode

Параметры:

FileINIПуть.
  FileINI - путь к стандартному ini-файлу.
  @ListINI - список INI файлов, где ListINI может иметь варианты:
    • %WL - список выделенных файлов.
    • List - путь к файлу списка полных путей. см. Дополнение №7.
    • cliplist - список полных путей из буфера обмена.
    • PS<> - список объектов каталога. см. Дополнение №22.
    • FOLDC<> - список объектов содержимого каталогов. см. Дополнение №22.
    • FOLDM<> - список выделенных объектов и всех объектов в подпапках. см. Дополнение №22.
    • LISTF<> - список заданных объектов. см. Дополнение №22.
    • [tc] - различные списки панелей ([tc=TL]) см. Дополнение №12.
    • GLOBALNAME - данные, переданные глобальными переменными. см. Дополнение №23.
SectionИмя. Section - имя секции в ini-файле.
KeyИмя. Key - имя ключа параметра в ini-файле.
ValueЗначение. Value - значение параметра в ini-файле.
ModeУсловие. [необязательный]:
  0 - записать, если значение существующего ключа Value отсутствует.
  1 - записать, если значение существующего ключа Value присутствует.
  2 - записать, если передаваемое значение Value не пустое.

Примечания:

Стандартный ini-файл имеет следующую структуру:

[Имя секции]
Ключ=Значение


В параметрах команды может использоваться:
  • GLOBALNAME - информация, получаемая из других команд через глобальные переменные см. Дополнение №23
  • [info] или <info> - информация, получаемая через параметр см. Дополнение №10
  • Путь возвращаемый параметром <xfolder> см. Дополнение №11

В версии 10.0 появилась возможность вставлять значения ключей Value необходимые символы с помощью функций Autoit Chr() и ChrW(), которые заменяются соответствующими символами, а так же ClipGet(), которая заменяется содержимым буфера обмена и Number(), позволяющая производить математические действия.

См. также:

inidc, inidd, inidk, inidl, inidn, inids, inidx, inidz, inirs, inirz, inisr, iniss, inist, inivr, iniws, iniww

Примеры:
 Как создать кнопку?

<HOTKEY=10> iniwr=%%TCIMG_PATH%%\TCIMGU.ini||Navigation||Path||"%P" <HOTKEY=X> exect=$var_path=##$INI<8//%%TCIMG_PATH%%\TCIMGU.ini//Navigation//Path> patha=$var_path ;; по зажатой клавише SHIFT запомнить путь активной панели; Простое нажатие - переход по запомненному пути

<IF> %E = mid <THEN> iniwr=%%COMMANDER_PATH%%\Wincmd.ini||Lister||PreloadFilterType32||0 <ELSE> iniwr=%%COMMANDER_PATH%%\Wincmd.ini||Lister||PreloadFilterType32||2 <ENDIF> tcimg=$cm304 ;; быстрый просмотр для файла под курсором, относительно расширения "mid"

aends=-1??-1||&&([^=]+)(=)(.+)!!$1@CRLF$3 exect=$var_stroka=##GLOBALAENDS<1> GLOBALAENDS<c2> iniwr=$f257||Russian||$var_stroka||ClipGet() ;; добавить в TCIMGU.lng в секцию [Russian] содержимое буфера (ключ=значение)

alist=%WL <FOR> 1 <TO> GLOBALALIST<0> iniwr=GLOBALALIST<:INDEX:>||InternetShortcut||IconFile|| slist=INI<8//GLOBALALIST<:INDEX:>//InternetShortcut//URL>||formt<0!!^(?:https?:\/\/)?(?:www\.)?([^\/]+)> renmm=GLOBALALIST<:INDEX:>||$$_-_(GLOBALSLIST<1>) <NEXT> ;; в выделенных *.URL удалить значение поля "IconFile" + переименовать - добавить в конец имени файла доменное имя взятое из из поля "URL"

copyy=%COMMANDER_PATH%\Language\WCMD_RUS.ini||%COMMANDER_PATH%\Language\//1||**1!!?.bkp rends=@<sicon=%%COMMANDER_PATH%%\Wcmicons.dll|32|1|0|1> sends=-1??-1||&&.*~~!! <FOR> 1 <TO> GLOBALSENDS<0> iniwr=%COMMANDER_PATH%\Language\WCMD_RUS.ini||GLOBALSENDS<:INDEX:>||Button||Wcmicons.dll,GLOBALSICON1<3>||1 <NEXT> ;; из предварительно скопированного текста файла WCMD_RUS.MNU получить имена секций кнопок в файле WCMD_RUS.ini, в полученных секциях заменить в значениях номер значка библиотеки Wcmicons.dll на номер значка выбранного в окне просмотра библиотеки (предварительное создание бэкапа WCMD_RUS.ini.bkp)

copyy=<info=x50>||x!!1||**1!!?.bkp textt=<info=x50>||&&(menu)(\d+)(=[^\r\n]*)!!$1$2$3~~($2) pause=3000 textt=<info=x50>||&&(menu\d+=[^\r\n]*)~~(\(\d+\))!!$1 shape=U14 aends=@<sicon=[group=BOX_U28]|32|1|0|1> iniwr=<info=x50>||Buttonbar||button[input=BOX_U16]||GLOBALAENDS<1> barupd ;; заменить значок кнопки на панели инструментов TC на значок выбранный в диалоговом окне

creat=$f250||TCIMGU.lng||code<1>||owrite<8> aends=-1??-1||&&([^=]+)(=)(.+)!!$1@CRLF$3 bends=$GLOBALAENDS??-1||?T|p2#2|d,1:-1 cends=$GLOBALAENDS??-1||?T|p1#2|d,1:-1 <FOR> 1 <TO> GLOBALBENDS<0> GLOBALCENDS<c:INDEX:> iniwr=$f257||Russian||GLOBALBENDS<:INDEX:>||ClipGet() <NEXT> ;; добавить в TCIMGU.lng в секцию Russian шаблоны диалоговых окон из буфера обмена

exect=$var_i=##[group=BOX16] <IF> $var_i = 1 <THEN> iniwr=%%COMMANDER_PATH%%\WinColor.ini||Colors||ActiveTabColor||<info=c228> <ELSE> inidk=%%COMMANDER_PATH%%\WinColor.ini||Colors||ActiveTabColor <ENDIF> rstart ;; цвет активной вкладки включить/выключить

exect=$var_i='%E'='mid'?0:2 iniwr=%%COMMANDER_PATH%%\Wincmd.ini||Lister||PreloadFilterType32||$var_i tcimg=$cm304 ;; быстрый просмотр для файла под курсором, относительно расширения "mid"

exect=$var_i='%E'='mid'?0:2 iniwr=%%COMMANDER_PATH%%\Wincmd.ini||Lister||PreloadFilterType32||$var_i tcimg=$cm903 ;; просмотр для файла под курсором, относительно расширения "mid"

global copyy=%%TCIMG_PATH%%\TCIMGGO.exe||x||<input=Новый~~лаунчер|Введите~~имя~~для~~нового~~лаунчера||300|120> iniwr=%%TCIMG_PATH%%\TCIMGU.ini||Commands||<info=o72GLOBALCOPYY<1>>||ClipGet() ;; создать копию файла TCIMGGO.exe с именем вводимом в диалоге и присвоении ему в секции Commands значение из буфера

infos=2||16||1 slist=$GLOBALINFOS0||:!!||??2 shape=50 iniwr=%%COMMANDER_PATH%%\Wincmd.ini||DriveHints||[combo=BOX41]||[input=BOX69] ;; записать подсказку к диску в Wincmd.ini в секцию [DriveHints], диск и подсказка выбирается в диалоге

iniwr=%%COMMANDER_PATH%%\WinAssociations.ini||Associations||Filter174||0000 ;; присвоить ключу Filter174 значение 0000 ...

iniwr=%%TCIMG_INI%%||Autorun||Autorun9||ShellExec~~/TT~~/W~~/SW_HIDE~~%%COMMANDER_PATH%%\TCIMG.exe~~infow=0Chr(124)Chr(124)attach<TTOTAL_CMD> ;; записать в TCIMG.ini в секцию [Autorun] в ключ Autorun9 заданную строку

iniwr=%%TCIMG_INI%%||Commands||"%O"||ClipGet() ;; записать в TCIMG.ini в секцию [Commands] в ключ именем файла под курсором, значение из буфера обмена

iniwr=%%TCIMG_INI%%||TCIMG11||F||[sfold=Выберите~~папку|c:] ;; записать в TCIMG.ini в ключ TCIMG11 путь выбранной папки

iniwr=%%TCIMG_PATH%%\TCIMGU.ini||Commands||"%O"||ClipGet() ;; добавить в TCIMGU.ini в секцию Commands ключ именем файла под курсором и значением из буфера

iniwr=%%TCIMG_PATH%%\TCIMGU.ini||Navigation||Path||"%P" ;; записать путь активной панели в файл TCIMGU.ini в секцию [Navigation] в ключ Path

iniwr=%%TCIMG_PATH%%\TCIMGU.ini||SSS||Path||%P%NChr(124)Chr(124)%T%M ;; пример записи в TCIMGU.ini в секцию [SSS] в ключ Path путей объектов обеих панелей через разделитель ||

iniwr=%%TCIMG_PATH%%\TCIMGU.ini||TCIMG||Path|| ;; удалить в файле TCIMGU.ini в секции [TCIMG] значение ключа Path

iniwr=%P%N||InternetShortcut||IconFile|| slist=INI<8//%P%N//InternetShortcut//URL> GLOBALSLIST<c> ;; в *,URL под курсором удалить значение поля "IconFile" и записать в буфер обмена адрес из поля "URL"

iniwr=%P%N||InternetShortcut||IconFile|| slist=INI<8//%P%N//InternetShortcut//URL>||formt<0!!^(?:https?:\/\/)?(?:www\.)?([^\/]+)> renmm=%P%N||$$_GLOBALSLIST<1> ;; в *,URL под курсором удалить значение поля "IconFile" + переименовать - добавить в конец имени файла доменное имя взятое из поля "URL"

iniwr=%P%N||SSS||Key||Value||0 ;; в INI файле под курсором записать в секцию [SSS] ключу Key значение Value , если ключ пустой

iniwr=%P%N||SSS||Key||Value||1 ;; в INI файле под курсором записать в секцию [SSS] ключу Key значение Value , если ключ не пустой

iniwr=%P%N||SSS||Key||Value||2 ;; в INI файле под курсором записать в секцию [SSS] ключу Key значение Value , если передаваемое значение Value не пустое

iniwr=@%WL||Setting||Language||1 ;; в выделенных INI файлах в секции [Setting] ключу Language записать 1

iniwr=@PS<"%P"//1//0//*.ini>||Setting||Language||1 ;; в INI файлах текущей папки (без рекурсии) в секции [Setting] ключу Language записать 1

sends=#||nnnnChr(124)Chr(124)kkkk GLOBALSENDS<a> iniwr=%%TCIMG_PATH%%\TCIMG.ini||TEST||X||GLOBALSENDS<x1> ;; присвоить в секции "TEST" ключу "X" заданное значение из глобальной переменной

sends=@<info=x54>??1 iniwr=%%COMMANDER_PATH%%\Wincmd.ini||Buttonbar||Buttonbar||GLOBALSENDS<1> rstart ;; сделать текущую панель инструментов по умолчанию при запуске

tcimg=$cm498 bufsr=##wintxt<1|TBUTTONCHANGEDLG|0|+tcTCCUZBAR1|1|#hide#> lists=cliplist||##path<0|0|1> iniwr=%%COMMANDER_PATH%%\Wincmd.ini||Buttonbar||Buttonbar||ClipGet() rstart ;; сделать текущую панель инструментов по умолчанию при запуске

tcprm=OPENBAR~~%%COMMANDER_PATH%%\DEFAULT.bar iniwr=%%COMMANDER_PATH%%\Wincmd.ini||Buttonbar||Buttonbar||%%COMMANDER_PATH%%\DEFAULT.bar ;; открыть DEFAULT.bar и записать путь в Wincmd.ini в секцию [Buttonbar] в ключ Buttonbar

vends=@D:\Test.bar exect=$var_n=##$INI<8//GLOBALVENDS<1>//Buttonbar//Buttoncount> rends=-1??-1 <FOR> 1 <TO> GLOBALRENDS<0> sends=GLOBALRENDS<x:INDEX:>??-1||formt<ex1> exect=$var_i=$var_n+:INDEX:||$var_j=1+:INDEX: zends=button$N$=Wcmicons.dll,1@CRLF!!$var_j||$$cmd$N$=%%COMMANDER_PATH%%\TCIMG.exe@CRLF||$$param$N$=GLOBALSENDS<x1>@CRLF||$$menu$N$=GLOBALSENDS<x2>@CRLF||$N$!!$var_i <NEXT> zends=GLOBALVENDS<1> asave=GLOBALZENDS||GLOBALVENDS<1>|1||2:-1||code<1> iniwr=GLOBALVENDS<1>||Buttonbar||Buttoncount||$var_i ;; в D:\Test.bar добавить кнопки из строк команд TCIMG.txt в буфере обмена


© Аверин Андрей для Total Commander Image  Averin-And@yandex.ru