Модераторы: diadiavova, gambit

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> WebBrowser, Программное взаимодействие с документом 
V
    Опции темы
diadiavova
Дата 11.10.2009, 12:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 8
Всего: 142



Итак, продолжим наши процедуры smile 
Набросал проект(как и обещал), значит как всё работает:
При загрузке формы появляется окно авторизации. В него надо ввести
логин:    000
пароль:  123
Специально выбрал цифры, чтобы не было проблем с раскладками, кодировками итд. 
После вввода загружается гуголь, в строку поиска вводится слово "превед" и нажимается кнопка поиска, ты уже видишь результат.

Вверху есть жёлтая полоска. Это комбобокс с логинами. При выборе одного из них в строку поиска вводится соответствующий ему пароль и нажимается кнопка(автоматом ессно).

На панели инструментов две кнопки. Remove login удаляет выбраный в настоящее время пункт списка, Add login - показывает инпутбокс, в который надо через запятую ввести логин и пароль, они будут добавлены.

Список логинов с паролями хранится в XML-файле, который грузится вместе с формой, а при закрытии формы сохраняются все изменения, внесённые за время работы программы.

На сколько я понимаю, это и есть примерно то, что ты хотела. Разберись в коде - поймёшь как это применить к твоим задачам.

Присоединённый файл ( Кол-во скачиваний: 9 )
Присоединённый файл  submit.rar 235,85 Kb


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
Natapro
Дата 11.10.2009, 12:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 460
Регистрация: 13.9.2009
Где: Украина

Репутация: нет
Всего: нет



Доброе утро, щяс посмотрю...

Добавлено через 9 минут и 7 секунд
ничего не поняла и запуталасЬ :(

Добавлено через 9 минут и 31 секунду
можешь показать на примере того что я давала ?

Добавлено через 14 минут и 45 секунд
вродь разобралась пробую


--------------------
Красивая девушка не может быть глупой.Умная девушка не позволит себе быть некрасивой...
PM MAIL   Вверх
Natapro
Дата 11.10.2009, 12:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 460
Регистрация: 13.9.2009
Где: Украина

Репутация: нет
Всего: нет



Супер всё получилось, прикуручую себе smile


--------------------
Красивая девушка не может быть глупой.Умная девушка не позволит себе быть некрасивой...
PM MAIL   Вверх
Natapro
Дата 11.10.2009, 13:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 460
Регистрация: 13.9.2009
Где: Украина

Репутация: нет
Всего: нет



а Можно ли зашифровать тот хмл файл, где логин и пароль хранится ?


--------------------
Красивая девушка не может быть глупой.Умная девушка не позволит себе быть некрасивой...
PM MAIL   Вверх
diadiavova
Дата 11.10.2009, 13:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 8
Всего: 142



Лучше зашыфруй сами пароли. Иначе все удобства работы с хмл исчезнут


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
Natapro
Дата 11.10.2009, 14:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 460
Регистрация: 13.9.2009
Где: Украина

Репутация: нет
Всего: нет



Появилась проблема, не могу понять почему
вот вылажую Код формы, и проблему:


Вот код

Код

Imports System.ComponentModel

Public Class LoginForm1
    Dim xDoc As XDocument = XDocument.Load("passwordsG.xml")
    Dim xDoc1 As XDocument = XDocument.Load("passwordsF.xml")
    Sub www()
        Dim items = From it In xDoc...<item> Select login = it.@login, password = it.@password
        ComboBox1.Items.AddRange(items.ToArray)
        Me.ComboBox1.DisplayMember = "login"
        Me.ComboBox1.ValueMember = "password"

    End Sub
    Sub www2()
        Dim items = From it In xDoc1...<item> Select login = it.@login, password = it.@password
        ComboBox2.Items.AddRange(items.ToArray)
        Me.ComboBox2.DisplayMember = "login"
        Me.ComboBox2.ValueMember = "password"

    End Sub
  
    Private Sub OK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OK.Click

        Form1.WebBrowser1.Document.GetElementById("login_auth").SetAttribute("value", UsernameTextBox.Text)
        Form1.WebBrowser1.Document.GetElementById("pass_auth").SetAttribute("value", PasswordTextBox.Text)
        Dim f = Form1.WebBrowser1.Document.Forms(0).DomElement
        f.GetType.GetMethod("submit").Invoke(f, Nothing)
        Form1.WebBrowser2.Document.GetElementById("username").SetAttribute("value", UsernameTextbox1.Text)
        Form1.WebBrowser2.Document.GetElementById("password").SetAttribute("value", passwordTextbox1.Text)
        Form1.WebBrowser2.Document.Forms(0).DomElement.login.click()
        Me.Close()
    End Sub

    Private Sub Cancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Cancel.Click
        Me.Close()
    End Sub

    Private Sub LoginForm1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        www()
        www2()
    End Sub

    Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged
        UsernameTextBox.Text = ComboBox1.SelectedItem.login
        PasswordTextBox.Text = ComboBox1.SelectedItem.password
    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim lp = InputBox("Впишите логин и пароль, разделив их запятой без пробелов", "Добавление логина").Split(",")
        If lp.Length = 2 Then
            Dim newItem = New With {.login = lp(0), .password = lp(1)}
            Me.ComboBox1.Items.Add(newItem)
        End If
    End Sub

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        If Me.ComboBox1.SelectedIndex > -1 Then
            Me.ComboBox1.Items.RemoveAt(Me.ComboBox1.SelectedIndex)
        End If
    End Sub
    Private Sub Me_BeforeClosing(ByVal sender As Object, ByVal e As CancelEventArgs) Handles Me.Closing
        xDoc = <?xml version="1.0" encoding="utf-8"?>
               <passwords>
                   <%= From it In Me.ComboBox1.Items Select <item login=<%= it.login %> password=<%= it.password %>/> %>
               </passwords>
        xDoc.Save("passwordsG.xml")
    End Sub
    Private Sub ComboBox2_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox2.SelectedIndexChanged
        UsernameTextbox1.Text = ComboBox2.SelectedItem.login
        passwordTextbox1.Text = ComboBox2.SelectedItem.password
    End Sub
    Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
        Dim lp = InputBox("Впишите логин и пароль, разделив их запятой без пробелов", "Добавление логина").Split(",")
        If lp.Length = 2 Then
            Dim newItem = New With {.login = lp(0), .password = lp(1)}
            Me.ComboBox2.Items.Add(newItem)
        End If
    End Sub

    Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
        If Me.ComboBox2.SelectedIndex > -1 Then
            Me.ComboBox2.Items.RemoveAt(Me.ComboBox2.SelectedIndex)
        End If
    End Sub
    Private Sub Me_Before1Closing(ByVal sender As Object, ByVal e As CancelEventArgs) Handles Me.Closing
        xDoc1 = <?xml version="1.0" encoding="utf-8"?>
                <passwords>
                    <%= From it In Me.ComboBox2.Items Select <item login=<%= it.login %> password=<%= it.password %>/> %>
                </passwords>
        xDoc1.Save("passwordsF.xml")
    End Sub
End Class


Вот скрин проблемы
user posted image

Это сообщение отредактировал(а) Natapro - 11.10.2009, 19:44


--------------------
Красивая девушка не может быть глупой.Умная девушка не позволит себе быть некрасивой...
PM MAIL   Вверх
diadiavova
Дата 11.10.2009, 17:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 8
Всего: 142



Скорее всего это означает, что в документе нет элемента с id="username"


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
Natapro
Дата 11.10.2009, 17:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 460
Регистрация: 13.9.2009
Где: Украина

Репутация: нет
Всего: нет



та не , имеет он нормально роботало вот когда твой код вписала выбило ошыбку, и теперь немогу понять почему :(


--------------------
Красивая девушка не может быть глупой.Умная девушка не позволит себе быть некрасивой...
PM MAIL   Вверх
diadiavova
Дата 11.10.2009, 17:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 8
Всего: 142



Вообще-то, когда я постил пример, подразумевалось, что ты разберёшься как он работает и будешь делать как следует. Вместо этого ты скопипастила мой пример в свою прогу и хочешь чтобы работало. Обычно так не бывает. Я, например тебе уже писал, что диалоговое окно должно тоько запрашивать какие-то данные и возвращать результат, а воздействовать из него на вызвавшую его форму - неправильно. Выложил пример как надо сделать, но ты всё равно сделала по-своему. В результате в таком коде разобраться ой как непросто. Да и для того, чтобы проблему диагностировать нужно код в отладчике запускать. Например я не могу так определить, какой именно объект отсутствует, а ты можешь.


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
Natapro
Дата 11.10.2009, 17:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 460
Регистрация: 13.9.2009
Где: Украина

Репутация: нет
Всего: нет



ну я по твоему примеру делала ) и вродь разобралась smile я забыла что-то про откладку, шурую проверять )


--------------------
Красивая девушка не может быть глупой.Умная девушка не позволит себе быть некрасивой...
PM MAIL   Вверх
diadiavova
Дата 11.10.2009, 18:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 8
Всего: 142



Ну как по-моему, когда ты из диалогового окна что-то в вызывающей форме шебуршишь? Дело твоё, конечно, но только не надо говорить, что это по-моему, а то люди и вправду подумают smile 


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
Natapro
Дата 11.10.2009, 18:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 460
Регистрация: 13.9.2009
Где: Украина

Репутация: нет
Всего: нет



 smile фсё я исправила, оставлю эту тему в покое ))) иду флудить дальше в другие, пасибки всем )


--------------------
Красивая девушка не может быть глупой.Умная девушка не позволит себе быть некрасивой...
PM MAIL   Вверх
Natapro
Дата 11.10.2009, 19:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 460
Регистрация: 13.9.2009
Где: Украина

Репутация: нет
Всего: нет



давайте вернёмся всётаки к вопросу что я задавала, посмотрите код пожалуйста где ошибка ? 

Вот сюда


--------------------
Красивая девушка не может быть глупой.Умная девушка не позволит себе быть некрасивой...
PM MAIL   Вверх
diadiavova
Дата 11.10.2009, 19:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 8
Всего: 142



А что там смотреть? Это надо смотреть в отладчике. Какого именно объекта нет. Там в одном выражении может быть несколько объектов. Надо искать какого именно нет. Как я по-твоему могу это определить? Мне что телепатов позвать?


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
Natapro
Дата 15.11.2009, 14:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 460
Регистрация: 13.9.2009
Где: Украина

Репутация: нет
Всего: нет



Цитата(diadiavova @  11.10.2009,  17:01 Найти цитируемый пост)
Скорее всего это означает, что в документе нет элемента с id="username"

я поняла в чом ошыбка, то уже на форуме авторизована smile 
Вопрос:
А как сделать что если оно не находит это айди ) тоесть уже авторизована, то просто пропускалось действие ?


Это сообщение отредактировал(а) Natapro - 15.11.2009, 14:13


--------------------
Красивая девушка не может быть глупой.Умная девушка не позволит себе быть некрасивой...
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума VB .NET
diadiavova
  • Прежде чем задать вопрос, воспользуйтесь поиском: возможно Ваш вопрос уже обсуждался и на него был получен ответ.
  • Если такой же вопрос не найден, не стоит задавать свой вопрос в любую тему, создайте новую.
  • Заголовок темы должен отображать ее суть.
  • Содержание поста должно описывать проблему понятно, но в то же время, по возможности, лаконично. Сначала следует описать суть вопроса, потом можно привести пример кода, не вынуждайте других участников угадывать в чем Ваша проблема - телепатов здесь нет.
  • Будьте взаимно вежливы и дружелюбны.
  • При оформлении сообщений используйте форматирование, примеры кода заключайте в теги [CODE=vbnet][/CODE].
  • Также ознакомьтесь с общими правилами, действующими на всем форуме.
  • Если вопрос решен, не забывайте помечать тему решенной(вверху темы есть ссылка). Кроме того, если Вы хотите отблагодарить участников, оказавших помощь в решении, можно повысить им репутацию, в случае, если у Вас менее 100 сообщений в форуме и функция изменения репутации Вам недоступна, можете написать сюда.
  • Общие вопросы по программированию на платформе .NET обсуждаются здесь.
  • Литература по VB .NET обсуждается здесь.

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, diadiavova.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | VB .NET | Следующая тема »


 




[ Время генерации скрипта: 0.0533 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.