ADN Club > Организация проектирования
Как остановить команду scr файла
pavka_97:
--- Код - C# [Выбрать] ---double d1 = new double(); PromptStringOptions pStrOpts01 = new PromptStringOptions("\nEnter test1: "); PromptResult pStrRes01 = doc.Editor.GetString(pStrOpts01); if (pStrRes01.Status != PromptStatus.OK) return; if (double.TryParse(pStrRes01.StringResult, out d1 ) == false) return; if (d1 <= 0) return; double d2 = new double(); PromptStringOptions pStrOpts02 = new PromptStringOptions("\nEnter test2: "); PromptResult pStrRes02 = doc.Editor.GetString(pStrOpts02); if (pStrRes02.Status != PromptStatus.OK) return; if (double.TryParse(pStrRes02.StringResult, out d2) == false) return; if (d2 <= 0) return;
Соответственно при первом "неудачном" вводе программа останавливается, но по "инерции" в командную строку попадает и 2й ввод. Как избежать второго ввода?
Александр Ривилис:
--- Цитата: pavka_97 от 07-10-2020, 10:39:06 ---Соответственно при первом "неудачном" вводе программа останавливается, но по "инерции" в командную строку попадает и 2й ввод. Как избежать второго ввода?
--- Конец цитаты ---
1. При чем здесь scr-файл?
2. Второй ввод не может попадать при "неудачном" вводе. Или что ты понимаешь под неудачным вводом?
3. Почему вопрос в этом разделе, а не в .NET?
pavka_97:
--- Цитата: Александр Ривилис от 07-10-2020, 11:55:23 ---При чем здесь scr-файл?
--- Конец цитаты ---
Потому что я использую именно этот сценарий в работе.
Допустим scr файл:
_FILEDIA
0
_SECURELOAD
0
_CMDDIA
0
_REPORTERROR
0
_NETLOAD
d:\cod\test.dll
mytestcommand
; здесь не double,выходим, но захватывает нижнее 333
notdouble
333
--- Цитата: Александр Ривилис от 07-10-2020, 11:55:23 ---Второй ввод не может попадать при "неудачном" вводе. Или что ты понимаешь под неудачным вводом?
--- Конец цитаты ---
"Неудачный" ввод в данном конкретном случае это строка - notdouble, а не double.
Но в командной строке, тем не менее:
Enter test1: notdouble
Command: 333
Unknown command "333". Press F1 for help.
--- Цитата: Александр Ривилис от 07-10-2020, 11:55:23 ---Почему вопрос в этом разделе, а не в .NET?
--- Конец цитаты ---
Потому что, я думаю что это особенность команды script (может ассинхронность какая то тут?) , а не NET.API
Александр Ривилис:
--- Цитата: pavka_97 от 07-10-2020, 12:17:42 ---Но в командной строке, тем не менее:
Enter test1: notdouble
Command: 333
Unknown command "333". Press F1 for help.
--- Конец цитаты ---
Так и должно быть. Ты вышел из команды mytestcommand, но в scr-файле у тебя дальше 333 - вот они и воспринимаются как следующая команда.
pavka_97:
В этом и вопрос. Как прервать выполнение scr файла после notdouble, чтобы в комстроку не передавалось дальше 333?
Навигация
Перейти к полной версии