Filtro WMI de política de grupo para comprobar si la función de Windows está instalada

Filtro WMI de política de grupo para comprobar si la función de Windows está instalada

Lo siguiente devuelve verdadero para servidores sin la GUI del servidor instalada:

WMIC PATH Win32_OptionalFeature WHERE "Caption = 'Microsoft-Windows-Server-Gui-Shell-Package-DisplayName' AND InstallState = 2"

Sin embargo, mi intento de traducir esto a un filtro WMI...

SELECT * FROM Win32_OptionalFeature WHERE Caption = Microsoft-Windows-Server-Gui-Shell-Package-DisplayName AND InstallState = 2

...falló con:

Se produjo un error de sintaxis al intentar evaluar una cadena de consulta.

... Lo cual es bastante inútil.

¿Cuál es el fracaso y por qué?

Respuesta1

Resolví esto mientras escribía la pregunta y pensé en compartirla. Me engañé a mí mismo al ejecutar el comando WMIC y no pensé en el requisito de valores entre comillas en la sintaxis WQL bastante estricta que se usa aquí:

SELECT * FROM Win32_OptionalFeature WHERE Caption = "Microsoft-Windows-Server-Gui-Shell-Package-DisplayName" AND InstallState = "2"

Solución aburrida, pero ahí la tienes. Me llevó a beber, así que pensé en ahorrar tiempo de productividad futura a otra persona.

Sin embargo, no dejes que eso te impida beber. Eso es bastante productivo.

información relacionada