2

WebブラウザのWindow.Externalオブジェクトは常にnullです!

再現するには、新しいWinFormにWebブラウザーをドロップして、次のように入力します。

Option Strict Off

Public Class Form1
    Private Sub Form1_Load()
        Handles MyBase.LoadMe.WebBrowser1.Document.Window.DomWindow.External.AddFavorite("http://www.google.com")
    End Sub
End Class

必ず[アセンブリ情報]ダイアログに移動し、[アセンブリをCOM表示にする]をオンにしてください。これは必要です。

COMの表示可能なアセンブリでは、外部オブジェクトが常に何もない理由がわかりません。

4

2 に答える 2

6

ObjectForScriptingプロパティをホストウィンドウに設定しましたか?window.externalを機能させるには、これを行う必要があると思います。

于 2009-01-31T23:02:48.137 に答える
6

また、ObjectForScripting に設定したオブジェクトに次の属性があることを確認してください。

[PermissionSet(SecurityAction.Demand, Name = "FullTrust")]
[ComVisible(true)]

それがなければ、window.external は常に null でした。

于 2011-11-03T18:03:28.303 に答える