Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
0 / 0 / 5
Регистрация: 11.10.2015
Сообщений: 111
1

Как сделать пароль частью аргумента?

18.02.2017, 12:02. Показов 606. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Подскажите как можно сделать пароль частью аргумента?
Необходима защита аргументов по паролю, допустим вводим в cmd: C:\>app.exe password /off и выполняется сначала отправка пароля, если он верный, выполняется команда /off (все одной строчкой).

Может есть возможность как-то встроить пароль к имени аргументов?
Так как нужно, чтобы ярлык приложения содержал и пароль и аргументы, для использования планировщика заданий.

Сам пароль будет храниться в текстовом документе, см.пример кода ниже.

Основной код WinForm приложения C#
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
static class Program
{
    [DllImport("kernel32.dll")]
    private static extern bool AttachConsole(int procid);
    [STAThread]
 
    static void Main(string[] args)
    {
        Application.EnableVisualStyles();
        Application.SetCompatibleTextRenderingDefault(false);
 
        var form = new Form1();
        bool needRun = true;
 
        AttachConsole(-1);
 
        string outputFmt = "Команда {0} выполнена" + "\n" + "Для продолжения нажмите любую клавишу . . .";
        List<string> cmds = new List<string>();
 
        foreach (string arg in args)
        {
            if (args.Contains("/?"))
            {
                form.Check00();
                needRun = false;
            }
            switch (arg)
            {
                case "/on":
                    form.Check01();
                    needRun = false;
                    break;
 
                case "/off":
                    form.Check02();
                    needRun = false;
                    break;
            }
            cmds.Add(arg);
        }
        Console.WriteLine(outputFmt, string.Join(" ", cmds.ToArray()));
        if (needRun)
        {
            Application.Run(form);
        }
    }
}
Отдельный код парольной защиты (который не получается связать):
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
    private class ConsolePassword
    {
        public ConsolePassword()
        {
            string password, password1 = string.Empty;
 
            password = Console.ReadLine();
 
            using (StreamReader sr = new StreamReader(File.Open("C:\\1.txt", FileMode.Open)))
            {
                password1 = sr.ReadLine();
                sr.Close();
            }
            if (password == password1)
            {
                Console.WriteLine("Доступ разрешен.");
            }
            else
            {
                Console.WriteLine("Доступ запрещен.");
            }
            Console.Read();
        }
    }
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.02.2017, 12:02
Ответы с готовыми решениями:

Как сделать, чтобы в качестве аргумента процедура принимала название для массива?
Всем привет . Дана процедура ввода массива(Input). Нужно сделать чтобы в качестве аргумента...

Как сделать тут если не верно введён пароль, то закрывает приложение?
Как сделать тут если не верно введён пароль то закрывает приложения ? string password = &quot;1234&quot;,...

Как мне сделать так чтобы если не верный пароль программа закрывалась?
StreamReader objReader = new StreamReader(&quot;Password.txt&quot;, Encoding.GetEncoding(1251)); ...

С.AVR.Как сделать переменную цикла частью имени другой пер-й
Вот только недавно обратно начал заниматься электроникой и задумал уже второе устройство:сенсорную...

1
Администратор
Эксперт .NET
17019 / 13372 / 5217
Регистрация: 17.03.2014
Сообщений: 27,344
Записей в блоге: 1
19.02.2017, 21:32 2
Vitokhv, во-первых, все аргументы передаются сразу. Во-вторых, данная схема не является сколько нибудь надежной т.к. аргументы командной строки передаются и кто угодно может их посмотреть. Пароль нужно запрашивать у пользователя.
1
19.02.2017, 21:32
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
19.02.2017, 21:32
Помогаю со студенческими работами здесь

Как сделать вывод вещественного числа в textBox c фиксированной целой и вещественной частью
Доброго дня! Как сделать вывод вещественного числа в textBox c фиксированной целой и вещественной...

Заразил доки и поставил пароль а пароль забыл, не как его не взломать или не скинуть пароль с архива?
Зарарил доки и поставил пароль а пароль забыл, не как его не взломать или не скинуть пароль с...

argv и argc передача аргумента(пароль)
я должен передать в консоли параметр &quot; пароль &quot; если пароль верен то мне выводит сообщение - пароль...

Как сделать чтобы по умолчанию поиск был "с любой частью поля"?
Как сделать, чтобы при нажатии &quot;Ctrl+F&quot; появлялось окно поиска с настройкой &quot;с любой частью...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru