Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Single Post  Topic: Autorun 
Author Message
Orion9



PostPosted: Sun Mar 09, 2025 12:20    Post subject: Reply with quote

Loopback
Проверил объект Map - всё работает. У вас, случайно, нет планов добавить к нему свойство Count, чтобы можно было перечислять элементы карты? Сейчас для этого требуется создавать временный массив, т.е объект List:

Code:
Local mFiles = Map()
...
Local i, txt
    Local aKeys = list()
    aKeys.Text = mFiles.Keys()
    For i = 0 To aKeys.Count - 1
        txt &= mFiles[aKeys[i]] & auCRLF               
    Next
    MsgBox(txt)
    Free(aKeys, mFiles)


 Полный тестовый код

Код завязан на ini-файлы с секцией ColorTheme:
 Файлы

Делал, основываясь на примере из справки, но мне кажется, в нём есть небольшая неточность:
Code:
If hf <> 0 then

FindFirstFileW может вернуть -1, а значит условие пропустит код, что может привести к интересным результатам ) И ещё одно уточнение: после последнего вызова FindNextFileW необязательно использовать FindClose?

Был ещё один давний вопрос, который забывал спросить. Некоторые wdx-плагины перестают работать после того, как их загружаешь в объект Plugin и потом освобождаешь через Free. Проверить можно на обычной подсказке:
Code:
1exts=*.aucfg;autorun.cfg;*.ahk;*.au3; *.vbs
1fields=Число строк: [=linebreakinfo.CRLF Count]\nБайт прочитано: [=linebreakinfo.Bytes Read]

Если в коде добавить две строки:
Code:
objLineB = Plugin("LineBreakInfo.wdx")
Free(objLineB)

То после запуска ТС, подсказка на панелях не будет работать, т.е. поля плагина в подсказке будут пустыми. Но если убрать Free, то всё нормально.

Можно, конечно, использовать объект без освобождения в некоторых случаях, если он больше не нужен, но будет ли это правильным и не приведёт ли ещё к каким-то проблемам в будущем?
View user's profile Send private message


Powered by phpBB © 2001, 2005 phpBB Group