Есть ли способ через WMI или Powershell спросить каждого члена домена, какое разрешение на их рабочем столе? Мне нужно знать, но я не могу пойти и навестить каждого. Для бонусных баллов, как суммировать результаты и отображать только один уникальный результат для каждого разрешения? То есть вместо
это будет просто читать
Вы можете напрямую вытащить их разрешение экрана. Для себя и виртуальной машины, wmic путь Win32_VideoController получить VideoModeDescription работает нормально. (Я использую 64-битную версию, виртуальная машина - 32-битная)
Это и другие решения доступны Вот.
Изменить: неправильно понял, что они имели в виду под опросом
Также: комбинация обоих методов, предоставляющая пользователю разрешение экрана в качестве записи по умолчанию, но дающая ему возможность изменить его перед отправкой.
$screenres = wmic path Win32_VideoController get VideoModeDescription | findstr colors
[System.Reflection.Assembly]::LoadWithPartialName('Microsoft.VisualBasic') | Out-Null
$computer = [Microsoft.VisualBasic.Interaction]::InputBox("Hello, please enter your screen resolution. Thanks.", "Screen Resolution", "$screenres")
Он будет сохранен как $ computer. Переведите его в журнал на нейтральном сетевом ресурсе, если хотите или как хотите.
Сообщите мне, если что-то не сработает, вам нужно альтернативное решение или вам нужна доработка. Спасибо, что прочитали!
Похоже, вам нужно что-то вроде этого:
получить полные описания со всех ПК в AD
Get-ADcomputer -Filer * | Get-WmiObject -Class Win32_VideoController
и только список текущих разрешений
Get-ADcomputer -Filer * | (Get-WmiObject -Class Win32_VideoController).VideoModeDescription
Обновить Так что это сработает
$computerlist = Get-ADComputer -Filter * | Select -Expand Name
Get-WmiObject -Class Win32_VideoController -ComputerName $Computerlist