0 / 0 / 0
Регистрация: 09.04.2012
Сообщений: 15
|
||||||
1 | ||||||
Закрытие консоли во время выполнения программы17.12.2015, 20:17. Показов 3802. Ответов 10
Метки нет (Все метки)
Консоль закрывается до того, как выполнится вся программа. В коде написаны комментарии и место, после которого операторы не выполняются и консоль закрывается.
Код: Кликните здесь для просмотра всего текста
Ну и второстепенно - какие-нибудь комментарии к коду может будут. Задача: Реализовать программное заполнение матрицы доступа, содержащей количество пользователей и объектов. Также может проводиться идентификация пользователя и вывод ему его прав на объекты. Наверное стоит переделать матрицу доступа в виде числовых идентификаторов прав, а там уже выводить название права по его ключу.
0
|
17.12.2015, 20:17 | |
Ответы с готовыми решениями:
10
Задержать закрытие окна консоли после выполнения программы Результат выполнения программы в консоли пропадает после выполнения скрипта Закрытие программы после выполнения кода Остановить закрытие консоли по завершению работы программы |
115 / 92 / 66
Регистрация: 27.04.2014
Сообщений: 307
|
|
17.12.2015, 20:43 | 2 |
Console.ReadLine(); нужно добавить в самом низу
0
|
0 / 0 / 0
Регистрация: 09.04.2012
Сообщений: 15
|
|
17.12.2015, 22:22 [ТС] | 3 |
Так вроде не в этом дело. Не исполняется даже string cmd = Console.ReadLine(); То есть я не могу ввести команду и соответственно дальше обработать её. Консоль закрывается после выполнения 179-й строки программы.
0
|
5871 / 4748 / 2940
Регистрация: 20.04.2015
Сообщений: 8,361
|
|
17.12.2015, 22:36 | 4 |
Если бы я был консолью, я бы закрылся где-то строке на 31-й, отказавшись выполнять циклы со switch'ами
1
|
0 / 0 / 0
Регистрация: 09.04.2012
Сообщений: 15
|
|
17.12.2015, 22:39 [ТС] | 5 |
Буду рад увидеть конструктивные советы по поводу решения описанной в шапке задачи и исправления написанного в программе. Пока только осваиваюсь. Какое решение возникло в голове такое и написал..
0
|
5871 / 4748 / 2940
Регистрация: 20.04.2015
Сообщений: 8,361
|
||||||
17.12.2015, 22:57 | 6 | |||||
Ну, например, строки 26-138 можно смело заменить на
0
|
0 / 0 / 0
Регистрация: 09.04.2012
Сообщений: 15
|
|
17.12.2015, 23:20 [ТС] | 7 |
Так и правда короче. А по поводу преждевременного закрытия консоли ничего сказать не можете? Запускал без дебага: "ctrl+F5" - после вывода "Жду указаний: (действие)" - предлагает нажать любую кнопку, после нажатия закрывается. VS 2015.
Добавлено через 9 минут Удалил 171 строку. С Console.Read(); Теперь всё работает нормально. Странно. Как этот оператор мог повлиять?
0
|
5871 / 4748 / 2940
Регистрация: 20.04.2015
Сообщений: 8,361
|
||||||
17.12.2015, 23:50 | 8 | |||||
Сообщение было отмечено Dobriy33 как решение
Решение
Видимо даже при нажатии Enter вводится более одного символа в поток, один был прочитан Console.Read(), остальные были в итоге переданы в ReadLine в 180-й строке.
Для паузы лучше ReadLine или даже ReadKey. Добавлено через 18 минут Dobriy33, а в строках 152-169 лучше не привязываться к 999, как к заведомо отсутствующему ID, а воспользоваться IndexOf:
1
|
0 / 0 / 0
Регистрация: 09.04.2012
Сообщений: 15
|
|
17.12.2015, 23:59 [ТС] | 9 |
Даценд, а если я строковый массив с правами заменю на числовой(нужно задать права рандомно всем, кроме админа), подразумевая что на пример Отсутствие прав - 0, Чтение - 1, Запись - 2 и т.д. Выводить придётся с помощью switch в зависимости от числа?
0
|
5871 / 4748 / 2940
Регистрация: 20.04.2015
Сообщений: 8,361
|
||||||
18.12.2015, 00:20 | 10 | |||||
Нет, по индексу из вот из такого массива:
1
|
0 / 0 / 0
Регистрация: 09.04.2012
Сообщений: 15
|
|
18.12.2015, 00:26 [ТС] | 11 |
Благодарю.
0
|
18.12.2015, 00:26 | |
18.12.2015, 00:26 | |
Помогаю со студенческими работами здесь
11
Скрытие окна консоли во время выполнения приложения Не могу остановить закрытие программы после выполнения Действие при закрытии консоли во время выполнения скрипта Закрытие сторонней программы через определенное время Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |