On-line: гостей 0. Всего: 0 [подробнее..]
АвторСообщение
администратор




Пост N: 7247
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 25.09.20 19:33. Заголовок: [?] HB_UTF8TOSTR


В одну из моих прог косячные данные зашли в UTF8 и HB_UTF8TOSTR упал :)
Примерно так HB_UTF8TOSTR("<![CDATA[&2. Второй магазин]]>","RU866")
В этой функции не предусмотрена защита от падений в таких ситуациях ?

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 7 [только новые]


постоянный участник




Пост N: 3389
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 25.09.20 22:13. Заголовок: Dima Не могу вспомн..


Dima
Не могу вспомнить, или заблуждаюсь, но что то было (#PRAGMA или переменная) для отключения срабатывания macro, т.е. на это время отключить и потом включить

Спасибо: 0 
ПрофильЦитата Ответить
moderator


Пост N: 1427
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 26.09.20 11:36. Заголовок: А почему он, собстве..


А почему он, собственно, упал? Обычно просто '?' вставляет в результат.
И о каком макро речь? Я чего-то не догоняю?

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 7248
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 26.09.20 12:30. Заголовок: alkresin Похоже HB_..


alkresin
Похоже HB_UTF8TOSTR не при чем и как то не верно (или я его не понял на счет результата)
отработал HXmlDoc class при разборе XML
У меня там код есть ....HB_UTF8TOSTR(k[3][j+1]:aitems[1],"RU866")
так вот первым параметром попала не строка а объект.
Хотя 3 года почти работало и не было проблем и всегда туда падала строка
В XML так
 
<key>analyticsID</key>
<string>7344</string>
<key>clientID</key>
<string>7344</string>
<key>comment</key>
<string><![CDATA[&2. Второй магазин]]></string>

и тогда падает и при таком раскладе k[3][j+1]:aitems[1]:title == NIL
а если исправить на
 
<key>analyticsID</key>
<string>7344</string>
<key>clientID</key>
<string>7344</string>
<key>comment</key>
<string>Второй магазин</string>

то все нормально

Спасибо: 0 
ПрофильЦитата Ответить
moderator


Пост N: 1428
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 27.09.20 12:34. Заголовок: Это HXMLDOC, который..


Это HXMLDOC, который из HwGUI?
А CDATA и раньше был там, или только сейчас вместо строки появился?

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 7249
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 27.09.20 15:03. Заголовок: alkresin пишет: Это..


alkresin пишет:

 цитата:
Это HXMLDOC, который из HwGUI?


Да
alkresin пишет:

 цитата:
А CDATA и раньше был там, или только сейчас вместо строки появился?


Да , это Панагент как то не верно данные передал в примечании а там было забито "&2. Второй магазин" а в XML
от Пана приплыло <![CDATA[&2. Второй магазин]]>

Я им конечно в поддержку отписал....ранее фишек с CDATA не было.

Спасибо: 0 
ПрофильЦитата Ответить
moderator


Пост N: 1429
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 28.09.20 09:10. Заголовок: Амперсанд - спецсимв..


Амперсанд - спецсимвол все-таки, поэтому, возможно, строку автоматом обернули в CDATA. Наверное, в программе надо добавить проверку, строка это или объект.

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 7250
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 28.09.20 14:51. Заголовок: alkresin Мысль поня..


alkresin
Мысль понял , спасибо и пошёл переделывать.

Спасибо: 0 
ПрофильЦитата Ответить
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 572
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет