EnterpriseDesktopAppManagement CSP

El proveedor de servicios de configuración EnterpriseDesktopAppManagement se usa para controlar las tareas de administración de aplicaciones de escritorio empresarial, como consultar aplicaciones empresariales instaladas, instalar aplicaciones o quitar aplicaciones.

Las instalaciones de aplicaciones pueden tardar algún tiempo en completarse, por lo que se realizan de forma asincrónica. Cuando se completa el comando Exec, el cliente puede enviar una alerta genérica al servidor de administración con un estado, ya sea un error o un éxito. Para obtener un ejemplo de SyncML, vea Ejemplo de alerta.

En la lista siguiente se muestran los nodos del proveedor de servicios de configuración EnterpriseDesktopAppManagement:

Dispositivo o MSI

Ámbito Ediciones Sistema operativo aplicable
Dispositivo ✅
✅ Usuario
✅ Pro
✅ Empresa
✅ Educación
✅ Windows SE
✅ IoT Enterprise/IoT Enterprise LTSC
✅Windows 10, versión 1511 [10.0.10586] y versiones posteriores
./Device/Vendor/MSFT/EnterpriseDesktopAppManagement/MSI

El tipo de producto es MSI.

Propiedades del marco de descripción:

Nombre de la propiedad Valor de propiedad
Formato node
Tipo de acceso Obtener

Device/MSI/{ProductID}

Ámbito Ediciones Sistema operativo aplicable
Dispositivo ✅
✅ Usuario
✅ Pro
✅ Empresa
✅ Educación
✅ Windows SE
✅ IoT Enterprise/IoT Enterprise LTSC
✅Windows 10, versión 1511 [10.0.10586] y versiones posteriores
./Device/Vendor/MSFT/EnterpriseDesktopAppManagement/MSI/{ProductID}

Código de producto MSI para la aplicación.

Propiedades del marco de descripción:

Nombre de la propiedad Valor de propiedad
Formato node
Tipo de acceso Agregar, eliminar, obtener
Atomic Required Verdadero
Nomenclatura dinámica de nodos UniqueName: código de producto MSI para la aplicación.

Device/MSI/{ProductID}/DownloadInstall

Ámbito Ediciones Sistema operativo aplicable
Dispositivo ✅
✅ Usuario
✅ Pro
✅ Empresa
✅ Educación
✅ Windows SE
✅ IoT Enterprise/IoT Enterprise LTSC
✅Windows 10, versión 1511 [10.0.10586] y versiones posteriores
./Device/Vendor/MSFT/EnterpriseDesktopAppManagement/MSI/{ProductID}/DownloadInstall

Ejecuta la descarga e instalación de la aplicación. En Windows 10, versión 1703, se agregó una nueva etiqueta <DownloadFromAad> a la <Enforcement> sección del XML. El valor predeterminado es 0 (no enviar token). Esta etiqueta es opcional y debe establecerse en 1 en caso de que el servidor quiera que la dirección URL de descarga obtenga AADUserToken.

A continuación te mostramos un ejemplo:

<Enforcement>
  <CommandLine>/quiet</CommandLine>
  <TimeOut>5</TimeOut>
  <RetryCount>3</RetryCount>
  <RetryInterval>5</RetryInterval>
  <DownloadFromAad>1</DownloadFromAad>
</Enforcement>

Para obtener más información, vea DescargarInstalar esquema XSD.

Propiedades del marco de descripción:

Nombre de la propiedad Valor de propiedad
Formato xml
Tipo de acceso Add, Delete, Exec, Get

Device/MSI/{ProductID}/InstallDate

Ámbito Ediciones Sistema operativo aplicable
Dispositivo ✅
✅ Usuario
✅ Pro
✅ Empresa
✅ Educación
✅ Windows SE
✅ IoT Enterprise/IoT Enterprise LTSC
✅Windows 10, versión 1511 [10.0.10586] y versiones posteriores
./Device/Vendor/MSFT/EnterpriseDesktopAppManagement/MSI/{ProductID}/InstallDate

Fecha de instalación de la aplicación.

Propiedades del marco de descripción:

Nombre de la propiedad Valor de propiedad
Formato chr (cadena)
Tipo de acceso Obtener

Device/MSI/{ProductID}/InstallPath

Ámbito Ediciones Sistema operativo aplicable
Dispositivo ✅
✅ Usuario
✅ Pro
✅ Empresa
✅ Educación
✅ Windows SE
✅ IoT Enterprise/IoT Enterprise LTSC
✅Windows 10, versión 1511 [10.0.10586] y versiones posteriores
./Device/Vendor/MSFT/EnterpriseDesktopAppManagement/MSI/{ProductID}/InstallPath

Ruta de instalación de la aplicación.

Propiedades del marco de descripción:

Nombre de la propiedad Valor de propiedad
Formato chr (cadena)
Tipo de acceso Obtener

Device/MSI/{ProductID}/LastError

Ámbito Ediciones Sistema operativo aplicable
Dispositivo ✅
✅ Usuario
✅ Pro
✅ Empresa
✅ Educación
✅ Windows SE
✅ IoT Enterprise/IoT Enterprise LTSC
✅Windows 10, versión 1511 [10.0.10586] y versiones posteriores
./Device/Vendor/MSFT/EnterpriseDesktopAppManagement/MSI/{ProductID}/LastError

El último código de error durante el proceso de instalación de la aplicación. Normalmente, esto se almacena como formato HRESULT. En función de lo que se produjera cuando se produjo el error, esto podría deberse a la ejecución de MSIExec.exe o al resultado del error de una API con errores.

Propiedades del marco de descripción:

Nombre de la propiedad Valor de propiedad
Formato int
Tipo de acceso Obtener

Device/MSI/{ProductID}/LastErrorDesc

Ámbito Ediciones Sistema operativo aplicable
Dispositivo ✅
✅ Usuario
✅ Pro
✅ Empresa
✅ Educación
✅ Windows SE
✅ IoT Enterprise/IoT Enterprise LTSC
✅Windows 10, versión 1511 [10.0.10586] y versiones posteriores
./Device/Vendor/MSFT/EnterpriseDesktopAppManagement/MSI/{ProductID}/LastErrorDesc

Contiene la descripción del último código de error. El valor LastErrorDesc se busca para el valor LastError coincidente. A veces no se devuelve LastErrorDesc.

Propiedades del marco de descripción:

Nombre de la propiedad Valor de propiedad
Formato chr (cadena)
Tipo de acceso Obtener

Device/MSI/{ProductID}/Name

Ámbito Ediciones Sistema operativo aplicable
Dispositivo ✅
✅ Usuario
✅ Pro
✅ Empresa
✅ Educación
✅ Windows SE
✅ IoT Enterprise/IoT Enterprise LTSC
✅Windows 10, versión 1511 [10.0.10586] y versiones posteriores
./Device/Vendor/MSFT/EnterpriseDesktopAppManagement/MSI/{ProductID}/Name

Nombre de la aplicación.

Propiedades del marco de descripción:

Nombre de la propiedad Valor de propiedad
Formato chr (cadena)
Tipo de acceso Obtener

Device/MSI/{ProductID}/Publisher

Ámbito Ediciones Sistema operativo aplicable
Dispositivo ✅
✅ Usuario
✅ Pro
✅ Empresa
✅ Educación
✅ Windows SE
✅ IoT Enterprise/IoT Enterprise LTSC
✅Windows 10, versión 1511 [10.0.10586] y versiones posteriores
./Device/Vendor/MSFT/EnterpriseDesktopAppManagement/MSI/{ProductID}/Publisher

Publicador de la aplicación.

Propiedades del marco de descripción:

Nombre de la propiedad Valor de propiedad
Formato chr (cadena)
Tipo de acceso Obtener

Device/MSI/{ProductID}/Status

Ámbito Ediciones Sistema operativo aplicable
Dispositivo ✅
✅ Usuario
✅ Pro
✅ Empresa
✅ Educación
✅ Windows SE
✅ IoT Enterprise/IoT Enterprise LTSC
✅Windows 10, versión 1511 [10.0.10586] y versiones posteriores
./Device/Vendor/MSFT/EnterpriseDesktopAppManagement/MSI/{ProductID}/Status

Estado de la aplicación. Valores válidos: 10-Initialized, 20-Download In Progress, 25-Pending Download Retry, 30-Download Failed, 40-Download Completed, 48-Pending User Session, 50-Enforcement In Progress, 55-Pending Enforcement Retry, 60-Enforcement Failed, 70-Enforcement Completed.

Propiedades del marco de descripción:

Nombre de la propiedad Valor de propiedad
Formato int
Tipo de acceso Obtener

Device/MSI/{ProductID}/Version

Ámbito Ediciones Sistema operativo aplicable
Dispositivo ✅
✅ Usuario
✅ Pro
✅ Empresa
✅ Educación
✅ Windows SE
✅ IoT Enterprise/IoT Enterprise LTSC
✅Windows 10, versión 1511 [10.0.10586] y versiones posteriores
./Device/Vendor/MSFT/EnterpriseDesktopAppManagement/MSI/{ProductID}/Version

Versión del producto MSI.

Propiedades del marco de descripción:

Nombre de la propiedad Valor de propiedad
Formato chr (cadena)
Tipo de acceso Obtener

Device/MSI/UpgradeCode

Ámbito Ediciones Sistema operativo aplicable
Dispositivo ✅
✅ Usuario
✅ Pro
✅ Empresa
✅ Educación
✅ Windows SE
✅ IoT Enterprise/IoT Enterprise LTSC
✅Windows 10, versión 1607 [10.0.14393] y versiones posteriores
./Device/Vendor/MSFT/EnterpriseDesktopAppManagement/MSI/UpgradeCode

Propiedades del marco de descripción:

Nombre de la propiedad Valor de propiedad
Formato node
Tipo de acceso Obtener
Distingue mayúsculas de minúsculas Verdadero

Device/MSI/UpgradeCode/{Guid}

Ámbito Ediciones Sistema operativo aplicable
Dispositivo ✅
✅ Usuario
✅ Pro
✅ Empresa
✅ Educación
✅ Windows SE
✅ IoT Enterprise/IoT Enterprise LTSC
✅Windows 10, versión 1607 [10.0.14393] y versiones posteriores
./Device/Vendor/MSFT/EnterpriseDesktopAppManagement/MSI/UpgradeCode/{Guid}

Una puerta de enlace (o servidor de administración de dispositivos) usa este método para detectar el producto MSI de actualización coincidente cuando un Administración quiere actualizar una aplicación MSI existente. Si se instala el mismo producto de actualización, se permite la actualización.

Propiedades del marco de descripción:

Nombre de la propiedad Valor de propiedad
Formato chr (cadena)
Tipo de acceso Obtener
Nomenclatura dinámica de nodos ClientInventory

Usuario/MSI

Ámbito Ediciones Sistema operativo aplicable
Dispositivo ✅
✅ Usuario
✅ Pro
✅ Empresa
✅ Educación
✅ Windows SE
✅ IoT Enterprise/IoT Enterprise LTSC
✅Windows 10, versión 1511 [10.0.10586] y versiones posteriores
./User/Vendor/MSFT/EnterpriseDesktopAppManagement/MSI

El tipo de producto es MSI.

Propiedades del marco de descripción:

Nombre de la propiedad Valor de propiedad
Formato node
Tipo de acceso Obtener

User/MSI/{ProductID}

Ámbito Ediciones Sistema operativo aplicable
Dispositivo ✅
✅ Usuario
✅ Pro
✅ Empresa
✅ Educación
✅ Windows SE
✅ IoT Enterprise/IoT Enterprise LTSC
✅Windows 10, versión 1511 [10.0.10586] y versiones posteriores
./User/Vendor/MSFT/EnterpriseDesktopAppManagement/MSI/{ProductID}

Código de producto MSI para la aplicación.

Propiedades del marco de descripción:

Nombre de la propiedad Valor de propiedad
Formato node
Tipo de acceso Agregar, eliminar, obtener
Atomic Required Verdadero
Nomenclatura dinámica de nodos UniqueName: código de producto MSI para la aplicación.

User/MSI/{ProductID}/DownloadInstall

Ámbito Ediciones Sistema operativo aplicable
Dispositivo ✅
✅ Usuario
✅ Pro
✅ Empresa
✅ Educación
✅ Windows SE
✅ IoT Enterprise/IoT Enterprise LTSC
✅Windows 10, versión 1511 [10.0.10586] y versiones posteriores
./User/Vendor/MSFT/EnterpriseDesktopAppManagement/MSI/{ProductID}/DownloadInstall

Ejecuta la descarga e instalación de la aplicación. En Windows 10, versión 1703, se agregó una nueva etiqueta <DownloadFromAad> a la <Enforcement> sección del XML. El valor predeterminado es 0 (no enviar token). Esta etiqueta es opcional y debe establecerse en 1 en caso de que el servidor quiera que la dirección URL de descarga obtenga AADUserToken.

A continuación te mostramos un ejemplo:

<Enforcement>
  <CommandLine>/quiet</CommandLine>
  <TimeOut>5</TimeOut>
  <RetryCount>3</RetryCount>
  <RetryInterval>5</RetryInterval>
  <DownloadFromAad>1</DownloadFromAad>
</Enforcement>

Para obtener más información, vea DescargarInstalar esquema XSD.

Propiedades del marco de descripción:

Nombre de la propiedad Valor de propiedad
Formato xml
Tipo de acceso Add, Delete, Exec, Get

User/MSI/{ProductID}/InstallDate

Ámbito Ediciones Sistema operativo aplicable
Dispositivo ✅
✅ Usuario
✅ Pro
✅ Empresa
✅ Educación
✅ Windows SE
✅ IoT Enterprise/IoT Enterprise LTSC
✅Windows 10, versión 1511 [10.0.10586] y versiones posteriores
./User/Vendor/MSFT/EnterpriseDesktopAppManagement/MSI/{ProductID}/InstallDate

Fecha de instalación de la aplicación.

Propiedades del marco de descripción:

Nombre de la propiedad Valor de propiedad
Formato chr (cadena)
Tipo de acceso Obtener

User/MSI/{ProductID}/InstallPath

Ámbito Ediciones Sistema operativo aplicable
Dispositivo ✅
✅ Usuario
✅ Pro
✅ Empresa
✅ Educación
✅ Windows SE
✅ IoT Enterprise/IoT Enterprise LTSC
✅Windows 10, versión 1511 [10.0.10586] y versiones posteriores
./User/Vendor/MSFT/EnterpriseDesktopAppManagement/MSI/{ProductID}/InstallPath

Ruta de instalación de la aplicación.

Propiedades del marco de descripción:

Nombre de la propiedad Valor de propiedad
Formato chr (cadena)
Tipo de acceso Obtener

User/MSI/{ProductID}/LastError

Ámbito Ediciones Sistema operativo aplicable
Dispositivo ✅
✅ Usuario
✅ Pro
✅ Empresa
✅ Educación
✅ Windows SE
✅ IoT Enterprise/IoT Enterprise LTSC
✅Windows 10, versión 1511 [10.0.10586] y versiones posteriores
./User/Vendor/MSFT/EnterpriseDesktopAppManagement/MSI/{ProductID}/LastError

El último código de error durante el proceso de instalación de la aplicación. Normalmente, esto se almacena como formato HRESULT. En función de lo que se produjera cuando se produjo el error, esto podría deberse a la ejecución de MSIExec.exe o al resultado del error de una API con errores.

Propiedades del marco de descripción:

Nombre de la propiedad Valor de propiedad
Formato int
Tipo de acceso Obtener

User/MSI/{ProductID}/LastErrorDesc

Ámbito Ediciones Sistema operativo aplicable
Dispositivo ✅
✅ Usuario
✅ Pro
✅ Empresa
✅ Educación
✅ Windows SE
✅ IoT Enterprise/IoT Enterprise LTSC
✅Windows 10, versión 1511 [10.0.10586] y versiones posteriores
./User/Vendor/MSFT/EnterpriseDesktopAppManagement/MSI/{ProductID}/LastErrorDesc

Contiene la descripción del último código de error. El valor LastErrorDesc se busca para el valor LastError coincidente. A veces no se devuelve LastErrorDesc.

Propiedades del marco de descripción:

Nombre de la propiedad Valor de propiedad
Formato chr (cadena)
Tipo de acceso Obtener

User/MSI/{ProductID}/Name

Ámbito Ediciones Sistema operativo aplicable
Dispositivo ✅
✅ Usuario
✅ Pro
✅ Empresa
✅ Educación
✅ Windows SE
✅ IoT Enterprise/IoT Enterprise LTSC
✅Windows 10, versión 1511 [10.0.10586] y versiones posteriores
./User/Vendor/MSFT/EnterpriseDesktopAppManagement/MSI/{ProductID}/Name

Nombre de la aplicación.

Propiedades del marco de descripción:

Nombre de la propiedad Valor de propiedad
Formato chr (cadena)
Tipo de acceso Obtener

User/MSI/{ProductID}/Publisher

Ámbito Ediciones Sistema operativo aplicable
Dispositivo ✅
✅ Usuario
✅ Pro
✅ Empresa
✅ Educación
✅ Windows SE
✅ IoT Enterprise/IoT Enterprise LTSC
✅Windows 10, versión 1511 [10.0.10586] y versiones posteriores
./User/Vendor/MSFT/EnterpriseDesktopAppManagement/MSI/{ProductID}/Publisher

Publicador de la aplicación.

Propiedades del marco de descripción:

Nombre de la propiedad Valor de propiedad
Formato chr (cadena)
Tipo de acceso Obtener

User/MSI/{ProductID}/Status

Ámbito Ediciones Sistema operativo aplicable
Dispositivo ✅
✅ Usuario
✅ Pro
✅ Empresa
✅ Educación
✅ Windows SE
✅ IoT Enterprise/IoT Enterprise LTSC
✅Windows 10, versión 1511 [10.0.10586] y versiones posteriores
./User/Vendor/MSFT/EnterpriseDesktopAppManagement/MSI/{ProductID}/Status

Estado de la aplicación. Valores válidos: 10-Initialized, 20-Download In Progress, 25-Pending Download Retry, 30-Download Failed, 40-Download Completed, 48-Pending User Session, 50-Enforcement In Progress, 55-Pending Enforcement Retry, 60-Enforcement Failed, 70-Enforcement Completed.

Propiedades del marco de descripción:

Nombre de la propiedad Valor de propiedad
Formato int
Tipo de acceso Obtener

User/MSI/{ProductID}/Version

Ámbito Ediciones Sistema operativo aplicable
Dispositivo ✅
✅ Usuario
✅ Pro
✅ Empresa
✅ Educación
✅ Windows SE
✅ IoT Enterprise/IoT Enterprise LTSC
✅Windows 10, versión 1511 [10.0.10586] y versiones posteriores
./User/Vendor/MSFT/EnterpriseDesktopAppManagement/MSI/{ProductID}/Version

Versión del producto MSI.

Propiedades del marco de descripción:

Nombre de la propiedad Valor de propiedad
Formato chr (cadena)
Tipo de acceso Obtener

User/MSI/UpgradeCode

Ámbito Ediciones Sistema operativo aplicable
Dispositivo ✅
✅ Usuario
✅ Pro
✅ Empresa
✅ Educación
✅ Windows SE
✅ IoT Enterprise/IoT Enterprise LTSC
✅Windows 10, versión 1607 [10.0.14393] y versiones posteriores
./User/Vendor/MSFT/EnterpriseDesktopAppManagement/MSI/UpgradeCode

Propiedades del marco de descripción:

Nombre de la propiedad Valor de propiedad
Formato node
Tipo de acceso Obtener
Distingue mayúsculas de minúsculas Verdadero

User/MSI/UpgradeCode/{Guid}

Ámbito Ediciones Sistema operativo aplicable
Dispositivo ✅
✅ Usuario
✅ Pro
✅ Empresa
✅ Educación
✅ Windows SE
✅ IoT Enterprise/IoT Enterprise LTSC
✅Windows 10, versión 1607 [10.0.14393] y versiones posteriores
./User/Vendor/MSFT/EnterpriseDesktopAppManagement/MSI/UpgradeCode/{Guid}

Una puerta de enlace (o servidor de administración de dispositivos) usa este método para detectar el producto MSI de actualización coincidente cuando un Administración quiere actualizar una aplicación MSI existente. Si se instala el mismo producto de actualización, se permite la actualización.

Propiedades del marco de descripción:

Nombre de la propiedad Valor de propiedad
Formato chr (cadena)
Tipo de acceso Obtener
Nomenclatura dinámica de nodos ClientInventory

DescargarInstalar esquema XSD

<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="Data">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="MsiInstallJob">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="Product">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="Download">
                      <xs:complexType>
                        <xs:sequence>
                          <xs:element name="ContentURLList">
                            <xs:complexType>
                              <xs:sequence>
                                <xs:element maxOccurs="unbounded" name="ContentURL" type="xs:string" />
                              </xs:sequence>
                            </xs:complexType>
                          </xs:element>
                        </xs:sequence>
                      </xs:complexType>
                    </xs:element>
                    <xs:element name="Validation">
                      <xs:complexType>
                        <xs:sequence>
                          <xs:element name="FileHash" type="xs:string" />
                        </xs:sequence>
                      </xs:complexType>
                    </xs:element>
                    <xs:element name="Enforcement">
                      <xs:complexType>
                        <xs:sequence>
                          <xs:element name="CommandLine" type="xs:string" />
                          <xs:element name="TimeOut" type="xs:unsignedByte" />
                          <xs:element name="RetryCount" type="xs:unsignedByte" />
                          <xs:element name="RetryInterval" type="xs:unsignedByte" />
                          <xs:element name="DownloadFromAad" type="xs:unsignedByte" />
                        </xs:sequence>
                      </xs:complexType>
                    </xs:element>
                  </xs:sequence>
                  <xs:attribute name="Version" type="xs:string" use="required" />
                </xs:complexType>
              </xs:element>
            </xs:sequence>
            <xs:attribute name="id" type="xs:string" use="required" />
          </xs:complexType>
        </xs:element>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>

Ejemplos

  • SyncML para solicitar información de versión de CSP:

    <SyncML xmlns="SYNCML:SYNCML1.1">
      <SyncBody>
        <Get>
          <CmdID>12345</CmdID>
          <Item>
            <Target>
              <LocURI>./Device/Vendor/MSFT/EnterpriseDesktopAppManagement?prop=Type</LocURI>
            </Target>
          </Item>
        </Get>
        <Final/>
      </SyncBody>
    </SyncML>
    

    En la tabla siguiente se describen los campos del ejemplo anterior:

    Nombre Descripción
    Obtener Operación que se está realizando. La operación Get es una solicitud para devolver información.
    CmdID Valor de entrada que se usa para hacer referencia a la solicitud. Las respuestas incluirán este valor que se puede usar para hacer coincidir la solicitud y la respuesta.
    LocURI Ruta de acceso al procesador de comandos csp de Win32.
  • SyncML para realizar operaciones MSI para la desinstalación de aplicaciones:

    <SyncML xmlns="SYNCML:SYNCML1.1">
      <SyncBody>
        <Delete>
          <CmdID>12345</CmdID>
          <Item>
            <Target>
              <LocURI>./Device/Vendor/MSFT/EnterpriseDesktopAppManagement/MSI/%7B1803A630-3C38-4D2B-9B9A-0CB37243539C%7D</LocURI>
            </Target>
          </Item>
        </Delete>
        <Final/>
      </SyncBody>
    </SyncML>
    

    En la tabla siguiente se describen los campos del ejemplo anterior:

    Nombre Descripción
    Eliminar Operación que se está realizando. La operación Eliminar es una solicitud para eliminar el nodo CSP que representa la aplicación msi instalada especificada y para realizar y desinstalar la aplicación como parte del proceso.
    CmdID Valor de entrada que se usa para hacer referencia a la solicitud. Las respuestas incluirán este valor que se puede usar para hacer coincidir la solicitud y la respuesta.
    LocURI Ruta de acceso al procesador de comandos csp de Win32, incluido el id. de producto (en este ejemplo, la propiedad 1803A630-3C38-4D2B-9B9A-0CB37243539C) tiene escape para el formato XML.
  • SyncML para realizar operaciones MSI para los informes de estado de la aplicación:

    <SyncML xmlns="SYNCML:SYNCML1.1">
      <SyncBody>
        <Get>
          <CmdID>12345</CmdID>
          <Item>
            <Target>
              <LocURI>./Device/Vendor/MSFT/EnterpriseDesktopAppManagement/MSI/%7B1803A630-3C38-4D2B-9B9A-0CB37243539C%7D</LocURI>
            </Target>
          </Item>
        </Get>
        <Final/>
      </SyncBody>
    </SyncML>
    

    En la tabla siguiente se describen los campos del ejemplo anterior:

    Nombre Descripción
    Obtener Operación que se está realizando. La operación Get es una solicitud para notificar el estado de la aplicación msi instalada especificada.
    CmdID Valor de entrada que se usa para hacer referencia a la solicitud. Las respuestas incluirán este valor que se puede usar para hacer coincidir la solicitud y la respuesta.
    LocURI Ruta de acceso al procesador de comandos csp de Win32, incluido el id. de producto (en este ejemplo, la propiedad 1803A630-3C38-4D2B-9B9A-0CB37243539C) tiene escape para el formato XML.
  • SyncML para realizar operaciones de instalación de MSI para una aplicación destinada a un usuario específico en el dispositivo. El comando Agregar es necesario para preceder al comando Exec.

    <SyncML xmlns="SYNCML:SYNCML1.1">
      <SyncBody>
        <Add>
          <CmdID>1</CmdID>
          <Item>
            <Target>
            <LocURI>./User/Vendor/MSFT/EnterpriseDesktopAppManagement/MSI/%7B1803A630-3C384D2B-9B9A-0CB37243539C%7D/DownloadInstall</LocURI>
            </Target>
          </Item>
        </Add>
        <Exec>
          <CmdID>6</CmdID>
          <Item>
            <Target>
              <LocURI>./User/Vendor/MSFT/EnterpriseDesktopAppManagement/MSI/%7B1803A630-3C38-4D2B-9B9A-0CB37243539C%7D/DownloadInstall</LocURI>
            </Target>
            <Meta>
              <Format xmlns="syncml:metinf">xml</Format>
              <Type xmlns="syncml:metinf">text/plain</Type>
            </Meta>
            <Data>
              <MsiInstallJob id="{9BD4F7CD-880A-40B5-B74C-1BEECB51E596}">
                <Product Version="1.0.0">
                  <Download>
                    <ContentURLList>
                      <ContentURL>
                        http://bcl-w2k12r2-vm/testapps/msi/reboot/reboot.msi
                      </ContentURL>
                      <ContentURL>https://dp2.com/packages/myApp.msi</ContentURL>
                    </ContentURLList>
                  </Download>
                  <Validation>
                  <FileHash>134D8F1F7C3C036DC3DCDA9F97515C8C7951DB154B73365C9C22962BD23E3EB3</FileHash>
                  </Validation>
                  <Enforcement>
                    <CommandLine>/quiet</CommandLine>
                    <TimeOut>5</TimeOut>
                    <RetryCount>3</RetryCount>
                    <RetryInterval>5</RetryInterval>
                  </Enforcement>
                </Product>
              </MsiInstallJob>
            </Data>
          </Item>
        </Exec>
        <Final/>
      </SyncBody>
    </SyncML>
    

    En la tabla siguiente se describen los campos del ejemplo anterior:

    Nombre Descripción
    Agregar Este campo es necesario para preceder al comando Exec.
  • CmdID: valor de entrada que se usa para hacer referencia a la solicitud. Las respuestas incluyen este valor, que se puede usar para coincidir con la solicitud y la respuesta.
  • LocURI: ruta de acceso al procesador de comandos CSP win32, incluido el identificador de producto (en este ejemplo, la propiedad 1803A630-3C38-4D2B-9B9A-0CB37243539C) con escape para el formato XML.
  • Exec El nodo Exec incluye los parámetros y las propiedades necesarios para localizar, descargar, validar y realizar la instalación del producto.
  • CmdID: valor de entrada que se usa para hacer referencia a la solicitud. Las respuestas incluirán este valor que se puede usar para hacer coincidir la solicitud y la respuesta.
  • LocURI: ruta de acceso al procesador de comandos CSP win32, incluido el identificador de producto (en este ejemplo, la propiedad 1803A630-3C38-4D2B-9B9A-0CB37243539C) con escape para el formato XML.
  • Datos: el nodo Datos contiene un XML incrustado, de tipo "MsiInstallJob".
  • MsiInstallJob: contiene toda la información necesaria para la correcta descarga, validación y ejecución del proceso de instalación de MSI (consulte la sección al final de este documento para obtener más información sobre este objeto de datos incrustado).
  • Nota

    El estado de la información del trabajo msi se notificará mediante el mecanismo de notificación estándar OMA-DM. El estado notificado se representa mediante códigos de retorno MSIEXEC estándar como HRESULT, tal como se define en el tema MSIEXEC de Microsoft TechNet en Msiexec (opciones de línea de comandos).

  • SyncML para realizar operaciones de instalación de MSI para una aplicación destinada a todos los usuarios del dispositivo (instalación por dispositivo):

    <SyncML xmlns="SYNCML:SYNCML1.1">
      <SyncBody>
        <Add>
          <CmdID>1</CmdID>
          <Item>
            <Target>
              <LocURI>./Device /Vendor/MSFT/EnterpriseDesktopAppManagement/MSI/%7B6F7CB29F-1319-4816-B345-0856916EB801%7D/DownloadInstall
              </LocURI>
          </Target>
        </Item>
      </Add>
        <Exec>
          <CmdID>67890</CmdID>
          <Item>
            <Target>
              <LocURI>./Device /Vendor/MSFT/EnterpriseDesktopAppManagement/MSI/%7B6F7CB29F-1319-4816-B345-0856916EB801%7D/DownloadInstall</LocURI>
            </Target>
            <Meta>
              <Format xmlns="syncml:metinf">xml</Format>
              <Type xmlns="syncml:metinf">text/plain</Type>
            </Meta>
            <Data>
              <MsiInstallJob id="{9BD4F7CD-880A-40B5-B74C-1BEECB51E596}">
                <Product Version="1.0.0">
                  <Download>
                    <ContentURLList>
                      <ContentURL>http://bcl-w2k12r2-vm/testapps/msi/Orca/Orca.msi</ContentURL>
                      <ContentURL>https://dp2.com/packages/myApp.msi</ContentURL>
                    </ContentURLList>
                  </Download>
                  <Validation>
                    <FileHash>4525065777EF18B9444ABF71DD4B48E5F64F4F0E1E029995FB8DA441CDE4296E</FileHash>
                  </Validation>
                  <Enforcement>
                    <CommandLine>/quiet</CommandLine>
                    <TimeOut>5</TimeOut>
                    <RetryCount>3</RetryCount>
                    <RetryInterval>5</RetryInterval>
                  </Enforcement>
                </Product>
              </MsiInstallJob>
            </Data>
          </Item>
        </Exec>
        <Final/>
      </SyncBody>
    </SyncML>
    

    En la tabla siguiente MsiInstallJob se describen los elementos de esquema.

    Elemento Descripción
    MsiInstallJob elemento raíz
    Atributo: "id": el identificador de aplicación de la aplicación que se está instalando
    Producto elemento secundario de MsiInstallJob
    Atributo: "Versión": representación de cadena de la versión de la aplicación
    Descargar elemento secundario de Product. Contenedor para descargar información de configuración.
    ContentURLList elemento secundario de Download. Contiene una lista de uno o varios localizadores de direcciones URL de descarga de contenido en forma de elementos ContentURL.
    ContentURL El contenido de la ubicación debe descargarse desde. Debe ser una dirección URL con formato de propiedad que apunte al archivo .MSI.
    Validación Contiene información usada para validar la autenticidad de los contendientes. • FileHash: valor hash SHA256 del contenido del archivo
    FileHash Valor hash SHA256 del contenido del archivo
    Cumplimiento propiedades de instalación que se usarán al instalar este ARCHIVO MSI
    Commandline Opciones de línea de comandos que se usarán al llamar a MSIEXEC.exe
    Timeout Cantidad de tiempo, en minutos que el proceso de instalación puede ejecutarse antes de que el instalador considere que la instalación puede haber producido un error y ya no supervisa la operación de instalación.
    RetryCount El número de veces que se reintente la operación de descarga e instalación antes de que la instalación se marque como errónea.
    RetryInterval Cantidad de tiempo, en minutos entre las operaciones de reintento.

    Este es un ejemplo de una respuesta común a una solicitud

    <?xml version="1.0" encoding="utf-16"?>
    <SyncML>
      <SyncHdr />
      <SyncBody>
        <Status>
          <CmdID>12345</CmdID>
          <MsgRef>1</MsgRef>
          <CmdRef>0</CmdRef>
          <Cmd>SyncHdr</Cmd>
          <Data>200</Data>
        </Status>
        <Status>
          <CmdID>67890</CmdID>
          <MsgRef>1</MsgRef>
          <CmdRef>1</CmdRef>
          <Cmd>Add</Cmd>
          <Data>200</Data>
        </Status>
        <Final />
      </SyncBody>
    </SyncML>
    

Cómo determinar qué contexto de instalación se va a usar para un paquete MSI

En las tablas siguientes se muestra cómo se instalan el destino de la aplicación y el tipo de paquete MSI (por usuario, por equipo o modo dual) en el cliente.

Para Intune entorno independiente, el paquete MSI determinará el contexto de ejecución de MSI.

Target MSI por usuario MSI por máquina MSI de modo dual
Usuario Instalación de msi por usuario
LocURI contiene un prefijo user, como ./User
Instalación de MSI por dispositivo
LocURI contiene un prefijo de dispositivo, como ./Device
Instalación de msi por usuario
LocURI contiene un prefijo user, como ./User
Sistema Instalación de msi por usuario
LocURI contiene un prefijo user, como ./User
Instalación de MSI por dispositivo
LocURI contiene un prefijo de dispositivo, como ./Device
Instalación de msi por usuario
LocURI contiene un prefijo user, como ./User

La tabla siguiente se aplica a Configuration Manager entorno híbrido:

Target MSI por usuario MSI por máquina MSI de modo dual
Usuario Instalación de msi por usuario
LocURI contiene un prefijo user, como ./User
Instalación de MSI por dispositivo
LocURI contiene un prefijo de dispositivo, como ./Device
Instalación de msi por usuario
LocURI contiene un prefijo user, como ./User
Sistema Instalación de msi por usuario
LocURI contiene un prefijo user, como ./User
Instalación de MSI por dispositivo
LocURI contiene un prefijo de dispositivo, como ./Device
Instalación del contexto de MSI por sistema
LocURI contiene un prefijo de dispositivo, como ./Device

Cómo determinar el tipo de paquete del paquete MSI

  • ALLUSERS="" : tipo de paquete por usuario
  • ALLUSERS=1: tipo de paquete por máquina
  • ALLUSERS=2, MSIINSTALLPERUSER=1: tipo de paquete de modo dual

Las propiedades se pueden especificar en el paquete, pasarlas a través de la línea de comandos, modificarlas mediante una transformación o (más comúnmente) seleccionarlas a través de un cuadro de diálogo de interfaz de usuario.

Esta es una lista de referencias:

Ejemplo de alerta

<Alert>
   <CmdID>4</CmdID>
   <Data>1224</Data>
   <Item>
      <Source>
         <LocURI>./Device/Vendor/MSFT/EnterpriseDesktopAppManagement/MSI/{AF9257BA-6BBD-4624-AA9B-0182D50292C3}/DownloadInstall</LocURI>
      </Source>
      <Meta>
         <Type xmlns="syncml:metinf">Reversed-Domain-Name:com.microsoft.mdm.win32csp_install</Type>
         <Format xmlns="syncml:metinf">int</Format>
         <Mark xmlns="syncml:metinf">informational</Mark>
      </Meta>
      <Data>0</Data>
   </Item>
</Alert>

Referencia de proveedor de servicios de configuración