Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/18: Рейтинг темы: голосов - 18, средняя оценка - 4.83
Человек
331 / 205 / 63
Регистрация: 04.02.2013
Сообщений: 1,223
1

Режим приватности

03.05.2013, 16:07. Показов 3659. Ответов 18
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Как сделать программу приватной.
Допустим что-бы её не расшарили, необходимо после каждого запуска (или в какойто период 1-2 часа) вводить уникальный код.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.05.2013, 16:07
Ответы с готовыми решениями:

Два класса, ошибка из-за приватности полей
В двух словх... Первый класс - координата (широта или долгота), второй класс - корабль, у которого...

Ошибка о приватности конструктора пользовательского типа
Наткнулся на непонятную ошибку о приватности конструктора при объявлении-создании структуры...

VK API: изменения данных пользователя и настроек приватности
Никто не сталкивался с надобностью изменить некоторые данные о пользователе, скажем, любимые...

Как узнать почему включается энергосберегающий режим.И выключить навсегда этот режим?
Вообщем дело такое, гаснет монитор и появляется сообщение "Енергосберегающий режим" и в играх и...

18
83 / 78 / 14
Регистрация: 14.06.2012
Сообщений: 261
03.05.2013, 19:21 2
Ну, парень. Разработай алгоритм, который будет вычислять из полученного кода (уникального кода) правилен он или нет.
К примеру
код - 1234
3+2-1=4
или что-то в этом роде. На что фантазии хватит.
0
Человек
331 / 205 / 63
Регистрация: 04.02.2013
Сообщений: 1,223
03.05.2013, 19:29  [ТС] 3
Ну допустим у меня имеются заранее записанные комбинации, которые будут храниться где-то в недрах кода программы.
sd34g5hehbe55h;
4whg5g4wgerh6;
и т.д.
как реализовать саму систему.
0
1 / 1 / 1
Регистрация: 08.07.2012
Сообщений: 31
03.05.2013, 19:36 4
dolte, это называется капча. Есть очень много уже готовых ее вариантов, которые надо только поискать. Или же придумать свой. Есть даже интернет-сервисы, на которых можно создавать капчу.
Вот пример
1
Человек
331 / 205 / 63
Регистрация: 04.02.2013
Сообщений: 1,223
03.05.2013, 19:54  [ТС] 5
Цитата Сообщение от Semena Посмотреть сообщение
dolte, это называется капча. Есть очень много уже готовых ее вариантов, которые надо только поискать. Или же придумать свой. Есть даже интернет-сервисы, на которых можно создавать капчу.
Вот пример

Для примера, есть платная программа, и чтобы её использовать неограниченное кол-во времини, нам необходимо ввести ключь.

Тут принцып такой-же, только код будет запрашиваться постоянно (через заранее заданный период).


Капча подойдет ?
0
660 / 530 / 137
Регистрация: 07.07.2011
Сообщений: 1,232
03.05.2013, 20:29 6
Цитата Сообщение от dolte Посмотреть сообщение
где-то в недрах кода программы
И это у тебя выдернуть через 15 минут поиска.
0
1 / 1 / 1
Регистрация: 08.07.2012
Сообщений: 31
03.05.2013, 20:33 7
dolte, подойдет или не подойдет - надо пробовать. Главное здесь - вопрос безопасности. Другое дело, что многих пользователей будет раздражать постоянно вводить капчу.
0
83 / 78 / 14
Регистрация: 14.06.2012
Сообщений: 261
04.05.2013, 08:20 8
Друзья, не капчу, а лицензионный ключ (или как он там называется), он пытается сделать.
ShareWare программа, ключ которой запрашивается каждый раз при запуске...

P.S. Люди вряд ли будут заинтересованы в твоем продукте.

Что касается решения, то добавь на форму текстбокс и кнопку

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// код кнопки
List<string> codes = new List<string>();
codes.Add("КОД_1");
codes.Add("КОД_2"); // и т.д.
 
// проверка 
bool register = false;
foreach(string s in codes)
{
   if(textBox1.Text == s) // проверка с текстом в текстбоксе
   {
      register = true; // совпал
      break;
   }
}
 
if(!register)
{
   MessageBox.Show("Ключ введен неверно!");
   environment.exit(0); // выход
}
0
912 / 672 / 134
Регистрация: 01.03.2010
Сообщений: 1,273
04.05.2013, 09:52 9
dolte,
Почитайте статейку (где то в конце странички ). Может пригодится.
Это не решение Вашей проблемы. Наоборот, осознание ее масштаба.
Привязка к железу (на название не обращайте внимание)
1
Человек
331 / 205 / 63
Регистрация: 04.02.2013
Сообщений: 1,223
04.05.2013, 14:31  [ТС] 10
Цитата Сообщение от Neal Посмотреть сообщение
P.S. Люди вряд ли будут заинтересованы в твоем продукте.

[/CSHARP]
Я лишьосваиваю возможности, именно реализация ввода лицензионного ключа штука полезная =) а в том будут они заинтересованны или нет...ну по крайней мере не в ближайшие годы

Добавлено через 9 минут
Цитата Сообщение от Neal Посмотреть сообщение
Друзья, не капчу, а лицензионный ключ (или как он там называется), он пытается сделать.
ShareWare программа, ключ которой запрашивается каждый раз при запуске...

P.S. Люди вряд ли будут заинтересованы в твоем продукте.

Что касается решения, то добавь на форму текстбокс и кнопку

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// код кнопки
List<string> codes = new List<string>();
codes.Add("КОД_1");
codes.Add("КОД_2"); // и т.д.
 
// проверка 
bool register = false;
foreach(string s in codes)
{
   if(textBox1.Text == s) // проверка с текстом в текстбоксе
   {
      register = true; // совпал
      break;
   }
}
 
if(!register)
{
   MessageBox.Show("Ключ введен неверно!");
   environment.exit(0); // выход
}
а как заставить окно с этим кодом появляться каждый раз при запуске программы ?
0
83 / 78 / 14
Регистрация: 14.06.2012
Сообщений: 261
04.05.2013, 15:30 11
Создаешь еще одну форму (в инете много информации)

к примеру, Form2.

то в главной функции первой формы пишешь следующее:
C#
1
2
3
4
5
6
public Form1()
{
   InitializeComponent(); // это уже есть
   this.Hide(); // скрыть главную форму
   new Form2().Show(); // открыть вторичную форму
}
а в коде кнопки (во второй форме, естественно) добавляешь, при условии, что код совпал
C#
1
2
3
4
 
Form1.Show();
// или
new Form1.Show();
0
Человек
331 / 205 / 63
Регистрация: 04.02.2013
Сообщений: 1,223
04.05.2013, 16:40  [ТС] 12
Сделал так:

В первой форме:
C#
1
2
3
4
5
6
7
private void Form1_Load(object sender, EventArgs e)
        {
            Form2 form2 = new Form2();
            this.Hide();
            form2.ShowDialog();
            this.Show();
        }
После запуска открывается форма2 в которой нужно ввести код.

как вяглыдит код кнопки на 2й форме

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
List<string> codes = new List<string>();
            codes.Add("КОД_1");
            codes.Add("КОД_2"); // и т.д.
 
            // проверка 
            bool register = false;
            foreach (string s in codes)
            {
                if (textBox1.Text == s) // проверка с текстом в текстбоксе
                {
                    register = true; // совпал
                    break;
                }
            }
 
            if (!register)
            {
                MessageBox.Show("Ключ введен неверно!");
                this.Close();
                this.button1.Click += new System.EventHandler(this.button1_Click);
            }
 
            //Form1.Show();
            Form1 form1 = new Form1();
            this.Hide();
            form1.ShowDialog();
            this.Show();
Вопрос:

После ввода кода, и нажатии кнопки, вновь появляется эта-же форма, как сделать переход на форму 2.

Эту форму можно закрыть на крестик, как запретить это действие ?

Добавлено через 15 минут
И если ключь вводится не верно, опять открывается эта форма. Если её закрыть, появляется форма 1, после закрытия формы 1 появляется форма 2, получаеться что они копируются
0
83 / 78 / 14
Регистрация: 14.06.2012
Сообщений: 261
04.05.2013, 17:00 13
Кнопку закрытия можно отключить справа, в свойствах формы.
1
Человек
331 / 205 / 63
Регистрация: 04.02.2013
Сообщений: 1,223
04.05.2013, 17:07  [ТС] 14
Цитата Сообщение от Neal Посмотреть сообщение
Кнопку закрытия можно отключить справа, в свойствах формы.
а как-же всётаки после ввода верного кода, переходить на форму 1
0
17 / 15 / 4
Регистрация: 28.03.2013
Сообщений: 54
04.05.2013, 18:03 15
Просто не нужно стараться управлять первой формой из второй... Заведомо приводит к ошибкам. Каждый раз как встречается слово new вызывается конструктор который заново инициализирует форму... Короче получается ненужная рекурсия. Гораздо проще передать управление второй форме и потом получить из нее результат и все.
0
912 / 672 / 134
Регистрация: 01.03.2010
Сообщений: 1,273
04.05.2013, 22:46 16
Цитата Сообщение от dolte Посмотреть сообщение
а как-же всётаки после ввода верного кода, переходить на форму 1
1. Создай вторую форму для ввода пароля.

2. Во второй форме для кнопки ввода пароля пропиши
C#
1
2
3
4
5
6
7
8
9
        private void button1_Click(object sender, EventArgs e)
        {
            if (textBox1.Text !=  тут нужный пароль ) MessageBox.Show("не верный пароль");
            else
            {
                this.DialogResult=DialogResult.OK;
                Close();
            }
        }
3. Поменяй в Program.cs (или что там у тебя)
C#
1
2
3
4
5
6
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new Form1());
        }
на
C#
1
2
3
4
5
6
7
8
9
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Form2 form2= new Form2();
            Application.Run(form2);
            if ( form2.DialogResult== DialogResult.OK)
            Application.Run(new Form1());
        }
Пример скинул с файлом
Вложения
Тип файла: 7z Форма для ввода пароля.7z (24.1 Кб, 45 просмотров)
1
22 / 22 / 2
Регистрация: 08.03.2011
Сообщений: 114
05.05.2013, 01:21 17
dolte, для этого лучше создать дополнительную форму с полем ввода ключа и сообщением о корректности ключа, а выводить уже эту форму при запуске программы.
Цитата Сообщение от dolte Посмотреть сообщение
а как заставить окно с этим кодом появляться каждый раз при запуске программы ?
У формы есть событие "Form_load". В нем описываются действия, которые необходимо произвести при запуске. Поместите в обработчик этого события код.
0
Человек
331 / 205 / 63
Регистрация: 04.02.2013
Сообщений: 1,223
05.05.2013, 01:32  [ТС] 18
Цитата Сообщение от wep6ak Посмотреть сообщение
dolte, для этого лучше создать дополнительную форму с полем ввода ключа и сообщением о корректности ключа, а выводить уже эту форму при запуске программы.

У формы есть событие "Form_load". В нем описываются действия, которые необходимо произвести при запуске. Поместите в обработчик этого события код.
Предыдущие посты то хоть читайте =) уже давно на всё ответили и разъяснили =)
0
wep6ak
05.05.2013, 13:34     Режим приватности
  #19

Не по теме:

я с телефона писал и не увидел вторую страницу, только потом заметил

0
05.05.2013, 13:34
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.05.2013, 13:34
Помогаю со студенческими работами здесь

Как можно из VB переключить режим 800х600 на режим 1024х768.
Как можно из VB переключить режим 800х600 на режим 1024х768. Благодарю за помощь

после вкл компьютера,сразу переходит в режим восстановления, в безопасный режим не получается перейти. windows 7 64bit
после вкл компьютера,сразу переходит в режим восстановления, в безопасный режим не получается...

неоптимизированый режим: рекомендуемый режим 1280*1024 60Hz" ???? и дальше нет картинки .Что делать
неоптимизированый режим: рекомендуемый режим 1280*1024 60Hz&quot; ???? и дальше нет картинки .Что делать

Монитор Samsung-SyncMaster 2033 при запуске системы пишет неоптимальный режим, рекомендованный режим 1600х900
Здравствуйте. У меня возникла проблема с монитором Samsung-SyncMaster 2033. Скачал себе игрушку...


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

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