使用Nunit的AutoIt脚本

时间:2016-09-11 12:30:31

标签: c# selenium autoit

通过Visual Studio(Selenium-C#)运行我的脚本时,用于打开对话框的AutoIt脚本运行正常,但是当从Nunit(.Net)客户端运行相同的脚本时,相同的测试无法获得以下错误:



ReportAppeal.MainTestRunner.OpenFile("Email"):
System.Runtime.InteropServices.COMException : Retrieving the COM class factory for component with CLSID {1A671297-FA74-4422-80FA-6C5D8CE4DE04} failed due to the following error: 80040154 Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)).




我做错了什么?

1 个答案:

答案 0 :(得分:2)

好的解决方案是:

  1. 打开regedit * 32(c:\ windows \ syswow64 \ regedit)
  2. HKEY_CLASSES_ROOT\AppID中搜索AutoItX 我在HKEY_CLASSES_ROOT\AppID{6E8109C4-F369-415D-AF9A-2AEEFF313234}
  3. 中找到了它
  4. 创建一个名为REG_SZ
  5. 的空DllSurrogate(字符串)条目

    出于某种原因,这完全解决了这个问题。 适用于Windows 7 - 64位

    参考:
    How to use a 32 bit COM object on Windows Server 2008 (works on 2008 R2 but non 2008)