Почему "Отказано в доступе" ?

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Крост
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 291
Зарегистрирован: 30.01.2005 (Вс) 6:06
Откуда: Питер

Почему "Отказано в доступе" ?

Сообщение Крост » 22.02.2005 (Вт) 15:03

Привет, у меня вопрос относительно WebBrowser.
Есть две формы, на них есть компонент WebBrowser.

На второй форме, компоненту WB, загружаю документ с JS скриптом, его документу устанавливаю "opener" первого окна (WB). При попытке вызвать из второго окна JS скрипт (он выполняет переход opener'a на другую страницу), выдаётся ошибка "Отказано в доступе".. Как решить, чего делать?

Вот исходник (Подключены две библиотеки MS Internet Control и MS HTML Object Library):

Форма 1:

Код: Выделить всё
Public HD As HTMLDocument
Option Explicit

Private Sub Form_Load()
WebBrowser1.Navigate "about:blank"
End Sub

Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant)
Set HD = WebBrowser1.Document

Form2.Show
End Sub


Форма 2:

Код: Выделить всё
Dim HD As HTMLDocument
Option Explicit

Private Sub Form_Load()
WebBrowser1.Navigate "c:\1.html"
End Sub


Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant)
Set HD = WebBrowser1.Document
HD.parentWindow.opener = Form1.HD.parentWindow
End Sub



Код HTML-Страницы:

Код: Выделить всё
<script>
function ol(loc) {
opener.document.location=loc
}
</script>
<a href="javascript:ol('about:blank')">Opener</a>


С уважением Андрей.

Konst_One
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
Аватара пользователя
 
Сообщения: 3041
Зарегистрирован: 09.04.2004 (Пт) 13:47
Откуда: Химки

Сообщение Konst_One » 22.02.2005 (Вт) 15:27

для WebBrowser это не пройдет, только для созданного объекта InternetExplorer из библиотеки MSHTML

Крост
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 291
Зарегистрирован: 30.01.2005 (Вс) 6:06
Откуда: Питер

Сообщение Крост » 22.02.2005 (Вт) 15:31

А можно код?
А то я пробую, не получается, тоже самое... =(
Может не то пишу..

Кстати, объект IE в библиотеке MS Internet Controls.

FaKk2
El rebelde gur&#250;
El rebelde gur&#250;
Аватара пользователя
 
Сообщения: 2031
Зарегистрирован: 09.03.2003 (Вс) 22:10
Откуда: Los Angeles

Сообщение FaKk2 » 07.03.2005 (Пн) 19:46

MSDN писал(а):In Internet Explorer 6 or later, you can navigate through code only within the same domain as the application hosting the WebBrowser control. Otherwise, this method is disabled.
Для получения ответа надо продемонстрировать качества, позволяющие стать компетентным — внимательность, вдумчивость, наблюдательность, желание активно участвовать в выработке решения.


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 157

    TopList