Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > VB .NET > AxWebBrowser - не предаёт сессии новому окну.


Автор: JaguarSmith 28.10.2005, 19:32
smile Доброе время суток!

Столкнулся с такой бедой - к меня есть веб-сайт на PHP с web-интерфейсом управления движком.
Я хотел дать доступ из своей программы к этому интерфейсу. Аутентификация там основана как мне обьяснил человек написавший этот движок на сеансах (навроде наших session). Дык вот чтоб отредактировать контент там открывается новое окно - если это происходит в IE или в Oper`е то все нормально а вот если оно открывается из AxWebBrowser то тогда всё сбивается. Очевидно что сессия непередаётся из AxWebBrowser в новное окно.

Я вижу три возможных решения:
1) найти способ передавать сессию.
2) каким-то образом перехватывать открытие нового окна -и принудительно открывать его в AxWebBrowser
3) каким-то образом получить доступ к контенту AxWebBrowser и изменять его на лету.

smile Но я даже близко не представляю себе как это сделать...

Зы. Поменять движок я не могу - во-перых я нифига не понимаю в ПХП а потом там чужая и довольно сложная программа - и мне не хотелось бы в неё вмешиваться. Да и не верю я что ничего нельзя сделать через VB. smile

Автор: Exception 28.10.2005, 20:35
дак там и менять-то нечего.. просто у всех линков измени атрибут target в значение self.
тойсть в коде ПХП ищи строку "<a". там будет запись типа
Код

<a href=blablabla target=ХХХ и т.д.>

Заменяй все ХХХ на "self" - в кавычках. тогда все окна будут открываться там же

Автор: JaguarSmith 28.10.2005, 21:34
Нее вы не поняли - я конечно жы могу тупо поменять HTML код(уж в нем то я разберусь), но мне надо стоя и в гамаке! smile

smile Просто, в следующий раз мне попадётся что-то к чему я не имею прямого доступа - и что я буду с этим делать?

Автор: Exception 28.10.2005, 21:45
тупо менять код в AxWebBrowser'е. Ищем в innerhtml таргеты и меняем их на "self". так как контрола щас посмотреть не могу, др. варианта не вижу :)
это будет нечто типа
Код

For each l as Link in axwebb.document.links
l.target = "self"
next

Автор: JaguarSmith 28.10.2005, 22:24
smile Во это именно то что я искал!!!

А что там есть помимо Links, а главное - где это можно посмотреть?

Просто если пишешь "AxWebBrowser1.document." там ничегошеньки кроме "get type" не видно smile

В любом случае большое спасибо!!! smile

Автор: Exception 29.10.2005, 15:07
ну... насколько я помню, Anchors, Links, ...
блин, все-таки не помню. Посмотри в MSDN
Цитата(JaguarSmith @ 28.10.2005, 23:24)
В любом случае большое спасибо!!!

Всегда рад помочь! Заходи еще smile
Цитата(JaguarSmith @ 28.10.2005, 23:24)
там ничегошеньки кроме "get type" не видно

угу. И приходится либо с Option Strict Off писать (это плохо), либо юзать InvokeMethod...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)