掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
WebBrowserでjavascriptのエラーを表示させないようにするには? (ID:141555)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
マネージ版 WebBrowser の場合、当方では下記で取得できました。 Public Class Form1 Private Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button1.Click Dim sUrl As String = "http://〜〜〜" 'エラーの出るサイト Me.WebBrowser1.Navigate(sUrl) End Sub Private rawWin As Object = Nothing Private WithEvents handler As New WBErrorHandler() Private Sub ReleaseWin() If rawWin IsNot Nothing Then CallByName(rawWin, "onerror", vbLet, DBNull.Value) System.Runtime.InteropServices.Marshal.ReleaseComObject(rawWin) rawWin = Nothing End If End Sub Private Sub WebBrowser1_DocumentCompleted(ByVal sender As System.Object, ByVal e As WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted ReleaseWin() rawWin = DirectCast(sender, WebBrowser).Document.Window.DomWindow CallByName(rawWin, "onerror", vbLet, handler) End Sub Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As FormClosingEventArgs) Handles Me.FormClosing ReleaseWin() handler = Nothing End Sub Private Sub handler_OnError(ByVal sender As Object, ByVal e As WBErrorHandler.WBErrorEventArgs) Handles handler.OnError Label1.Text = e.Description Label2.Text = e.Url Label3.Text = CStr(e.Line) '標準のエラー通知を呼び出すか否か e.Cancel = False End Sub End Class <System.Runtime.InteropServices.ComVisible(True)> _ Public Class WBErrorHandler Public Event OnError(ByVal sender As Object, ByVal e As WBErrorEventArgs) <System.Runtime.InteropServices.ComVisible(True)> _ <System.Runtime.InteropServices.DispId(0)> _ Public Function DefaultMethod(ByVal description As Object, ByVal url As Object, ByVal line As Object) As Object Dim e As New WBErrorEventArgs(description, url, line) RaiseEvent OnError(Me, e) Return e.Cancel End Function Public Class WBErrorEventArgs Inherits EventArgs Public Sub New(ByVal description As Object, ByVal url As Object, ByVal line As Object) _description = description _url = url _line = line _cancel = False End Sub Private _description As String Public ReadOnly Property Description() As String Get Return _description End Get End Property Private _url As String Public ReadOnly Property Url() As String Get Return _url End Get End Property Private _line As Integer Public ReadOnly Property Line() As Integer Get Return _line End Get End Property Private _cancel As Boolean Public Property Cancel() As Boolean Get Return _cancel End Get Set(ByVal value As Boolean) _cancel = value End Set End Property End Class End Class
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.