Форум программистов, компьютерный форум, киберфорум
Наши страницы
Visual Basic
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/12: Рейтинг темы: голосов - 12, средняя оценка - 4.50
-Storm-
1 / 1 / 0
Регистрация: 28.01.2011
Сообщений: 31
1

Форма входа

13.08.2011, 21:13. Просмотров 2187. Ответов 18
Метки нет (Все метки)

Нужен исходник автологинера на
Что бы вводило ник и пароль я сделал. Не получается с кнопкой входа как ее нажатЬ???
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.08.2011, 21:13
Ответы с готовыми решениями:

Мониторинг входа/выхода пользователей
Нужно написать скрипт,который записывал бы время,дату и имя компьютера в txt...

Логин и пароль для входа
Есть программа, перед тем как зайти нужно чтоб в отдельном окне запрашивался...

Существует ли подпрограмма, не имеющая входа
Если кто знает,пожалуйста ответьте. Существует ли подпрограмма не имеющая...

Распознование входа новыъ данных в БД
VB6 + Access : Мы находимся в окне 'Add new employee to DB'. После ввода...

Вопросы по созданию входа админа
У меня вот два вопроса к опытным программерам): 1.Подскажите,вот имеется...

18
gitarillo
729 / 529 / 45
Регистрация: 17.06.2010
Сообщений: 1,032
Записей в блоге: 1
13.08.2011, 21:54 2
Цитата Сообщение от -Storm- Посмотреть сообщение
Не получается с кнопкой входа как ее нажатЬ???
Как вариант позиционировать мышь и эмулировать нажатие с помощью АПИ.
0
Ципихович Эндрю
1411 / 321 / 28
Регистрация: 10.04.2009
Сообщений: 5,040
14.08.2011, 07:09 3
Цитата Сообщение от gitarillo Посмотреть сообщение
Как вариант позиционировать мышь и эмулировать нажатие с помощью АПИ.
не подскажите пжл код сего действия??
0
gitarillo
729 / 529 / 45
Регистрация: 17.06.2010
Сообщений: 1,032
Записей в блоге: 1
14.08.2011, 17:34 4
Цитата Сообщение от Ципихович Эндрю Посмотреть сообщение
не подскажите пжл код сего действия??
А пожалуйста:
Visual Basic
1
2
3
4
5
6
7
8
9
10
Private Declare Sub mouse_event Lib "user32" (ByVal dwFlags As Long, _
    ByVal dx As Long, ByVal dy As Long, _
    ByVal cButtons As Long, ByVal dwExtraInfo As Long)
Private Sub Command2_Click()
' Перемещаем указатель мыши
mouse_event &H1, 100, 100, 0, 0
' Нажимаем и отпускаем левую кнопку
mouse_event &H2, 0, 0, 0, 0
mouse_event &H4, 0, 0, 0, 0
End Sub
1
-Storm-
1 / 1 / 0
Регистрация: 28.01.2011
Сообщений: 31
14.08.2011, 17:57  [ТС] 5
Цитата Сообщение от gitarillo Посмотреть сообщение
А пожалуйста:
Visual Basic
1
2
3
4
5
6
7
8
9
10
Private Declare Sub mouse_event Lib "user32" (ByVal dwFlags As Long, _
    ByVal dx As Long, ByVal dy As Long, _
    ByVal cButtons As Long, ByVal dwExtraInfo As Long)
Private Sub Command2_Click()
' Перемещаем указатель мыши
mouse_event &H1, 100, 100, 0, 0
' Нажимаем и отпускаем левую кнопку
mouse_event &H2, 0, 0, 0, 0
mouse_event &H4, 0, 0, 0, 0
End Sub
а как узнать координаты обьекта по которому кликать?
0
gitarillo
729 / 529 / 45
Регистрация: 17.06.2010
Сообщений: 1,032
Записей в блоге: 1
14.08.2011, 18:03 6
Visual Basic
1
mouse_event &H1, 100, 100, 0, 0
100, 100 смещение указателя относительно текущего положения. Как опрделить положение кнопке на веб-странице без понятия.
0
-Storm-
1 / 1 / 0
Регистрация: 28.01.2011
Сообщений: 31
14.08.2011, 18:05  [ТС] 7
Цитата Сообщение от gitarillo Посмотреть сообщение
Visual Basic
1
mouse_event &H1, 100, 100, 0, 0
100, 100 смещение указателя относительно текущего положения. Как опрделить положение кнопке на веб-странице без понятия.
Ну у меня браузер встроен в программу и он на одном уровне с кнопками.
0
gitarillo
729 / 529 / 45
Регистрация: 17.06.2010
Сообщений: 1,032
Записей в блоге: 1
14.08.2011, 18:06 8
Тогда проще. тогда методом научного тыка. просто подобрать.
2
Ципихович Эндрю
1411 / 321 / 28
Регистрация: 10.04.2009
Сообщений: 5,040
14.08.2011, 19:53 9
подскажите, где прочитать про константы H1-H4?

Добавлено через 4 минуты
-Storm-, выложите пжл код как Вы пароль вводите
2
Посмотрите, код, может что подойдёт

Visual Basic
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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
Option Explicit
 
Sub IE_Internet_Explorer()
 
'http://www.cyberforum.ru/vba/thread328405-page7.html
'Web браузер показывает страницу на основе HTML текста, то есть в страничке есть теги:
'<a> </a> - ссылки
'<table></table> - таблицы
 
'отключаем обновление - дёргание экрана при выполнении кода
    Application.ScreenUpdating = False
 
    Dim objCollectionIf As Object
    Dim Shell As Object
    Dim Wins As Object
    Dim WinItem As Variant
    Dim oDoc As Object
    Dim InputName As String
    Const SiteURL As String = "http://www.yandex.ru/"
    Dim WinItemLocationURL As String
    Dim FullWinItemLocationURL As String
    Dim objCollectionIfName As String
    Dim objCollectionIfValue As String
    Dim Все_ссылки As String
    Dim Все_кнопки_поля_чекбоксы As String
 
    Dim objCollectionIfLength_input As Integer
    Dim objCollectionIfLength_a As Integer
    Dim objCollectionIfType As String
    Dim i As Integer
    Dim WinItemLocationURLCount As Integer
    Dim Ссылки As Integer
    Dim Кнопки_поля_чекбоксы As Integer
 
    Dim Страница_IE_найдена As Boolean
 
    Set Shell = CreateObject("shell.application")
 
    For Each WinItem In Shell.Windows
 
        WinItemLocationURL = WinItem.LocationURL
        If Mid$(WinItemLocationURL, 1, 7) <> "file://" Then
            WinItemLocationURLCount = WinItemLocationURLCount + 1
            FullWinItemLocationURL = FullWinItemLocationURL & WinItemLoca-tionURLCount & ": " & WinItemLocationURL & Chr$(13)
 
            If WinItem.LocationURL = SiteURL Then
                Set oDoc = WinItem.Document
                Страница_IE_найдена = True
            Else
            End If
        End If
    Next
 
    If Страница_IE_найдена = True Then
        MsgBox$ _
                "Найдено вкладок Internet Explorer: " & WinItemLocation-URLCount & Chr$(13) & _
                                                      FullWinItemLocationURL, vbOKOnly, _
                                                      "Внимание"
    Else
        MsgBox$ _
                "Не найдена требуемая страница: " & SiteURL & Chr$(13) & _
                                                  "Программа не может быть продолжена" & Chr$(13) & _
                                                  "Найдено вкладок Internet Explorer: " & WinItemLocationURLCount & Chr$(13) & _
                                                  FullWinItemLocationURL, vbOKOnly, _
                                                  "Внимание"
        GoTo Конец
    End If
 
    'Когда пишем oDoc.getElementsByTagName("input")
    'то получаем по тегам всю коллекцию ("input")
    'полей, у полей Name = "text", Type = "text"
    'кнопок, у кнопки Name = "Имя кнопки", Type = "submit"
    'чекбоксов, у чекбокса Name = "twoweeks", Type = "checkbox"
 
    Set objCollectionIf = oDoc.getElementsByTagName("input")
    objCollectionIfLength_input = objCollectionIf.Length
    'проходит по всем кнопкам, полям, чекбоксам - ("input")
    While i < objCollectionIf.Length
        objCollectionIfType = objCollectionIf(i).Type
        objCollectionIfName = objCollectionIf(i).Name
        objCollectionIfValue = objCollectionIf(i).Value
 
        Кнопки_поля_чекбоксы = Кнопки_поля_чекбоксы + 1
        Все_кнопки_поля_чекбоксы = Все_кнопки_поля_чекбоксы & _
                                   Кнопки_поля_чекбоксы & ":" & " Type: " & objCollectionIf(i).Type & " Name: " & objCollectionIf(i).Name & " Value: " & objCollectionIf(i).Value & Chr$(13)
 
        'вводим в поле требуемый текст
        If objCollectionIf(i).Name = "text" Then
            objCollectionIf(i).Value = "Нужный текст"
            'GoTo Текст_в_поле_ввели
        End If
        i = i + 1
    Wend
    i = 0
 
    MsgBox$ _
            "Кнопки, поля, чекбоксы: " & Кнопки_поля_чекбоксы & Chr$(13) & _
                                       Все_кнопки_поля_чекбоксы, vbOKOnly, _
                                       "Внимание"
 
Текст_в_поле_ввели:
 
    Set objCollectionIf = oDoc.getElementsByTagName("input")
    objCollectionIfLength_input = objCollectionIf.Length
    'проходит по всем кнопкам, полям, чекбоксам - ("input")
    While i < objCollectionIf.Length
        objCollectionIfType = objCollectionIf(i).Type
        objCollectionIfName = objCollectionIf(i).Name
        objCollectionIfValue = objCollectionIf(i).Value
        'ищем инпут с типом субмит(кнопку)
        If (objCollectionIf(i).Value = "Найти" And objCollectionIf(i).Type = "submit") Then
            'нажимаем кнопку
            objCollectionIf(i).Click
            'выходим из цикла
            GoTo Кнопку_нажали
        End If
        i = i + 1
    Wend
    i = 0
 
Кнопку_нажали:
 
    Set objCollectionIf = oDoc.getElementsByTagName("input")
    objCollectionIfLength_input = objCollectionIf.Length
    'проходит по всем кнопкам, полям, чекбоксам - ("input")
    While i < objCollectionIf.Length
        objCollectionIfType = objCollectionIf(i).Type
        objCollectionIfName = objCollectionIf(i).Name
        objCollectionIfValue = objCollectionIf(i).Value
        If objCollectionIf(i).Type = "checkbox" And objCollectionIf(i).Name = "twoweeks" Then
            'отмечаем checkbox ...
            objCollectionIf(i).Checked = True
            'уточняем состояние checkbox, ставим или снимаем его
            If objCollectionIf(i).Checked = True Then
                objCollectionIf(i).Checked = False
            ElseIf objCollectionIf(i).Checked = False Then
                objCollectionIf(i).Checked = True
            End If
        End If
        i = i + 1
    Wend
    i = 0
 
    'Когда пишем oDoc.getElementsByTagName("а")
    'тогда получаем по тегам всю коллекцию ссылок, то есть буква ("а") - это название тега
    Set objCollectionIf = oDoc.getElementsByTagName("a")
    objCollectionIfLength_a = objCollectionIf.Length
    'проходит по всем ссылкам - ("а")
    While i < objCollectionIf.Length
        objCollectionIfType = objCollectionIf(i).Type
        objCollectionIfName = objCollectionIf(i).Name
        objCollectionIfValue = objCollectionIf(i).Value
        If Len((objCollectionIf(i).Title)) <> 0 Then
            Ссылки = Ссылки + 1
            Все_ссылки = Все_ссылки & Ссылки & ": " & objCollec-tionIf(i).Title & Chr$(13)
            'MsgBox$ (objCollectionIf(i).Title)
            If objCollectionIf(i).Title = "Уточнить сведения" Then
                'вызываем событие клика у полученного элемента
                objCollectionIf(i).onclick
            End If
        End If
        i = i + 1
    Wend
 
    MsgBox$ _
          i & Chr$(13) & _
            "Ссылки: " & Ссылки & Chr$(13) & _
            Все_ссылки, vbOKOnly, _
            "Внимание"
 
    Selection.TypeText Text:=i & Chr$(13) & _
                             "Ссылки: " & Ссылки & Chr$(13) & _
                             Все_ссылки
    i = 0
 
    'установка объекта в значение Nothing требуется для освобождения памяти, которая была выделена для создания этого объекта
    Set objCollectionIf = Nothing
    Set oDoc = Nothing
 
Конец:
 
    Set Shell = Nothing
 
    'отменяем отключенное ранее обновление - дёргание экрана при выполнении кода
    Application.ScreenUpdating = True
 
End Sub
0
gitarillo
729 / 529 / 45
Регистрация: 17.06.2010
Сообщений: 1,032
Записей в блоге: 1
14.08.2011, 19:57 10
Цитата Сообщение от Ципихович Эндрю Посмотреть сообщение
подскажите, где прочитать про константы H1-H4?
Читайте про шестнадцатеричную сиситемы счисления (Hex). Переводы из нее в десятичную, двоичную и обратно. Для общего развития будет полезно, но в плане понимания работы с API эти знания в принципе не нужны.
0
Ципихович Эндрю
1411 / 321 / 28
Регистрация: 10.04.2009
Сообщений: 5,040
14.08.2011, 20:16 11
то есть где амперсанд, значит это 16-ти ричная???
ну например, перевёл я в 16-ти ричную, сознания не добавилось
0
-Storm-
1 / 1 / 0
Регистрация: 28.01.2011
Сообщений: 31
14.08.2011, 20:20  [ТС] 12
Цитата Сообщение от Ципихович Эндрю Посмотреть сообщение
подскажите, где прочитать про константы H1-H4?

Добавлено через 4 минуты
-Storm-, выложите пжл код как Вы пароль вводите

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
Private Sub Command1_Click()
 
 
WebBrowser1.Silent = True
    WebBrowser1.Navigate "http://************.com"
  
   Do While WebBrowser1.Busy
        DoEvents
Loop
WebBrowser1.Document.All("login").Value = Text1.Text
 WebBrowser1.Document.All("password").Value = Text2.Text
 
End Sub
у меня 2 строки в них вводится логин/пароль (Text1,Text2)
0
Ципихович Эндрю
1411 / 321 / 28
Регистрация: 10.04.2009
Сообщений: 5,040
14.08.2011, 20:41 13
спасибо

Добавлено через 10 минут
чего-то у меня не паролится, не логинится
????
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Sub Открыть_************_com_ввод_логина_пароля()
 
    Dim IE As Object
    Set IE = CreateObject("InternetExplorer.Application")
 
    IE.navigate "http://************.com"
 
    Do While IE.Busy
        DoEvents
    Loop
 
    IE.Document.all("login").Value = "Text1Text"
    IE.Document.all("password").Value = "Text2Text"
 
    'открывает, делает видимым InternetExplorer
    IE.Visible = True
    
    'установка объекта в значение Nothing требуется для освобождения памяти, которая была выделена для создания этого объекта
    Set IE = Nothing
 
End Sub
0
-Storm-
1 / 1 / 0
Регистрация: 28.01.2011
Сообщений: 31
14.08.2011, 21:14  [ТС] 14
Цитата Сообщение от Ципихович Эндрю Посмотреть сообщение
спасибо

Добавлено через 10 минут
чего-то у меня не паролится, не логинится
????
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Sub Открыть_************_com_ввод_логина_пароля()
 
    Dim IE As Object
    Set IE = CreateObject("InternetExplorer.Application")
 
    IE.navigate "http://************.com"
 
    Do While IE.Busy
        DoEvents
    Loop
 
    IE.Document.all("login").Value = "Text1Text"
    IE.Document.all("password").Value = "Text2Text"
 
    'открывает, делает видимым InternetExplorer
    IE.Visible = True
    
    'установка объекта в значение Nothing требуется для освобождения памяти, которая была выделена для создания этого объекта
    Set IE = Nothing
 
End Sub
Может потому что я делал через встроенный в форму браузер, а ты через открытие отдельного окна експлорера?
0
Ципихович Эндрю
1411 / 321 / 28
Регистрация: 10.04.2009
Сообщений: 5,040
14.08.2011, 21:19 15
помоему если просто открыть вручную , то нету там двух полей для ввода нужного
0
-Storm-
1 / 1 / 0
Регистрация: 28.01.2011
Сообщений: 31
14.08.2011, 21:25  [ТС] 16
Цитата Сообщение от Ципихович Эндрю Посмотреть сообщение
помоему если просто открыть вручную , то нету там двух полей для ввода нужного
в правом верхнем углу есть надпись войти - наведи на нее появится окошко.
1
Ципихович Эндрю
1411 / 321 / 28
Регистрация: 10.04.2009
Сообщений: 5,040
14.08.2011, 21:32 17
понял

Добавлено через 4 минуты
в коде HTML этой страницы есть - </a><input class="button" type="submit" value="Войти" />
Усекаете???
Мне просто особо некогда, отпишитесь потом, ОК??
0
-Storm-
1 / 1 / 0
Регистрация: 28.01.2011
Сообщений: 31
14.08.2011, 21:35  [ТС] 18
Цитата Сообщение от Ципихович Эндрю Посмотреть сообщение
понял

Добавлено через 4 минуты
в коде HTML этой страницы есть - </a><input class="button" type="submit" value="Войти" />
Усекаете???
Мне просто особо некогда, отпишитесь потом, ОК??
я незнаю как ее нажать

WebBrowser1.Document.All("submit").Click не помогает
0
Ципихович Эндрю
1411 / 321 / 28
Регистрация: 10.04.2009
Сообщений: 5,040
14.08.2011, 21:37 19
я же Вам выложил код там ао аналогии надо сделать, перебор, в цикле идём, идём и клик
0
14.08.2011, 21:37
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.08.2011, 21:37

Как установить пароль для входа в программу
Вот как можно сделать типо &quot;Запароленную&quot; программу... Открыл прогу, а она...

Как записать звук из входа звуковой карты в wav-файл?
Необходимо записать звук из входа звуковой карты в wav-файл. Заранее благодарен...

Можно ли передавать параметры входа в программу без user interface, т.е. в sub Main()?
Mozno li peredavat parametri vhoda v programmu bez uzer interface, t.e. v sub...


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

Или воспользуйтесь поиском по форуму:
19
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru