Что нового

Отдельная авторизация в каждой вкладке.

MrGep

Новичок
Сообщения
74
Репутация
1
Всем добрый день! Вопрос - У меня имеется приложение, авторизация в браузерной игре ( http://www.voyna-plemyon.ru/ )
Через GUICtrlCreateTabItem создал пару вкладок, в этих вкладках окна _IECreateEmbedded. По отдельности аккаунты авторизуются нормально, к каждому окну свой логин - пароль. Проблема в следующем - при авторизации во второй вкладке, первая тоже заходит под логином второй. Как это поправить?


Код:
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <IE.au3>
#Include <Encoding.au3>
#Include <Array.au3>
#include <GUIConstantsEx.au3>
#include <GuiButton.au3>
#include <GuiComboBox.au3>
#include <MsgBoxConstants.au3>
#include <Timers.au3>

$Login1 = "Простак"
$Password1 = "06111976"
$Login2 = "Кoсой"
$Password2 = "777777"

Opt("GUIResizeMode", $GUI_DOCKBOTTOM)
$hForm = GUICreate ("VP_06", 840,660, 20,20, $WS_SIZEBOX)
Local $oIE = _IECreateEmbedded()
GUISetState()
$Tab = GUICtrlCreateTab(10, 10, 820,530,$GUI_DOCKRIGHT)

GUICtrlCreateTabItem("Login_1")
GUICtrlCreateObj($oIE, 11,31, 820, 510,$GUI_DOCKRIGHT)
GUICtrlCreateTabItem("")


$Tab1 = GUICtrlCreateTabItem("Test")
Local $oIE1 = _IECreateEmbedded()
GUISetState()
GUICtrlCreateObj($oIE1, 11, 31, 820, 510)
GUICtrlCreateTabItem("")

GUISetState(@SW_SHOW)


_IENavigate ($oIE,"http://www.voyna-plemyon.ru/game.php")
_IELoadWait($oIE)
$oForm = _IEFormGetCollection($oIE, 0)
            $oPassword = _IEFormElementGetObjByName($oForm,"password")
            $oLogin  = _IEFormElementGetObjByName($oForm,"user")
            $oCheck = _IEGetObjById($oForm, "login_submit_button")
            _IEFormElementSetValue($oLogin, $Login1)
            _IEFormElementSetValue($oPassword, $Password1)
            _IEAction($oCheck, 'click')
            Sleep(250)
            $oLink = _IELinkGetCollection($oIE, 68)
		 _IEAction($oLink,'click')
_IELoadWait($oIE)

_IENavigate ($oIE1,"http://www.voyna-plemyon.ru/game.php")
_IELoadWait($oIE1)
$oForm1 = _IEFormGetCollection($oIE1, 0)
            $oPassword1 = _IEFormElementGetObjByName($oForm1,"password")
            $oLogin1  = _IEFormElementGetObjByName($oForm1,"user")
            $oCheck1 = _IEGetObjById($oForm1, "login_submit_button")
            _IEFormElementSetValue($oLogin1, $Login2)
            _IEFormElementSetValue($oPassword1, $Password2)
            _IEAction($oCheck1, 'click')
            Sleep(250)
            $oLink1 = _IELinkGetCollection($oIE1, 68)
		 _IEAction($oLink1,'click')
_IELoadWait($oIE1)



While 1
   Switch GUIGetMsg()
   case $GUI_event_close
	  ExitLoop
   EndSwitch
   WEnd
	  GUIDelete()
Exit




Примечание: Всем заранее спасибо, если что не так - исправлю.
 

winstan

Эксплотатор)
Сообщения
406
Репутация
79
К сожелению не как т.к. у всех вкладок браузера одна память на куки, если только ты не создашь анонимную вкладку, но такой функции в IE я не видел
 

Z_Lenar

Продвинутый
Сообщения
209
Репутация
52
Пробовали запустить свою программу от имени разных пользователей. Не уверен, конечно, но возможно поможет.
 
Автор
M

MrGep

Новичок
Сообщения
74
Репутация
1
Немного не понял, как это - от разных пользователей?
 

Z_Lenar

Продвинутый
Сообщения
209
Репутация
52
MrGep
Создаете несколько учетных записей пользователей в Windows. Потом правая кнопка мыши на программе->запуск от имени... Вроде так.


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

Еще вариант создавать каждый процесс\окно iexplore с ключом -private.
 
Автор
M

MrGep

Новичок
Сообщения
74
Репутация
1
У меня обе вкладки в одной программе. Не получится
 

VasyaPup

Новичок
Сообщения
1
Репутация
0
а если таким образом открыть просто несколько браузеров, в не вкладок ? посредством выбора пользователя учётной записи ...
 
Верх