AkulaBig
|
Posted: Thu Mar 12, 2026 13:52 Post subject: |
|
|
Orion9
Два вопроса, как к заму сансея
Вот причесаный ваш код. Не обращайте названия на названия переменных. Они просто из вашего примера. Код работает, но просто ужасно медленно. Нет идей, как его ускорить?
| Code: | Func FieldET(FileName, FieldIndex, UnitIndex)
Local gGeoOut = List(), gGeoData = List("", "")
Local gGeoList = List("Title", "Author")
Static lst, dat, idx
If StrPos(FileGetAttr(FileName), "D") Then Return
If FieldIndex = 1 + 60 Then
gGeoOut.Count = 0
gGeoOut.Text = ProcessExecGetOutput(util_ET, '"' & FileName & '"')
# OutputDebugString(gGeoOut.Text)
For idx = 0 To gGeoData.Count - 1
gGeoData[idx] = ""
Next
For geo In gGeoOut
If StrPos(geo, ":") Then
lst = StrTrim(StrPart(geo, ":", 1))
dat = StrTrim(StrPart(geo, ":", 2))
idx = gGeoList.IndexOf(lst)
If idx <> -1 Then gGeoData[idx] = dat
EndIf
Next
Endif
Return gGeoData[FieldIndex - 1 - 60]
EndFunc |
И еще. Вышеприведенная функция нифига не работает со значениями на кириллице. Но есть плагин, который лишь иногда крякозябры выводит. Можно ли взять значение из плагина и прогнать его через известную функцию фикса кодировки? |
|