Помогите вызвать всплывающее окно для ввода кода из смс

enjoy1337

Client
Регистрация
14.12.2016
Сообщения
45
Благодарностей
3
Баллы
8
Всем привет! Ситуация такая: шаблон вводит при авторизации в телеграм мой номер телефона, тем самым на сайте запрашивается код подтверждения. Задача: сделать так, чтобы мне всплыло окошко, куда я введу код, нажму "ок" и этот код передастся в переменную. Как так сделать?
На просторах форума нашел это решение: http://zennolab.com/discussion/thre...ws-cherez-snippety-c.13416/page-3#post-174997 , но оно у меня просто успешно выполняется и ничего не происходит (никакое окно не всплывает). Сразу говорю - в коде не силен. Помогите, пожалуйста, кто знает путь решения, буду очень благодарен
 

ТРОН

Client
Регистрация
31.07.2016
Сообщения
336
Благодарностей
381
Баллы
63
Всем привет! Ситуация такая: шаблон вводит при авторизации в телеграм мой номер телефона, тем самым на сайте запрашивается код подтверждения. Задача: сделать так, чтобы мне всплыло окошко, куда я введу код, нажму "ок" и этот код передастся в переменную. Как так сделать?
На просторах форума нашел это решение: http://zennolab.com/discussion/thre...ws-cherez-snippety-c.13416/page-3#post-174997 , но оно у меня просто успешно выполняется и ничего не происходит (никакое окно не всплывает). Сразу говорю - в коде не силен. Помогите, пожалуйста, кто знает путь решения, буду очень благодарен
Введенные данные будут падать в переменную sms, если ее нет, нужно создать

Код:
// создаём форму с указанным значением
var dialogForm = new System.Windows.Forms.Form { Size = new Size(203, 110), ShowIcon = false, Name = "DialogForm", Text = @"Введите смс код",
                FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog, MinimizeBox = false, MaximizeBox = false };
           
// поле ввода
var textBox = new System.Windows.Forms.TextBox { Name = "InputText", Size = new Size(165, 20) };
// кладём не форму
dialogForm.Controls.Add(textBox);
// положение на форме
textBox.Location = new Point(12, 12);
// кнопка ok
var okButton = new System.Windows.Forms.Button { Name = "OKButton", Text = @"OK", Size = new Size(75, 23) };
// кладём не форму
dialogForm.Controls.Add(okButton);
// положение на форме
okButton.Location = new Point(20, 38);
// обработка события
okButton.Click += (delegate { dialogForm.DialogResult = System.Windows.Forms.DialogResult.OK; });
// кнопка отмены
var cancelButton = new System.Windows.Forms.Button { Name = "CancelButton", Text = @"Отмена", Size = new Size(75, 23)};
// кладём не форму
dialogForm.Controls.Add(cancelButton);
// положение на форме
cancelButton.Location = new Point(100, 38);
// обработка события
cancelButton.Click += (delegate { dialogForm.DialogResult = System.Windows.Forms.DialogResult.Cancel; });
// показывем форму
var dialogResult = dialogForm.ShowDialog();
// если не было отмены диалога
if (dialogResult != System.Windows.Forms.DialogResult.Cancel) return project.Variables["sms"].Value = textBox.Text.ToString();
project.SendErrorToLog("","Данные не введены",true);
throw new Exception ("Данные не введены");
 

enjoy1337

Client
Регистрация
14.12.2016
Сообщения
45
Благодарностей
3
Баллы
8
Введенные данные будут падать в переменную sms, если ее нет, нужно создать

Код:
// создаём форму с указанным значением
var dialogForm = new System.Windows.Forms.Form { Size = new Size(203, 110), ShowIcon = false, Name = "DialogForm", Text = @"Введите смс код",
                FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog, MinimizeBox = false, MaximizeBox = false };
          
// поле ввода
var textBox = new System.Windows.Forms.TextBox { Name = "InputText", Size = new Size(165, 20) };
// кладём не форму
dialogForm.Controls.Add(textBox);
// положение на форме
textBox.Location = new Point(12, 12);
// кнопка ok
var okButton = new System.Windows.Forms.Button { Name = "OKButton", Text = @"OK", Size = new Size(75, 23) };
// кладём не форму
dialogForm.Controls.Add(okButton);
// положение на форме
okButton.Location = new Point(20, 38);
// обработка события
okButton.Click += (delegate { dialogForm.DialogResult = System.Windows.Forms.DialogResult.OK; });
// кнопка отмены
var cancelButton = new System.Windows.Forms.Button { Name = "CancelButton", Text = @"Отмена", Size = new Size(75, 23)};
// кладём не форму
dialogForm.Controls.Add(cancelButton);
// положение на форме
cancelButton.Location = new Point(100, 38);
// обработка события
cancelButton.Click += (delegate { dialogForm.DialogResult = System.Windows.Forms.DialogResult.Cancel; });
// показывем форму
var dialogResult = dialogForm.ShowDialog();
// если не было отмены диалога
if (dialogResult != System.Windows.Forms.DialogResult.Cancel) return project.Variables["sms"].Value = textBox.Text.ToString();
project.SendErrorToLog("","Данные не введены",true);
throw new Exception ("Данные не введены");
Просто от души! Пол часа над этим сидел, надо срочно учить код :D
 

Mikhail B.

Client
Регистрация
23.12.2014
Сообщения
14 427
Благодарностей
5 453
Баллы
113
Введенные данные будут падать в переменную sms, если ее нет, нужно создать

Код:
// создаём форму с указанным значением
var dialogForm = new System.Windows.Forms.Form { Size = new Size(203, 110), ShowIcon = false, Name = "DialogForm", Text = @"Введите смс код",
                FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog, MinimizeBox = false, MaximizeBox = false };
          
// поле ввода
var textBox = new System.Windows.Forms.TextBox { Name = "InputText", Size = new Size(165, 20) };
// кладём не форму
dialogForm.Controls.Add(textBox);
// положение на форме
textBox.Location = new Point(12, 12);
// кнопка ok
var okButton = new System.Windows.Forms.Button { Name = "OKButton", Text = @"OK", Size = new Size(75, 23) };
// кладём не форму
dialogForm.Controls.Add(okButton);
// положение на форме
okButton.Location = new Point(20, 38);
// обработка события
okButton.Click += (delegate { dialogForm.DialogResult = System.Windows.Forms.DialogResult.OK; });
// кнопка отмены
var cancelButton = new System.Windows.Forms.Button { Name = "CancelButton", Text = @"Отмена", Size = new Size(75, 23)};
// кладём не форму
dialogForm.Controls.Add(cancelButton);
// положение на форме
cancelButton.Location = new Point(100, 38);
// обработка события
cancelButton.Click += (delegate { dialogForm.DialogResult = System.Windows.Forms.DialogResult.Cancel; });
// показывем форму
var dialogResult = dialogForm.ShowDialog();
// если не было отмены диалога
if (dialogResult != System.Windows.Forms.DialogResult.Cancel) return project.Variables["sms"].Value = textBox.Text.ToString();
project.SendErrorToLog("","Данные не введены",true);
throw new Exception ("Данные не введены");
Бомбически! А можно сделать третью кнопку "Получить код повторно"?
 

ТРОН

Client
Регистрация
31.07.2016
Сообщения
336
Благодарностей
381
Баллы
63
Бомбически! А можно сделать третью кнопку "Получить код повторно"?
Конечно можно, только свободного времени сейчас нет. Сделайте логически, если нажать отмену и при выходе по красной пусть идет снова получать смс
 
  • Спасибо
Реакции: Mikhail B.

mishanya9002

Client
Регистрация
04.01.2019
Сообщения
112
Благодарностей
7
Баллы
18
А как можно отправлять код из смс нажатием Enter а не кнопкой Ок,
(F.AcceptButton= button;-) не работает почему-то в данном коде, может есть что то другое , или я просто неправильно что-то делаю ? или нужно что-то добавить из using?
 
Последнее редактирование:

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)