| Автор | Сообщение |
|
|
| постоянный участник
|
Пост N: 8168
Зарегистрирован: 12.09.06
|
|
Отправлено: 26.03.26 14:44. Заголовок: Битый ini-файл ?
Считываю файл в переменную. cStr := FileStr("xxxx.ini") Получаю непонятную строку кракозябов типа: "гhыкЉСW& @J"HЮ©p’>ІJЙo≠Љ≠[ЃХ…ѓЧa•3,Ьст©(ЙNРD¶Рї`Ш¶fфtcјTЛ≠ыZгЇЭЌЈJw•÷"...... и т.д. Должен быть обычный ини-файл, но комп записал мусор в этот ини-файл. Как определить что строка "битая" ? 
|
 |

|
|
Ответов - 7
[только новые]
|
|
|
|
| |
Пост N: 8251
Зарегистрирован: 17.05.05
|
|
Отправлено: 26.03.26 14:50. Заголовок: Andrey пишет: Как о..
Andrey пишет: | цитата: | | Как определить что строка "битая" ? |
| по отсутствию нужных секций например а вообще читай его в HASH
|
 |

|
|
|
| постоянный участник
|
Пост N: 4877
Зарегистрирован: 17.02.12
|
|
Отправлено: 26.03.26 17:28. Заголовок: Dima пишет читай ег..
Dima пишет Андрей так и делает, проблемка рисуется после обновления ini данных в Hash и записи его на диск ф-ией hb_iniWrite(<xFileName>, <hIni>, [<cCommentBegin>], [<cCommentEnd>], [<lAutoMain]>)➜ lSuccess
|
 |

|
|
|
| постоянный участник
|
Пост N: 8169
Зарегистрирован: 12.09.06
|
|
Отправлено: 26.03.26 17:44. Заголовок: Dima пишет: а вообщ..
Dima пишет: | цитата: | | а вообще читай его в HASH |
| Вылет из программы в таком случае. Time from start: 0 days 3 hours 9 mins 52 secs Error BASE/1123 Ќеверный аргумент: HB_HKEYS Args: [1] = C гhыкЉСW& @J"HЮ©p’>ІJЙo≠Љ≠[ЃХ…¢ѓЧa•3,Ьст©(ЙNРD¶Рї`Ш¶fфtcјTЛ≠ыZгЇЭЌЈJw•÷ --------------------------------- Stack Trace --------------------------------- Called from HB_HKEYS(0) Called from TINIDATA:READ(0) Called from RUNZIPARHIVE(406) in module: Source\ShellExecuteRun.prg
|
 |

|
|
|
| |
Пост N: 8252
Зарегистрирован: 17.05.05
|
|
Отправлено: 26.03.26 19:41. Заголовок: SergKis пишет: Анд..
SergKis пишет: | цитата: | Андрей так и делает, проблемка рисуется после обновления ini данных в Hash и записи его на диск ф-ией hb_iniWrite(<xFileName>, <hIni>, [<cCommentBegin>], [<cCommentEnd>], [<lAutoMain]>)➜ lSuccess |
| а если чекнуть после записи с помощью hb_IniRead , то что он вернет ? если Hash ,то все норм если нет....то наверное битый такой глюк всегда проиcходит ?
|
 |

|
|
|
| |
Пост N: 8253
Зарегистрирован: 17.05.05
|
|
Отправлено: 26.03.26 19:48. Заголовок: Andrey пишет: Error..
Andrey пишет: | цитата: | | Error BASE/1123 Ќеверный аргумент |
| Косяк какой то  в Неверном аргументе (первая буква)
|
 |

|
|
|
| постоянный участник
|
Пост N: 4878
Зарегистрирован: 17.02.12
|
|
Отправлено: 26.03.26 20:12. Заголовок: Dima пишет чекнуть п..
Dima пишет | цитата: | | чекнуть после записи с помощью hb_IniRead |
| Так и полчаем ошибку сообщения в ключе Error BASE/1123 Ќеверный аргумент: HB_HKEYS Args: [1] = C гhык.... после ф-ии hb_IniRead и как я понял, уже в файле на диске испорченные данные в таком виде Если бы можно было в mem: hb_iniWrite("mem:...",...) файл записать, то КС с файла можно было иметь при записи и проверять при чтении
|
 |

|
|
|
| постоянный участник
|
Пост N: 8170
Зарегистрирован: 12.09.06
|
|
Отправлено: 26.03.26 23:01. Заголовок: Сделал перед чтением..
Сделал перед чтением из ини так: lStr := .T. cStr := hb_memoread(cIni) IF "[MAIN]" $ cStr ; lStr := .F. ENDIF IF "[DATA]" $ cStr ; lStr := .F. ENDIF IF "[ARXIV1]" $ cStr ; lStr := .F. ENDIF IF !lStr cMsg := "ОШИБКА! НЕ ВЕРЕН файл настройки программы !;" cMsg += cIni + ";;" cMsg += "Обратитесь к вашему программисту !;" MG_Stop(cMsg,"Ошибка запуска Backup4zip.exe") RETURN NIL ENDIF
|
 |

|
|