Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Не удалось получить дескриптор окна, элементы управления ActiveX без окон не поддерживаются?

Автор вопроса: jasonhОтветов: 2

Я обновил свою машину для разработки до Windows 7, а свой проект до .NET 3.5. Когда я пытаюсь запустить проект, я получаю эту ошибку:

Unable to get the window handle for the 'AxVt' control. Windowless ActiveX controls are not supported.

В проекте используется эмуляция Dart для элемента управления ActiveX Vt, который эмулирует элемент управления терминалом. Я перепроверил, и программа отлично запускается под Windows XP SP2 с .NET 3.5, так что проблема не в фреймворке. Установка режима совместимости с Windows XP SP2 тоже не помогает. Это исключение возникает, когда код конструктора вызывает EndInit для элемента управления.

Есть ли способ обойти это, или это просто означает, что мне нужно удалить Windows 7 с моей машины и вернуться к Windows XP?

  • У меня такое случалось с объектами из компонентов ESRI ArcGIS Engine. Единственное, что помогло это исправить, это создать совершенно новый проект и снова добавить все вручную (что, конечно, просто означает, что я так и не смог понять, что вызвало проблему, но мог ее обойти). Michael Todd 13.06.2009
  • Я попробовал это, добавив только элемент управления Dart Vt и запустив его, и я получил ту же ошибку. jasonh 13.06.2009

interopactivexwindows-7

Ответы

Ответ 1 · рейтинг 1 · No hay Problema

Попробуйте отключить DEP, просто чтобы посмотреть, не в этом ли проблема, у меня уже была такая, проверьте здесь: http://blogs.msdn.com/ed_maurer/archive/2007/12/14/nxcompat-and-the-c-compiler.aspx для выясни как.

Ваше здоровье

Ответ 2 · рейтинг 2 · John Fisher

Вполне вероятно, что используемый вами сторонний элемент управления (пока) не работает с Windows 7, поскольку он все еще находится в стадии бета-тестирования. Вы сверялись с производителем?

Большая часть программного обеспечения, реализованного поверх COM и Windows API, скорее всего, столкнется с трудностями при переключении между версиями Windows, особенно версиями, которых не существовало на момент написания программного обеспечения. Надеемся, что со временем компания, производящая продукт, предложит вам исправление или обновление.

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы