Orion9

|
Posted: Wed Mar 12, 2025 20:19 Post subject: |
|
|
Loopback wrote: | Разве что принудительно разрешить использовать после in только переменные. |
Если так можно сделать, думаю, как вариант сойдет, почему нет.
Loopback wrote: | Хеш-таблицы намного быстрее работают при необходимости поиска ключевого значения. |
Полезная информация, спасибо.
Loopback wrote: | Ну а пока не выгружать. |
Да, видимо, только так. Уже попробовал на LineBreakInfo, вроде пока работает.
AkulaBig
Добавьте алгоритм случайного перебора wav-файлов, будет гораздо веселее и интереснее. У вас сейчас всё-равно целый поток крутится, можно сделать, чтобы каждые 5-10 циклов значения ключей в реестре из него перезаписывались новыми случайными wav-файлами. Ничего сложного, а результат вас точно порадует )
 Hidden text Code: | Func ThreadSoundsDir
Local debg = 1, key, val
Local ini = DIR_SOUNDS & "Sounds.ini", out, i
If Not FileExist(ini) Then
MsgBox("Не найден " & ini)
Return
Endif
ProcessExecGetOutput /OEM out %COMSPEC% "/c dir /s /b *.wav" %DIR_SOUNDS%
Local aWav = List()
aWav.Text = out
Local aNames = List("WincmdConnected","WincmdCopyComplete","WincmdDeleteComplete","WincmdPackComplete", _
"WincmdSearchComplete","WincmdTransferComplete","WincmdUnpackComplete")
While 1
For i = 0 To aNames.Count - 1
val = aWav[Random(0, aWav.Count-1, 1)]
key = "HKCU\AppEvents\Schemes\Apps\Wincmd\" & aNames[i] & "\.current"
RegWrite(key, "", "REG_SZ", val)
If debg Then
OutputDebugString("Autorun: key = " & key)
OutputDebugString("Autorun: val = " & val)
EndIf
Next
Sleep(1000)
Wend
Free(aNames, aWav)
EndFunc
|
В этом примере файлы выбираются через " dir /s /b *.wav", но можно взять пример выборки через DllCall, который был выше. Да и сам алгоритм можно сделать или доделать на свое усмотрение.
Orion9 wrote: | Думаю, за неделю где-то сделаю. |
Посмеялся )
Видимо, всё-таки придётся выложить как есть, поскольку сейчас много других дел и на Autorun времени почти нет, но многое будет без описания и комментариев. |
|