Я видел this question, но я надеялся избежать использования CreateProcessAsUser
. Я могу перечислять окна, вызывая EnumDesktopWindows
, и я могу получить рабочие столы, позвонив EnumDesktops
. К сожалению, EnumDesktops
требует названия оконной станции, а WTSQuerySessionInformation
с WTSWinStationName
explicitly does not возвращает имя станции.Как перечислить открытые окна в другом сеансе из службы?
Итак, я догадываюсь, что мой вопрос: как мне достать станцию Window для сеанса WTS?
Прошло некоторое время, но я, кажется, помню, что это всегда возвращает «WinSta0». Как узнать окна станций * для определенного сеанса *? Или: как передать сеанс * в EnumDesktops? –
Вы можете запустить процесс в течение определенного сеанса, а затем использовать этот API. –
«... но я надеялся избежать использования CreateProcessAsUser ...». К сожалению, именно это я и сделал. –