Что нового

Ввод логина и пароля на сайте ucoz.ru

bulldog5293

Знающий
Сообщения
172
Репутация
10
Долго с этим мучился сам но так не чего и не понял. Вот есть скрипт

Код:
#include <GUIConstants.au3>

Opt("SendCapslockMode", 1)
$file = FileOpen ("test.ini", 1)

$h_x = GUICreate("Tesе", 150, 200, -1, -1)
GUISetState (@SW_SHOW)
GUICtrlCreateLabel ("Имя", 80, 35, 50)    ; first cell 50 width
GUICtrlCreateLabel ("Пароль",  80, 75, 50)   ; next line
$answer = GUICtrlCreateInput("", 4, 35, 62, 20)
$passwd = GUICtrlCreateInput("", 4, 68, 62, 23)
GUICtrlCreateButton("Старт", 4, 120, 62, 29)
GUICtrlCreateButton("стоп", 4, 150, 62, 29)

FileWriteLine($file, "[wmr.web-stil.info]")
FileWrite($file, "Login=")
$h1 = FileWriteLine($file, $answer)
StringIsAlNum ($h1)
FileWrite($file, "Password=")
FileWriteLine($file, $passwd)

FileClose($file)

While 1
    $msg = GUIGetMsg()
    
    If $msg = $GUI_EVENT_CLOSE Then ExitLoop
Wend


Как сделать так что бы он допустим обращался на сайт www.nemovera2.ucoz.ru и вводил данные которые в него вписываеш т.е. логин и пароль. Заранее спасибо
 

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,724
И с чем именно ты здесь так долго мучился?
 

joiner

Модератор
Локальный модератор
Сообщения
3,556
Репутация
628
Автор
B

bulldog5293

Знающий
Сообщения
172
Репутация
10
Спасибо за наводку но тока, сайт www.nemovera2.ucoz.ru я приводил в пример. Мне нужно что бы окно IE не открывалась, а отправка происходила через Socket, тоесть работа велась только из самой программы, но с записью coockis. Если не трудно то с примером, а то AutoIT не давно учить начал
 
Автор
B

bulldog5293

Знающий
Сообщения
172
Репутация
10
Код:
:wall_brake:На http://forum.ru-board.com/topic.cgi?forum=5&topic=29240&start=60 нашёл скрипт по работе с сокетами, но я его не понял. Мог бы кто нить объяснить его на примере www.nemovera2.ucoz.ru, но только с отправкой данных mail, password, т.к. уже спрашивал, а мне дали функцию по IE, хотя мне нужна работа от самой программы. Вот скрипт:

Код:
;Скрипт приема данных: 
 
TCPStartup() 
 
$IP = "127.0.0.1" 
$port = 33891 
 
$socket = TCPListen($IP, $port) 
If @error Then Exit 
 
$Connect = -1 
 
;Ждём подключения клиента, что бы разрешить ему отправлять данные на сокет 
Do 
    $Connect = TCPAccept($socket) 
Until $Connect <> -1 
 
While 1 
    $dannie = TCPRecv($Connect, 2048) 
    If @error Then ExitLoop 
 
    If $dannie <> "" Then 
        MsgBox(0, "DANNIE", $dannie) 
        ExitLoop 
    EndIf 
 
    Sleep(30) 
WEnd 
 
TCPCloseSocket($socket) 
TCPShutdown()
;Скрипт отправки данных: 
 
TCPStartup() 
 
$IP = "127.0.0.1" 
$port = 33891 
 
$socket = TCPConnect($IP, $port) 
 
$rez = TCPSend($socket, "dannie") 
 
Sleep(2000) 
TCPCloseSocket($socket) 
TCPShutdown()


И ещё вопрос как зделать что бы он заходил на сайт с определённым адресом который можно было бы сомому вводить в таком скрипте:

Код:
;#include <GUIConstants.au3>

$file = FileOpen("test.ini", 1)
GUICreate("NAC", 100, 150, -1, -1) 
GUISetState (@SW_SHOW)

GUICtrlCreateLabel("Mail", 4, 22, 62, 20)
$answer = GUICtrlCreateInput("", 4, 35, 62, 20)
GUICtrlCreateLabel ("Password", 4, 55,62,20)
$passwd = GUICtrlCreateInput("", 4, 68, 62, 23)

$var = StringAddCR($answer)
$var1 = StringAddCR($passwd)
FileWriteLine($file, "[test]")
FileWriteLine($file, $var)
FileWriteLine($file, $var1)

While 1
    $msg = GUIGetMsg()
    
    If $msg = $GUI_EVENT_CLOSE Then ExitLoop
Wend


И ещё, если можно то с кометариями на русском
 
Автор
B

bulldog5293

Знающий
Сообщения
172
Репутация
10
А что я не правильно оформил то? Вроде написал что я не понял и к к какой оболочке он мне нужен, тем более здесь постят новички, по другому задать просто уже не знаю как. И тем более я не прошу написать за меня, просто объяснить что к чему и как их соединить помощи прошу


Добавлено:
Сообщение автоматически объединено:

:Virus:Хоть подскажите какие функции курить, не нада примеров сам тогда разбераться буду :wall_brake:, тока функции скажите :Comp_Addict:
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4,020
Репутация
626
bulldog5293
Отбрось все примеры, они не предназначены под твои нужды. Первый это всего лишь хранилка паролей в одним ini-файле, второй некое подобие клиент-серверной архитектуры. Тебе нужно всего лишь открыть страницу, найти нужные поля, внести туда данные и засабмитить. Это все делается средствами функций из IE.au3, вот их и кури. Сейчас тоже посмотрю, м.б. чем смогу помочь
PS: там функций немного, поэтому кури все. всегда пригодятся ;)


Добавлено:
Сообщение автоматически объединено:

bulldog5293
ничего, что тот сайт что ты дал кишит всякой фигней типа открывалок порно-сайтов? :shooting1:
 
Автор
B

bulldog5293

Знающий
Сообщения
172
Репутация
10
Вобще сайт можно поставить любой, эта на суть дела не влияет, я не раз уже натыкался на примеры с открытием IE, но мне не это нада, просто знакомый на Delphi написал программу которая не открывает окон, а работает строга через порты, он это назвал Post Get, а на AutoIT я так и не могу понять как это реализовать. А функции покурю в тихушку, но не думаю что они мне помогут с моим вопросом.
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4,020
Репутация
626
bulldog5293
окна открывать необязательно. это все можно делать в тихом режиме. но IE все же будет задействован.
 
Автор
B

bulldog5293

Знающий
Сообщения
172
Репутация
10
Нашёл тут код на одном форуме, но до канца не понял, он как раз и совершает тихий режим код вот
Код:
#include <IE.au3>
;=======авторизация=====================
$new_wind = _IECreate("http://vkontakte.ru/index.php")
_IELoadWaitTimeout(60000 * 2)
$oForm = _IEFormGetObjByName($new_wind, "login")
$login = _IEFormElementGetObjByName($oForm, "email")
$pass = _IEFormElementGetObjByName($oForm, "pass")
_IEFormElementSetValue($login, "[email protected]")
_IEFormElementSetValue($pass, "R255G0B0H0S100V100")
_IEFormSubmit($oForm)
_IELoadWaitTimeout(60000 * 2)
;===============================================
;======Кого добавляем=========================
_IENavigate($new_wind, "http://vkontakte.ru/id1458553?94229")
_IELoadWaitTimeout(60000 * 2)
_IELinkClickByText($new_wind, "Добавить в друзья")
If @error <> 7 Then
    Sleep(3000)
    If _IELinkClickByText($new_wind, "Добавить личное сообщение") <> 7 Then
        $message = _IEGetObjByName($new_wind, "message")
        _IEPropertySet($message, "innertext", "Так просто текст")
        Sleep(3000)
        $submit = _IEGetObjById($new_wind, 'button0_2')
        _IEAction($submit, 'click')
        If @error Then MsgBox(16, @error, @extended)

    EndIf
EndIf
_IELoadWaitTimeout(60000 * 2)


Но у меня не получается подцеиденить свой GUI
Код:
#include <GUIConstants.au3>
#include <IE.au3>
;
$file = FileOpen("test.ini", 1)
GUICreate("NAC", 170, 150, -1, -1) 
GUISetState (@SW_SHOW)

GUICtrlCreateLabel("Login", 4, 22, 62, 20)
$answer = GUICtrlCreateInput("", 4, 35, 62, 20)
GUICtrlCreateLabel ("Password", 4, 55, 62, 20)
$passwd = GUICtrlCreateInput("", 4, 68, 62, 23)
GUICtrlCreateLabel ("Ввидите адрес без http:// и /", 4, 91, 92, 90)
$oIE = GUICtrlCreateInput("", 4, 104, 62, 23)


$var = StringAddCR($answer)
$var1 = StringAddCR($passwd)
$oIE = StringAddCR($oIE)
FileWriteLine($file, "[test]")
FileWriteLine($file, $var)
FileWriteLine($file, $var1)
FileWriteLine($file, $oIE)

$oIE = _IECreate ("http://",0,0)
$oForm   = _IEFormGetCollection($oIE,1)
If @error Then
	_IEQuit($oIE)
	MsgBox(0,"Отчет","Соединение не возможно")
	Exit
	Else
$oLogin  = _IEFormElementGetObjByName($oForm,"vb_login_username")
$oPass   = _IEFormElementGetObjByName($oForm,"vb_login_password")
_IEFormElementSetValue($oLogin,"имя")
_IEFormElementSetValue($oPass,"Пароль")
_IEFormSubmit($oForm,1)
_IELoadWait($oIE,10000)
$oMessage = _IEFormGetCollection($oIE,3)
$oText  = _IEFormElementGetObjByName($oMessage,"message"); эта страка я как понял мне не нужна
_IEFormElementSetValue($oText,"Сообщение")
_IEFormSubmit($oMessage,1)
_IEQuit($oIE)
MsgBox(0,"Отчет","Вы соеденины")
EndIf

While 1
    $msg = GUIGetMsg()
    
    If $msg = $GUI_EVENT_CLOSE Then ExitLoop
Wend

Теперь мне подскажите как его прикрутить?
 
Верх