|
|
|
Создание EXE проекта
|
|||
|---|---|---|---|
|
#18+
Как сделать так что бы проект пропускал все ошибки возникающие при работе программы. Писать в программе в каждой процедуре или функции On error resume next или есть что попроще? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2007, 17:28 |
|
||
|
Создание EXE проекта
|
|||
|---|---|---|---|
|
#18+
писать код без ошибок. лол. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2007, 17:35 |
|
||
|
Создание EXE проекта
|
|||
|---|---|---|---|
|
#18+
Проходящийписать код без ошибок. лол. что-то мне подсказывало что ответ будет именно таким, но ньюансов очень много всех не учтешь :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2007, 17:37 |
|
||
|
Создание EXE проекта
|
|||
|---|---|---|---|
|
#18+
Методов "забить на все ошибки", кроме как Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2007, 17:46 |
|
||
|
Создание EXE проекта
|
|||
|---|---|---|---|
|
#18+
ПроходящийМетодов "забить на все ошибки", кроме как Код: plaintext просто офигеть ..... ошибки нужно обрабатывать, а не пропускать! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2007, 17:48 |
|
||
|
Создание EXE проекта
|
|||
|---|---|---|---|
|
#18+
не в этом вопрос... я вот тоже никогда даже не задумался над этим... а вот автору надо... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2007, 17:53 |
|
||
|
Создание EXE проекта
|
|||
|---|---|---|---|
|
#18+
msn13 ПроходящийМетодов "забить на все ошибки", кроме как Код: plaintext просто офигеть ..... ошибки нужно обрабатывать, а не пропускать! Согласен, но времени нет искать ошибки, это все обкатается в процессе ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2007, 17:59 |
|
||
|
Создание EXE проекта
|
|||
|---|---|---|---|
|
#18+
ПроходящийМетодов "забить на все ошибки", кроме как Код: plaintext Да вот только этот метод одну-две ошибки пропустит,а потом все равно какая-то возникнет...И программа-таки вылетит... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2007, 18:15 |
|
||
|
Создание EXE проекта
|
|||
|---|---|---|---|
|
#18+
Дмитрий77Да вот только этот метод одну-две ошибки пропустит,а потом все равно какая-то возникнет...И программа-таки вылетит... Вот в чем и вопрос :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2007, 18:17 |
|
||
|
Создание EXE проекта
|
|||
|---|---|---|---|
|
#18+
Я думаю, что вопрос можно было бы переформулировать по другому: "Что лучше: кривая программа или программа останавливающаяся на ошибках?" Если программа будет прятать ошибки, то обкатка затянется до бесконечности. Потому что не известно где возникает ошибка. И при этом пользователь будет думать, что ошибки нет. И продолжать работать. Ошибки должны быть обработаны в предсказуемых случаях (например, при открытии файла высока вероятность ошибки). А если они возникают в местах где их не должно (не может) быть, это даже хорошо что программа вывалится. Тогда пользователь точно донесет ошибку разработчику. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2007, 18:29 |
|
||
|
Создание EXE проекта
|
|||
|---|---|---|---|
|
#18+
элементарно, конечно использовать гоуту моветон, но sub no_err() goto 10 <код> 10 end sub ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2007, 09:06 |
|
||
|
Создание EXE проекта
|
|||
|---|---|---|---|
|
#18+
FAndrewЯ думаю, что вопрос можно было бы переформулировать по другому: "Что лучше: кривая программа или программа останавливающаяся на ошибках?" Если программа будет прятать ошибки, то обкатка затянется до бесконечности. Потому что не известно где возникает ошибка. И при этом пользователь будет думать, что ошибки нет. И продолжать работать. Ошибки должны быть обработаны в предсказуемых случаях (например, при открытии файла высока вероятность ошибки). А если они возникают в местах где их не должно (не может) быть, это даже хорошо что программа вывалится. Тогда пользователь точно донесет ошибку разработчику. Все это понятно, ну тогда хотя бы вариант с составлением лога с ошибками, но что бы прога работала, основной код написан без ошибок ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2007, 09:25 |
|
||
|
Создание EXE проекта
|
|||
|---|---|---|---|
|
#18+
FAndrewЯ думаю, что вопрос можно было бы переформулировать по другому: "Что лучше: кривая программа или программа останавливающаяся на ошибках?" Если программа будет прятать ошибки, то обкатка затянется до бесконечности. Потому что не известно где возникает ошибка. И при этом пользователь будет думать, что ошибки нет. И продолжать работать. Ошибки должны быть обработаны в предсказуемых случаях (например, при открытии файла высока вероятность ошибки). А если они возникают в местах где их не должно (не может) быть, это даже хорошо что программа вывалится. Тогда пользователь точно донесет ошибку разработчику. Согласен, я в начале делаю без обработчика потом выявляются ошибки, когда уже доходит более-менее до реальных форм, во всех процедурах функциях добавляю код обработчика ошибок, и при этом записываю код ошибки, описание и форму и процедуру в лог-файл, чтобы легче было отлаживать, и еще использую глобальную переменную, скажем intLastOperationStatus, в которую запишется отрицательное значение при возникновении какой-либо ошибки, и в тех местах где не должно быть никакой ошибок проверяю значение этой переменной ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2007, 11:45 |
|
||
|
Создание EXE проекта
|
|||
|---|---|---|---|
|
#18+
Я бы предложил по другому. Все-таки есть места где вероятность ошибки высока и может не зависить от программиста и возникать при определенных условиях (например при обращении к БД может возникнуть ошибка по таймауту или разрыв соединения). И это никак не оттестировать. Здесь нужно пистаь обработку по любому. Добавления обработчиков ошибок не вызывает большой проблемы. Ведь как говориться кашу маслом не испортишь. А в обработчиках ошибок в формах я вызываю некую глобальную процедуру, которая и обрабатывает ошибку. И в ней легко рулить что делать: игнорировать, выводить на экран или писать в лог-файл. И легко менять функциональность в зависимости от жизненного цикла программы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2007, 12:05 |
|
||
|
Создание EXE проекта
|
|||
|---|---|---|---|
|
#18+
FAndrewЯ бы предложил по другому. Все-таки есть места где вероятность ошибки высока и может не зависить от программиста и возникать при определенных условиях (например при обращении к БД может возникнуть ошибка по таймауту или разрыв соединения). И это никак не оттестировать. Здесь нужно пистаь обработку по любому. Добавления обработчиков ошибок не вызывает большой проблемы. Ведь как говориться кашу маслом не испортишь. А в обработчиках ошибок в формах я вызываю некую глобальную процедуру, которая и обрабатывает ошибку. И в ней легко рулить что делать: игнорировать, выводить на экран или писать в лог-файл. И легко менять функциональность в зависимости от жизненного цикла программы. А примерчик можно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2007, 15:07 |
|
||
|
Создание EXE проекта
|
|||
|---|---|---|---|
|
#18+
Private Sub MySub On Error Goto ErrorHandler Code Exit Sub ErrorHandler: Call HandleError End Sub Где-то в глобальном модуле Public sub HandleError SaveToLogFile Err.number,Err.Description ShowOnScreen Err.number,Err.Description SaveToDB Err.number,Err.Description End sub А далее можно комментировать не нужную функциональность или поставить условную компиляцию или еще что-нибудь. Самое главное, это можно сделать в одном месте а не во всем проекте. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2007, 15:58 |
|
||
|
Создание EXE проекта
|
|||
|---|---|---|---|
|
#18+
[quot FAndrew]Private Sub MySub On Error Goto ErrorHandler [quot] Я так полагаю, что ее все равно нужно ставить там где предпологаються ошибки? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2007, 16:22 |
|
||
|
Создание EXE проекта
|
|||
|---|---|---|---|
|
#18+
konstsuЯ так полагаю, что ее все равно нужно ставить там где предпологаються ошибки?Это хороший стиль написания кода. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2007, 16:24 |
|
||
|
Создание EXE проекта
|
|||
|---|---|---|---|
|
#18+
Еще вопрос, как с компелировать, так что бы все библиотеки были либо в файле (если это возможно), либо радом с файлом и как проверить работоспособность на разных ОС, только эксперементальным путем? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2007, 16:25 |
|
||
|
Создание EXE проекта
|
|||
|---|---|---|---|
|
#18+
Когда делаешь Setup твоей программы есть возможность включить в состав пакета установки все компоненты. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2007, 16:38 |
|
||
|
Создание EXE проекта
|
|||
|---|---|---|---|
|
#18+
ПроходящийКогда делаешь Setup твоей программы есть возможность включить в состав пакета установки все компоненты. Setup можно сделать из самого VB? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2007, 16:51 |
|
||
|
Создание EXE проекта
|
|||
|---|---|---|---|
|
#18+
Заюзай Package & Deployment Wizard... Входит в состав... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2007, 17:02 |
|
||
|
Создание EXE проекта
|
|||
|---|---|---|---|
|
#18+
ПроходящийЗаюзай Package & Deployment Wizard... Входит в состав... В VB6 (sp6)? что-то не вижу? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2007, 17:16 |
|
||
|
Создание EXE проекта
|
|||
|---|---|---|---|
|
#18+
konstsuЯ так полагаю, что ее все равно нужно ставить там где предпологаються ошибки? Я добавляю обработку ошибок во все процедуры сложнее 2+2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2007, 18:35 |
|
||
|
Создание EXE проекта
|
|||
|---|---|---|---|
|
#18+
ПроходящийЗаюзай Package & Deployment Wizard... Входит в состав... Для Microsoft Visual InterDev 6.0 была какая-то приблудина, которая делала Setup'ы. Она, имхо, работает по приличней. чем Package & Deployment Wizard ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2007, 18:38 |
|
||
|
|

start [/forum/topic.php?fid=60&msg=34327991&tid=2164506]: |
0ms |
get settings: |
8ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
192ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
79ms |
get tp. blocked users: |
1ms |
| others: | 233ms |
| total: | 554ms |

| 0 / 0 |
