Проблема приложения Watin + HttpWatch после обновления Windows?

У нас есть приложение, использующее Watin а также HttpWatch, чтобы проверить некоторые производственные площадки. Мы регулярно проверяем время отклика наших приложений и используем это приложение для этого.

Мы открываем экземпляр IE и после установки некоторых конфигов присоединяем этот экземпляр с помощью HttpWatch плагин. Приложение отлично работает в Windows Server 2003.

Но мы получаем следующую ошибку при запуске этого приложения в Windows Server 2008.

Невозможно привести объект COM типа "HttpWatch.ControllerClass" к типу интерфейса "HttpWatch.IController". Эта операция завершилась неудачно, поскольку вызов QueryInterface для компонента COM для интерфейса с IID '{21828BF3-DA77-4FC1-968E-FC7A46AEC19A}' завершился неудачно из-за следующей ошибки: такой интерфейс не поддерживается (Исключение из HRESULT: 0x80004002 (E_NOINTERFACE)),

Мы перепробовали много вещей, но не смогли решить эту проблему. Кроме того, мы поместили последние DLL для Interop.HttpWatch.dll а также Interop.SHDocVw.dll для требуемой версии Windows Server 2008, как мы узнали об этом по ссылке.

2 ответа

Решение

Проверьте, является ли это ошибкой из-за перехода 2003 -> 2008 или 32 бита -> 64 бита.

У меня есть подобные ошибки с COM - и в некоторых случаях приходится менять компиляцию на 32-битную.

Я наконец исправил эту проблему.

Проблема, которая возникала следующим образом:

Проект был построен для целевой версии - любой процессор

В проекте использовался InternetExplorer Class of Watin, и IE для нашей машины имеет целевую версию x86, а моя машина x64. (Windows Server 2008 R2)

Поэтому, когда приложение пыталось присоединить конкретный рабочий процесс x64 к экземпляру IE x86, оно выдавало вышеуказанную ошибку.

Я перестроил проект для платформы x86, и теперь приложение работает отлично.

Если у вас возникла та же проблема, попробуйте сделать это следующим образом. Дайте мне знать, если это поможет!

С Уважением,

Варун Шрингарпур

Другие вопросы по тегам