SetWindowPos не работает на Windows Server 2003? - PullRequest
0 голосов
/ 09 июля 2010

У меня есть старое приложение VB6, которое я недавно добавил SetWindowPos в приложение, чтобы держать его на вершине. Длинная история почему, но клиент запросил это.

На «обычных» машинах Windows (2000, XP) окно остается верхним, а на сервере - нет. У кого-нибудь есть идеи почему? Существуют ли какие-либо настройки безопасности, исправления и т. Д., Которые отключили вызов этого на серверах или операционных системах? Я гуглил это, а также искал StackOverflow, но ничего не нашел.

Спасибо ...

1 Ответ

0 голосов
/ 09 июля 2010

В документации API есть два совета для SetWindowPos .

  • "Чтобы использовать SetWindowPos для переноса окна наверх, процесс, которому принадлежит окно, должен иметь разрешение SetForegroundWindow." См. здесь для обсуждения этих правил.
  • «В рамках реструктуризации Vista все сервисы были перемещены с интерактивного рабочего стола в сессию 0. Операции hWnd и оконного менеджера эффективны только внутри сессии», - но, вероятно, это приложение не является сервисом.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...