2016-06-20 1 views
-1

Я хочу вытащить Окно в другое. Поэтому я использую python с pywin32.setWindowLong, не удается удалить WS_POPUP с разными пользователями

Я хочу удалить с помощью setWindowLong стиль WS_POPUP.

Это прекрасно работает, когда пользователь loggedin и связанные с ним процессы одинаковы.

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

Спасибо за сообщение.

ответ

0

Документация SetWindowLongPtr содержит следующую секцию на HWND аргумент:

Функция SetWindowLongPtr терпит неудачу, если процесс, который имеет окно, заданное параметром HWND находится на более высоком процессе привилегий в UIPI иерархия, чем процесс вызывающего поток пребывает в.

Если вызов завершается с ошибкой доступа, то вы звоните из процесса с более низкий уровень целостности, чем целевой процесс.

Решение обходить этот брандмауэр отсутствует, хотя запрос UIAccess через манифест приложения может работать (см. Security Considerations for Assistive Technologies). Это предназначено для приложений вспомогательных технологий и не должно злоупотреблять программным обеспечением, которое не является.


Bonus чтение: Is it legal to have a cross-process parent/child or owner/owned window relationship?

+0

Благодаря IInspectable, –

+0

Но это не проблема, оба процесса имеют уровень целостности High, это означает, что обе работают, как администратор. Я также предоставил зарегистрированные права администратора для пользователей (но только для тестирования). –

+0

@held_a: Предоставление зарегистрированных пользовательских прав администратора не автоматически переносит их на процессы, запущенные под этой учетной записью. По умолчанию процессы по-прежнему запускаются с использованием минимального требования (используйте [Process Explorer] (https://technet.microsoft.com/en-us/sysinternals/processexplorer.aspx), чтобы увидеть фактический уровень целостности). Если вам нужно, чтобы ваше приложение запускалось с правами администратора, вам необходимо запросить их (например, через [информацию UAC в манифесте] (https://msdn.microsoft.com/en-us/library/bb384691.aspx)). – IInspectable

Смежные вопросы