hiSQLite_DB.pas
code_1256.txt
[size=-2]------ Добавлено в 17:31
Суть обновления: теперь при вызове doOpen в случае проблем (не загрузился SQLite, не загрузился файл БД) на точку onError выдаётся текст ошибки.
Этот топик читают: Гость
Ответов: 5446
Рейтинг: 323
|
|||
карма: 1 |
| ||
файлы: 1 | code_1256.txt [666B] [338] |
Ответов: 3655
Рейтинг: 69
|
|||
iarspider, Сейчас тебе Dilma подробно расскажет что так делать ненадо.
ХиАсм используют нетолько русские. |
|||
карма: 0 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
Вячеслав, даже дело не в этом.
iarspider, возле каждой строки напиши коментарий - будет понятней Dilma (почему-то) точку onError сотворил , но не включил в работу . Угадай с трех раз - почему? |
|||
карма: 25 |
|
Ответов: 2058
Рейтинг: 28
|
|||
Tad писал(а): Dilma (почему-то) точку onError сотворил , но не включил в работу . Угадай с трех раз - почему?Потому что она в тестовом режиме. |
|||
карма: 1 |
|
Ответов: 1891
Рейтинг: 110
|
|||
Эдик, писал(а): Потому что она в тестовом режиме.А кто сказал, что в тестовом режиме? |
|||
карма: 0 |
|
Ответов: 2058
Рейтинг: 28
|
|||
Alexbootch, обычно так было. Если что то не полностью в компоненте или закоминтированны строки какие ни будь, то значит в стадии разработки. Ну я и подумал что в тестовом режиме.
|
|||
карма: 1 |
|
Ответов: 5446
Рейтинг: 323
|
|||
Tad, да куда уж понятнее-то?!
doOpen может по двум поводам "обламываться" (причём в оригинале - молча!): если не загрузиласть sqlite3.dll (checkSqliteLoaded вернула false), или если не открылся файл базы (id = nil после sqlite3_open). Мой фикс оба эти случая "отлавливает" и на onError скидывает краткое сообщение об ошибке. Вообще-то надо бы у sqlite пробовать получать код ошибки, но это - на будующее... |
|||
карма: 1 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
iarspider, попробуй вот это (базы с таким именем у тебя нет 100%) и никаких сообщений - молча создалась база и все. Сообщения, что база не найдена - нет.
Сообщение об отсутствии sqlite3.dll у меня генерится и на старом компоненте и на других компах пробовал. Приложению не удалось запуститься, поскольку sqlite3.dll не был найден. Повторная установка приложения может исправить эту проблему.
[size=-2]------ Добавлено в 22:12 да, если в качестве taddd.db применить любой (не db файл) просто переименуй, то и модернизированый (согласно code_1256.txt) hiSQLite_DB.pas молчит как рыба. [size=-2]------ Добавлено в 22:44 Tad писал(а): iarspider, возле каждой строки напиши коментарий - будет понятней[size=-2]------ Добавлено в 00:29 А я представляю примерно такое: code_1263.txt |
|||
карма: 25 |
| ||
файлы: 1 | code_1263.txt [986B] [414] |
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
Вячеслав писал(а): iarspider, Сейчас тебе Dilma подробно расскажет что так делать ненадо.никакие тексты выдавать на точки нельзя. Была идея сделать при debug компиляции вывод любого желаемого текста сразу в MessageBox, но при release только кодами на onError. |
|||
карма: 27 |
|
Ответов: 117
Рейтинг: 9
|
|||
"Dilma" писал(а): никакие тексты выдавать на точки нельзя. Была идея сделать при debug компиляции вывод любого желаемого текста сразу в MessageBox, но при release только кодами на onError.Можно дополнительно делать точку onErrorStr или свойство ErrorStr, и туда выдавать текст ошибки |
|||
карма: 0 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
AZot писал(а): Можно дополнительно делать точку onErrorStr или свойство ErrorStr, и туда выдавать текст ошибкинет нельзя. Это потенциальная проблема в будущем при возможной поддержке нескольких языков. Достаточно дать описание всем кодам в справке, а пользователю при желание загнать их в массив и получать по индексу. |
|||
карма: 27 |
|
Ответов: 117
Рейтинг: 9
|
|||
Dilma писал(а): Это потенциальная проблема в будущем при возможной поддержке нескольких языков. Мало кто возбухает, когда на буржуйской программе ошибки выходят на английском языке. Я понимаю, что на инглиш мало кто напишет правильно (я в том числе), но можно попросить кого нибуть, чтоб помог перевести. Код ошибки остается нетронутым и при дальнейшей локализации не надо будет заботится о выводе ошибок на английском языке. [size=-2]------ Добавлено в 18:49 Еще. При отсутствии справки или её утери, всегда можно узнать текст ошибки по её числовому значению в коде программы |
|||
карма: 0 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
AZot, наверное нужно отличать готовую программу от инструмента, на котором эта программа создается. В первом случае это называется волей автора, а во втором - раздуваение кода на пустом месте.
|
|||
карма: 27 |
|
Ответов: 9906
Рейтинг: 351
|
|||
Соображения изложены интереснные конечно
А если вернуться на грешную землю: так делать никто не пробовал code_1295.txt |
|||
карма: 9 |
| ||
файлы: 1 | code_1295.txt [597B] [365] |
Ответов: 5446
Рейтинг: 323
|
|||
Galkov, Это жесть!
|
|||
карма: 1 |
|
15