我正在尝试使用Azure上托管的Web应用中的WatiN库自动化Internet Explorer。我在尝试创建IE实例时遇到以下异常:
System.Runtime.InteropServices.COMException(0x80080005):正在检索 具有CLSID的组件的COM类工厂 {0002DF01-0000-0000-C000-000000000046}由于以下原因而失败 错误:80080005服务器执行失败(来自HRESULT的异常: 0x80080005(CO_E_SERVER_EXEC_FAILURE))
首先,是否可以在Azure上托管的Web应用程序中自动化IE? (无论如何,我知道这样做是个坏主意)以及如果可能的话如何解决这个异常。
更新:在得到此异常之前,我得到另一个说没有找到Interop.SHDocVw.dll。我将Imbed Interop Types属性设置为false,将Local Local设置为true,异常消失。
答案 0 :(得分:1)
您尝试实现的目标只能通过云服务(Web和工作者角色)或虚拟机实现。
Web应用程序(在App Service Plans上运行)不支持任何类型的COM交互。并且您的代码失败,因为它尝试与IE标准COM接口进行通信。