Reglas de detección de distribución de aplicaciones
Las reglas de detección del paquete de distribución de aplicaciones pueden ayudar a determinar si el paquete ya está instalado y, por tanto, no debe instalarse de nuevo.
Configurar reglas de detección en Distribución de aplicaciones > Catálogo de aplicaciones.Añada o edite una aplicación y seleccione la pestaña Paquete .
Las reglas de detección solo se comprueban al principio del procesamiento de un paquete, por lo que una acción de detección siempre será el primer elemento del constructor si se utiliza. Las reglas de detección se ejecutan en el orden en que están definidas.
IMPORTANTE: si cualquier paso de detección se resuelve como cierto, el procesamiento del paquete se detiene y el estado de la aplicación de los dispositivos se mostrará como conforme.
Estas son las reglas de detección disponibles:
Indique la ruta completa y el nombre del archivo. Seleccione Existe o No existe.
Por lo general, la información sobre la versión de los archivos solo está disponible para los archivos ejecutables. La distribución de aplicaciones utiliza el valor "Versión del archivo", no el valor "Versión del producto". Indique la ruta completa y el nombre del archivo. El operador puede ser variantes de menor o mayor que, igual o está entre. Si el archivo y la ruta especificados no existen o si el archivo no tiene versión analizable, devuelve false.
Para obtener más información sobre el funcionamiento de los operadores de versión y comparación, consulte este artículo de Microsoft.
Indique la ruta completa y el nombre del archivo. Especifique el tamaño del archivo en bytes. La distribución de archivos usa "Tamaño" y no "Tamaño en disco". Si el archivo y la ruta especificados no existen, devuelve false.
Indique la ruta completa y el nombre del archivo. Seleccione la longitud de bits SHA-2 que está comparando. Si el archivo y la ruta especificados no existen, devuelve false. Puede utilizar PowerShell para generar un resumen hash:
-
Get-FileHash -Algorithm SHA256 -Path C:\MyApp\myfile.exe
Esta norma solo tiene en cuenta la fecha, no la hora. Indique la ruta completa y el nombre del archivo. Seleccione un operador, como Igual a. La fecha del archivo debe especificarse en UTC (tiempo universal coordinado), coincidiendo con el equivalente de su configuración regional al formato mm/dd/aaaa. La distribución de aplicaciones utiliza la fecha de "Modificación", no la de "Creación". Si el archivo y la ruta especificados no existen, devuelve false. Puede utilizar PowerShell para recuperar la fecha del archivo en UTC:
-
(Get-Item C:\MyApp\myfile.exe).LastWriteTimeUtc
Proporcione el GUID del código del producto MSI y seleccione si el MSI Está instalado o No está instalado. Utilice la herramienta Orca de Microsoft para ver el GUID "ProductCode". También puede ver los GUID MSI instalados bajo estas claves de registro:
- HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
- HKLMSOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall
- HKCU\Software\Microsoft\Windows\CurrentVersion\Uninstall
Proporcione el nombre completo del paquete MSIX y si el MSIX Está instalado o No está instalado. Utilice el comando Get-AppxPackage de PowerShell para encontrar el nombre completo del paquete, como describe Microsoft aquí.
Proporcione la información de la clave de registro que desea detectar.
- Versión del registro: seleccione de 32 bits o de 64 bits según corresponda, o puede seleccionar Sistema si desea que coincida automáticamente con la versión que utiliza el dispositivo de destino.
- Clave raíz: seleccione la clave raíz que contiene la clave que desee detectar, como HKEY_LOCAL_MACHINE.
- Clave: introduzca la ruta completa (no incluya la clave raíz ya especificada) del nombre de la clave de registro que desee detectar.
- Especifique Existe o No existe
Proporcione la información de la clave de registro y del valor que desea detectar.Si el usuario no puede acceder a la clave o el valor o no existen, la regla devolverá false (a menos que el operador de comparación sea No existe).
Debe especificar un nombre de valor, a menos que desee comprobar el valor "(Predeterminado)", en cuyo caso se deja en blanco.
Al realizar una comparación de versiones, los operandos de comparación y los datos asociados al valor de registro deben estar en el formato de versión descrito aquí. Si alguno de ellos no lo es, las reglas de detección (y el paquete) generarán un error.
Para obtener más información sobre el funcionamiento de los operadores de versión y comparación, consulte este artículo de Microsoft.
La comparación de cadenas distingue entre mayúsculas y minúsculas. Si el valor del registro tiene datos que no son del tipo REG_SZ (Cadena), se convierte a una cadena de la siguiente manera:
- REG_DWORD: se usa la forma decimal (como se muestra en regedit.exe).
- REG_QWORD: se usa la forma decimal (como se muestra en regedit.exe).
- REG_BINARY: se usa la forma de par de bytes utilizada por regedit.exe, pero en mayúsculas (p. ej. "46 AA 6C 6B 65 6E").
- REG_MULTI_SZ: las líneas se concatenan con espacios para formar una sola línea (por ejemplo, "Línea1 Línea2 Línea3").
- REG_EXPAND_SZ: se expanden todas las variables de entorno.
Los scripts de detección pueden utilizar PowerShell (no PowerShell Core) o sintaxis por lotes. El éxito de la detección se basa en el código numérico de salida del script. Un código de salida "0" (cero) equivale a verdadero. Cualquier otro código de salida se considera falso. El código de salida debe ser numérico y no la palabra "True". Utilice el editor de scripts incorporado para crear su script.
Utilice el editor de scripts integrado para crear un script, o puede utilizar la opción Seleccionar archivo y buscar un archivo. El archivo y la ruta que proporcione deben existir en el sistema de destino. Si el archivo de script no se encuentra ya en el dispositivo, utilice la acción Descargar archivo para colocarlo allí. Al hacer esto, el archivo descargado se coloca en una ruta predeterminada y solo debe especificar el nombre del archivo.
Dado que las reglas de detección se ejecutan antes que otras acciones del paquete, esto sitúa a los scripts de reglas de detección en una etapa única del proceso de instalación de la aplicación. Aquí es posible hacer cosas más complejas, como ejecutar un script de actualización personalizado que busque una instalación de aplicación antigua y, si la encuentra, la desinstale antes de continuar con el resto del paquete.
Registro de reglas y acciones de detección
La distribución de aplicaciones crea un archivo de registro para cada aplicación desplegada en un dispositivo. El registro tiene entradas para cada regla de detección y otras acciones del paquete. Si las reglas de detección no están funcionando como se esperaba, utilice el archivo de registro para ayudar a determinar el motivo. Los registros se almacenan en cada dispositivo en esta carpeta:
- C:\ProgramData\Ivanti\Ivanti Cloud Agent\Logs\SWDApps
Cada nombre de archivo de registro incluye el GUID del paquete. Si edita un paquete en Catálogo de aplicaciones, puede ver su GUID de paquete en la URL del navegador web. Esto le ayudará a encontrar el archivo de registro que le interese.
Puede ver un registro simplificado de forma remota desde la página Distribución de aplicaciones > Estado de despliegue. Busque el dispositivo y el paquete que desee ver y, a la derecha, seleccione la opción del menú de acciones Ver registro.