Vb.net VB调用的对象已与其客户端断开连接
我有一个与internet explorer交互的控制台应用程序,可以做一些事情 基本上,该应用程序在VS 2015 professional的调试/发布模式下运行完全正常 在调试或发布模式下以exe形式发布后,我得到了您在文章标题中看到的错误 有人有这种经历吗 提前谢谢你 我还想补充一点,当程序发布后第一次启动时,它可以工作,它使用我在另一个项目中创建的类库中的.dll。它得到internet explorer,使其可见,然后失败Vb.net VB调用的对象已与其客户端断开连接,vb.net,visual-studio,comexception,Vb.net,Visual Studio,Comexception,我有一个与internet explorer交互的控制台应用程序,可以做一些事情 基本上,该应用程序在VS 2015 professional的调试/发布模式下运行完全正常 在调试或发布模式下以exe形式发布后,我得到了您在文章标题中看到的错误 有人有这种经历吗 提前谢谢你 我还想补充一点,当程序发布后第一次启动时,它可以工作,它使用我在另一个项目中创建的类库中的.dll。它得到internet explorer,使其可见,然后失败 Public Shared Function func_
Public Shared Function func_getIe(strIntialUrl As String) As InternetExplorer
Dim ie As InternetExplorer
ie = New InternetExplorer
ie.Visible = True
ie.Navigate(strIntialUrl)
While ie.ReadyState <> 4
End While
Return ie
End Function
作为InternetExplorer的公共共享函数func_getIe(strientialURL作为字符串)
Dim ie作为InternetExplorer
ie=新的InternetExplorer
可见=真实
ie.Navigate(strientialURL)
而ie.ReadyState 4
结束时
返回ie
端函数
除了Main()开头的一些变量声明之外,这是.dll的一部分的代码,这几乎是第一件事。嘿,伙计们找到了一个很好的答案 如果链接断开,下面是他们所说的操作:
System.Runtime.InteropServices.COMException : “The object invoked has disconnected from its clients. (Exception from HRESULT: 0x80010108 (RPC_E_DISCONNECTED))"
堆栈跟踪:
在SHDocVw.InternetExplorerClass.set_可见(布尔pBool)
在ProtectedModePOC.Form1.button1\单击D:\ProtectedModePOC\Form1.cs:第38行中的(对象发送方,事件参数e)
保护模式设置:关闭Internet和打开Intranet
例外情况:
System.Runtime.InteropServices.COMException : “The interface is unknown. (Exception from HRESULT: 0x800706B5)”
堆栈跟踪:
在SHDocVw.InternetExplorerClass.set_可见(布尔pBool)
在ProtectedModePOC.Form1.button1\单击D:\ProtectedModePOC\Form1.cs:第38行中的(对象发送方,事件参数e)
我在将InternetExplorer对象的Visible属性设置为true时遇到此异常。只有在尝试导航到Internet和Intranet区域的受保护模式设置不同的Intranet应用程序时,才会出现这种情况。如果Internet和Intranet区域的保护模式都保持打开或关闭(两个区域的保护模式保持相同),则问题消失
如果关闭UAC(用户访问控制),即使Internet和Intranet区域的保护模式设置不同,也不会发生异常
回答:转到IE选项,在intranet和internet的安全下,启用或禁用保护模式需要匹配
在我的例子中,我们的管理员强制internet受到保护,所以我也必须处于intranet的保护模式
虽然我不能说我完全理解它的工作原理,但我可以说,在尝试导航到内部网之前,我没有遇到任何问题。因此,这可以解释异常的“断开连接”部分
希望这对别人有帮助