Добрый день!
Посмотрите, если я не прав, поправьте меня, но ничего более дельного я не придумал
Запустите программу с ключами /m любая строка и /?
code_25274.txt
Из всего этого встает один вопрос. Как запускать программу с несколькими ключами?
Этот топик читают: Гость
Ответов: 817
Рейтинг: 52
|
|||
карма: 1 |
| ||
файлы: 1 | code_25274.txt [1.3KB] [155] |
Разработчик
Ответов: 26163
Рейтинг: 2127
|
|||
карма: 22 |
| ||
файлы: 1 | code_25276.txt [970B] [175] |
Ответов: 817
Рейтинг: 52
|
|||
Ага, понял
а как быть если за ключом следуют входные данные например /k 192.168.0.1 /m привет Вася |
|||
карма: 1 |
|
Разработчик
Ответов: 26163
Рейтинг: 2127
|
|||
-= DriveR =- писал(а): например /k 192.168.0.1 /m привет ВасяВо-первых: надо так, разделители-то пробелы -- /k 192.168.0.1 /m "привет Вася", а лучше так, тогда не надо парится вообще -- /k=192.168.0.1 /m="привет Вася". Дальше парсируй строку на ходу и проверяй ключи на соотвествие ------------ Дoбавленo в 14.55: Вот тебе пример на вот такой набор команд -- /k=192.168.0.1 /m="привет Вася","привет Петя"
Надеюсь, теперь все понятно |
|||
карма: 22 |
| ||
Голосовали: | -= DriveR =- |
Ответов: 3889
Рейтинг: 362
|
|||
карма: 1 |
| ||
файлы: 1 | code_25278.txt [1.3KB] [123] |
Разработчик
Ответов: 26163
Рейтинг: 2127
|
|||
Мою схему тоже можно улучшить
code_25279.txt ------------ Дoбавленo в 15.15: 1nd1g0, а вот это
------------ Дoбавленo в 15.18: А вот это
|
|||
карма: 22 |
| ||
файлы: 1 | code_25279.txt [1022B] [156] |
Ответов: 3889
Рейтинг: 362
|
|||
nesco писал(а): заменить обычным Switch-емМало ли сколько ключей, принимающих неопределённое количество параметров. Кроме того, при переключении Switch выдаёт не всегда желаемое паразитное срабатывание событий. Я ориентировался на лёгкую расширяемость и универсальность. |
|||
карма: 1 |
|
Разработчик
Ответов: 26163
Рейтинг: 2127
|
|||
1nd1g0 писал(а): Кроме того, при переключении Switch выдаёт не всегда желаемое паразитное срабатывание событийНе очень понятное выражение. Вообще-то, я конкретно по схеме писал, а не про то, что может быть. 1nd1g0 писал(а): Нельзя, мало ли сколько ключей, принимающих неопределённое количество параметровНикакой разницы, сколько там ключей, переключатель ловит команду и переключается на прием данных -- двухпозиционный коммутатор, и все |
|||
карма: 22 |
|
Ответов: 3889
Рейтинг: 362
|
|||
nesco писал(а): переключается на прием данныхТак там, по сути, не просто приём данных, а непосредственная работа с ними, и на каждом ключе работа может быть своя. В схеме пока не хватает защиты от дурака и обработки ситуаций с пустыми параметрами, кое-что нужно переделать, но мне сейчас некогда, главное - принцип, на вопрос топикстартера мы с тобой уже ответили исчерпывающе. |
|||
карма: 1 |
|
Ответов: 817
Рейтинг: 52
|
|||
1nd1g0, nesco,
Ну вы мужики даете Я пол дня голову ломал как все это сделать Все понял, пошел доделывать под себя Спасибо ------------ Дoбавленo в 16.47: Хотел плюсануть всем, а мне сообщается что я исчерпал свой лимит за день как то это очень жестко |
|||
карма: 1 |
|
Разработчик
Ответов: 26163
Рейтинг: 2127
|
|||
-= DriveR =- писал(а): Я пол дня голову ломал как все это сделатьНа вот тебе еще одну, для коллекции. Работает как у 1nd1g0 (везде пробелы разделитель), не упрощал, и на иммитаторе, для наглядности. Альтернтивный вариант, тсзать code_25280.txt ------------ Дoбавленo в 17.12: А вот и упрощенный вариант
|
|||
карма: 22 |
| ||
файлы: 1 | code_25280.txt [2KB] [205] |
Ответов: 3889
Рейтинг: 362
|
|||
карма: 1 |
| ||
файлы: 1 | code_25281.txt [1.1KB] [165] |
Разработчик
Ответов: 26163
Рейтинг: 2127
|
|||
Вот это уже интереснее. Но есть один недостаток -- если не найдет команду, то будет сыпать все на последнюю
|
|||
карма: 22 |
|
Ответов: 3889
Рейтинг: 362
|
|||
nesco писал(а): Но есть один недостатокТак это не недостаток, а особенность работы программы Пускай обработчик данных команды защиту от лишних реализует, как вариант:
------------ Дoбавленo в 18.09: Кстати, вроде кавычки убирать не нужно будет в реальной схеме, парсер параметров командной строки их уберёт, если правильно помню. |
|||
карма: 1 |
|
Разработчик
Ответов: 26163
Рейтинг: 2127
|
|||
1nd1g0 писал(а): парсер параметров командной строки их уберёт, если правильно помнюНе убирает, я специально проверял, выводя команды в редактор |
|||
карма: 22 |
|