您的位置:首页 > 编程语言 > VB

[VB.NET]AxWebBrowser超奇怪问题,发布到客户机获取不了AxWebBrowser1.Document

2008-12-29 22:37 519 查看



<script type="text/javascript"><!--
google_ad_client = "pub-8333940862668978";
/* 728x90, 创建于 08-11-30 */
google_ad_slot = "4485230109";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>

AxWebBrowser超奇怪问题,发布到客户机获取不了AxWebBrowser1.Document
很简单的代码,打开窗口后点击AxWebBrowser1中显示的网页中的内容,弹出点击的网页元素的text,在装了.net开发环境的机器上都能弹出msgbox,但是在客户没装.net开发环境的机器上能显示网页点击却弹不出msgbox,客户机器已经装了.net framework,然后我在客户机器上装了.net 2003就行了,卸载了又不行了,总不能让每个客户机器装.net 2003吧,恳求高手给出解决方案,代码如下:
Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.AxWebBrowser1.Navigate( http://10.11.11.1/ )
End Sub

Private Sub AxWebBrowser1_NavigateComplete2(ByVal sender As Object, ByVal e As AxSHDocVw.DWebBrowserEvents2_NavigateComplete2Event) Handles AxWebBrowser1.NavigateComplete2
must wait for this event to grab a valid refernece to the Document
property
MessageBox.Show( add event )
Dim doc As mshtml.HTMLDocument = DirectCast(AxWebBrowser1.Document, _
mshtml.HTMLDocument)

Cast to the interface that defines the event you re interested in
Dim docevents As mshtml.HTMLDocumentEvents2_Event = DirectCast(doc, _
mshtml.HTMLDocumentEvents2_Event)
Define a handler to the onclick event
AddHandler docevents.onclick, AddressOf onclickproc
End Sub

Private Function onclickproc(ByVal obj As mshtml.IHTMLEventObj) As Boolean
an object on the page has been clicked - you can learn more about
type and position of this object by querying the obj s properties
...
Dim name As String
name = obj.srcElement.innerText
MessageBox.Show(name)
End Function
__________________________________________________________________________
你的安装程序没有安装mshtml到GAC吧
__________________________________________________________________________
怎么安装mshtml到GAC?是在编译的时候选吗?我编译好之后有一个除了exe文件外又复制了AxInterop.SHDocVw.dll和Interop.SHDocVw.dll
__________________________________________________________________________
用webbrowser就行了, 不要用AxWebBrowser
__________________________________________________________________________
我用的2005
__________________________________________________________________________
我用的是.net 2003,在com组件中选择的ms webbrowser放到界面上就是AxWebBrowser,怎么办呢?哪里有webbrowser呢?
__________________________________________________________________________
Check your {program files}/Microsoft.NET/Primary Interop Assemblies directory - there should be a 8+ MB large file Microsoft.mshtml.dll, which you ll also need to install onto the application directory in order for MSHTML stuff to work.
__________________________________________________________________________
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息