Preinstalar aplicaciones con DISM
Nota
¿Te interesa preinstalar aplicaciones de Microsoft Store, pero no eres un OEM? Para obtener información sobre la instalación de prueba de aplicaciones para organizaciones, consulte Transferir localmente aplicaciones con DISM.
En este tema se explica cómo preinstalar aplicaciones para que se incluyan como parte de una imagen de Windows.
Sugerencia
Las aplicaciones de soporte técnico de hardware (HSA) son aplicaciones de Microsoft Store y se aplican las siguientes instrucciones.
Trabajar con paquetes de aplicaciones
Use DISM para aprovisionar sin conexión una aplicación en una imagen. Puede usar DISM desde el símbolo del sistema o los cmdlets DISM en Windows PowerShell.
En versiones anteriores de Windows 10, las aplicaciones universales preinstaladas y las aplicaciones de Microsoft Store tenían que anclarse al menú Inicio. Windows quitaría las aplicaciones preinstaladas pero no ancladas al menú Inicio.
A partir de Windows 10, versión 1803, las aplicaciones se pueden preinstalar sin anclarse al menú Inicio cuando se usa DISM /add-provisionedappxpackage
con la /region
opción . Al preinstalar una aplicación, puede dejar la aplicación fuera de la LayoutModification.xml y la aplicación se instalará correctamente sin aparecer como un icono del menú Inicio. Cuando no se especifica una lista de regiones, la aplicación se aprovisionará solo si está anclada al diseño de inicio.
Extracción de los archivos de paquete
Vaya a la carpeta donde guardó los paquetes de aplicación que descargó del Panel de partners.
Haga clic con el botón derecho en cada carpeta .zip que contenga los archivos del paquete de la aplicación. Haga clic en Extraer todo y seleccione una ubicación para guardar las carpetas del archivo de paquete.
La carpeta contiene todos los archivos desempaquetados del paquete, incluido un paquete principal, los paquetes de dependencia y el archivo de licencia.
Importante
No modifique la carpeta una vez que haya extraído los archivos de paquete. Si cambias, agregas o quitas los archivos de la carpeta, se producirá un error en la aplicación durante la instalación o el inicio. Incluso examinar la carpeta puede causar problemas.
Deberá usar el archivo de licencia de los archivos de paquete para probar la imagen aprovisionada. La creación de su propio archivo de datos personalizado no le permitirá probar con precisión una aplicación preinstalada por un OEM.
Para el aprovisionamiento sin conexión de una aplicación en una imagen, puede usar la herramienta Dism.exe o los cmdlets DISM en Windows PowerShell para agregar una aplicación desde una carpeta de archivos desempaquetados.
Preinstalar una aplicación firmada por Microsoft Store con DISM
Abra el símbolo del sistema como administrador.
Monte una imagen de Windows para la que quiera atender:
Dism /Mount-Image /ImageFile:c:\images\myimage.wim /Index:1 /mountdir:c:\test\offline
Agregue la aplicación a la imagen montada. Use las
/PackagePath
opciones y/DependencyPackagePath
.-
Packagepath
es la ruta de acceso al paquete o al archivo de paquete .appx. -
DependencyPackagePath
es la ruta de acceso para especificar cada paquete de dependencia. Puede tener más de una dependencia por comando. -
Novedad de Windows 10, versión 1803: use la
Region
opción al agregar aplicaciones.Region
permite agregar una aplicación sin tener que anclar la aplicación al menú Inicio.
Dism /Image:c:\test\offline /Add-ProvisionedAppxPackage /PackagePath:c:\downloads\package.appxbundle /DependencyPackagePath:c:\downloads\dependency1.appx /DependencyPackagePath:c:\downloads\dependency2.appx /LicensePath=c:\downloads\package_License1.xml /region=all"
Consulte Opciones de línea de comandos de mantenimiento de paquetes de aplicaciones DISM para obtener información sobre cómo trabajar con paquetes de aplicación, incluida la nueva opción /region.
-
Ancle la aplicación al menú Inicio.
Si no especificó
/region
al preinstalar la aplicación, ancle la aplicación al menú Inicio con LayoutModification.xml.or
Si especificaste
/region
al preinstalar la aplicación y quieres anclar la aplicación al menú Inicio para regiones específicas, usa elRequiredStartGroups Region="region1|region2"
elemento de LayoutModification.xml para especificar las regiones en las que quieres que aparezca la aplicación.
Guarde los cambios y desmonte la imagen. En el símbolo del sistema, escriba:
Dism /Unmount-Image /mountdir:c:\test\offline /commit
Nota
Las aplicaciones de Microsoft Store no se ejecutan en modo auditoría. Para probar la implementación, ejecute Windows y cree un nuevo perfil de usuario. Para obtener más información sobre el modo de auditoría, vea Información general sobre el modo auditoría.
Importante Si va a preinstalar una aplicación de dispositivo de banda ancha móvil, debe insertar la tarjeta SIM en el equipo antes de ejecutar la fase especializada de Sysprep. Para obtener más información sobre cómo preinstalar una aplicación de dispositivo de banda ancha móvil, consulte Preinstalar los componentes necesarios para una experiencia de aplicación de banda ancha móvil.
Actualizar o quitar paquetes
Puede quitar una aplicación preinstalada, incluidos los archivos de datos personalizados y de licencia, de una imagen de Windows mediante la herramienta DISM.exe o los cmdlets DISM de Windows PowerShell. Debe quitar la versión anterior de la aplicación antes de instalar una nueva.
Eliminación de una aplicación preinstalada mediante DISM
Abra el símbolo del sistema de las Herramientas de implementación, instalado con Windows ADK, con privilegios de administrador. En la pantalla Inicio, escriba Entorno de herramientas de implementación e imágenes, haga clic con el botón derecho en el icono y seleccione Ejecutar como administrador.
Monte la imagen sin conexión para el mantenimiento. En el símbolo del sistema, escriba:
Dism /Mount-Image /ImageFile:c:\images\myimage.wim /Index:1 /mountdir:c:\test\offline
Busque el nombre completo del paquete de la aplicación que desea quitar. En el símbolo del sistema, escriba:
Dism /Image:C:\test\offline /Get-ProvisionedAppxPackages
Quite la aplicación de la imagen montada. Por ejemplo, en el símbolo del sistema, escriba:
Dism /Image:c:\test\offline /Remove-ProvisionedAppxPackage /PackageName:microsoft.devx.appx.app1_1.0.0.0_neutral_en-us_ac4zc6fex2zjp
Si quieres actualizar la aplicación, puedes preinstalar la versión actualizada de la aplicación firmada por Microsoft Store. En una ventana de símbolo del sistema, escriba:
Dism /Image:c:\test\offline /Add-ProvisionedAppxPackage/FolderPath:c:\downloads\appxpackage
Guarde los cambios y desmonte la imagen. En el símbolo del sistema, escriba:
Dism /Unmount-Image /mountdir:c:\test\offline /commit
Uso de archivos de datos personalizados
Las aplicaciones preinstaladas en un equipo pueden acceder a datos personalizados específicos de la instalación. Estos datos personalizados se agregan a la aplicación durante la preinstalación y están disponibles en tiempo de ejecución. Los datos personalizados permiten a los desarrolladores personalizar las características y funcionalidades de una aplicación, lo que incluye proporcionar funcionalidades de informes.
Agregar un archivo de datos personalizado a una imagen de Windows
Debe especificar el archivo de datos personalizado al preinstalar la aplicación mediante la herramienta DISM y a través de Windows PowerShell mediante el cmdlet Add-AppxProvisionedPackage. El siguiente comando muestra cómo hacerlo mediante la herramienta DISM:
Dism /Image:C:\test\offline /Add-ProvisionedAppxPackage / FolderPath:f:\Apps\Fabrikam_KnowMyPC /CustomDataPath:f:\Contoso_Promotion.xml
Si ya existe un archivo de datos personalizado en el almacén de datos de una aplicación (por ejemplo, si el paquete ya se ha agregado a la imagen), se sobrescribe el archivo existente. Si se produce un error en la instalación, el archivo no se restaura.
Nota Puedes publicar actualizaciones en una aplicación a través de Microsoft Store sin perder el archivo de datos personalizado. Sin embargo, si un usuario elimina la aplicación, el archivo de datos personalizado ya no está disponible, incluso si el usuario vuelve a instalar la aplicación.
Prueba de datos personalizados para aplicaciones preinstaladas
Las aplicaciones preinstaladas en un equipo pueden acceder a datos personalizados específicos de la instalación. Estos datos personalizados se agregan a la aplicación durante la preinstalación y están disponibles para la aplicación en tiempo de ejecución. Los datos personalizados permiten a los desarrolladores personalizar las características y funcionalidades de una aplicación, lo que incluye proporcionar funcionalidades de informes.
El archivo Custom.data aparece en la ubicación instalada de la aplicación. El nombre Custom.data está codificado de forma rígida y no se puede modificar. La aplicación puede comprobar la existencia de este archivo para determinar si la aplicación estaba preinstalada en el equipo. Este es un ejemplo de cómo acceder al archivo Custom.data.
var outputDiv = document.getElementById("CustomData");
Windows.ApplicationModel.Package.current.installedLocation.getFileAsync
("microsoft.system.package.metadata\\Custom.data").then(function (file) {
// Read the file
Windows.Storage.FileIO.readTextAsync(file).done(function (fileContent) {
outputDiv.innerHTML =
"App is preinstalled. CustomData contains:<br /><br />"
+ fileContent;
},
function (error) {
outputDiv.innerText = "Error reading CustomData " + error;
});
},
function (error) {
outputDiv.innerText = "CustomData was not available. App not preinstalled";
});
El archivo Custom.data puede incluir cualquier contenido y estar en cualquier formato que requiera la aplicación. El proceso de preinstalación simplemente hace que esté disponible para la aplicación. Los desarrolladores pueden proporcionar el archivo de datos al asociado de preinstalación, o bien puede aceptar un formato que permita al asociado generar el contenido.
Prueba de los datos personalizados
Al compilar y depurar la aplicación en Microsoft Visual Studio, no puede acceder al archivo Custom.data desde la ubicación instalada de la aplicación porque la aplicación aún no está preinstalada. Puede simular el uso del archivo Custom.data colocando un archivo Custom.data de prueba en la propia aplicación y cargando y probando el archivo local de la aplicación. Para ello, modifique el ejemplo de código de:
("microsoft.system.package.metadata\\Custom.data").then(function (file) {
a:
("Custom.data").then(function (file) {
Después de comprobar el formato de archivo y el contenido, puede cambiar la ubicación del archivo Custom.data a la ubicación final, como se muestra en el ejemplo original anterior.
Para probar el archivo Custom.data
Abra el símbolo del sistema de las Herramientas de implementación, instalado con Windows ADK, con privilegios de administrador. En la pantalla Inicio, escriba Entorno de herramientas de implementación e imágenes, haga clic con el botón derecho en el icono y seleccione Ejecutar como administrador.
Agregue la aplicación con el archivo de datos personalizado:
dism /online /Add-ProvisionedAppxPackage /PackagePath:.\CustomData_1.0.0.1_AnyCPU_Debug.appx /CustomDataPath:.\Test.txt /SkipLicense
Donde
/PackagePath:.\CustomData_1.0.0.1_AnyCPU_Debug.appx
apunta al paquete de prueba de la aplicación local y dónde/CustomDataPath:.\Test.txt
apunta al archivo Custom.data. Ten en cuenta que el nombre de archivo que proporciones aquí no se usa después de instalar los datos en la aplicación.La aplicación ahora tiene un icono en la pantalla Inicio del equipo que se usa para probar la aplicación. La aplicación debe poder acceder al archivo Custom.data. Si se necesita depuración adicional, adjunte un depurador después de iniciar la aplicación desde la pantalla Inicio .
Nota Es posible que tenga que cerrar sesión e iniciar sesión de nuevo para ver la aplicación en la pantalla Inicio .
Una vez que haya terminado de probar la aplicación, debe quitar el paquete preinstalado para seguir usando el entorno de desarrollo. Para quitar el paquete preinstalado mediante Windows PowerShell, puede usar el cmdlet Get-AppxPackage para proporcionar el nombre completo del paquete de la aplicación a través de la canalización al cmdlet Remove-ProvisionedAppxPackage:
Get-AppxPackage *CustomData* | Remove-ProvisionedAppxPackage
Donde
*CustomData*
es la parte conocida del nombre de la aplicación
Preinstalar una aplicación de dispositivo de Microsoft Store o una aplicación de banda ancha móvil
Puedes preinstalar los componentes necesarios para una aplicación de dispositivo de Microsoft Store o una aplicación de banda ancha móvil mediante la plataforma De mantenimiento y administración de imágenes de implementación (DISM).
Nota Este artículo está pensado para los OEM, que admitirán una aplicación de dispositivo de Microsoft Store o la aplicación de banda ancha móvil en sus dispositivos.
Para cada tipo de aplicación, se deben preinstalar dos cosas para proporcionar la aplicación de dispositivo de Microsoft Store correcta o la aplicación de banda ancha móvil:
- Aplicación de dispositivo de Microsoft Store, preinstalar:
- El paquete de metadatos del dispositivo
- La aplicación
- Aplicación de banda ancha móvil de Microsoft Store, preinstalar:
- El paquete de metadatos del servicio
- La aplicación
Importante Aunque los paquetes de metadatos y las aplicaciones correspondientes se analizan inmediatamente después de que se complete el proceso de OOBE, es posible que un usuario pueda iniciar la aplicación antes de analizar el paquete de metadatos. En este caso, el usuario verá un error de acceso denegado. Para evitar esto, aplique tanto el paquete de metadatos como la aplicación a la imagen del sistema.
Preinstalar los metadatos del dispositivo o el paquete de metadatos del servicio
Para preinstalar un paquete de metadatos de servicio o metadatos de dispositivo
Si va a preinstalar una aplicación de dispositivo de Microsoft Store, debe haber adquirido el paquete de metadatos del dispositivo. Si va a preinstalar una aplicación de banda ancha móvil, debe haber adquirido el paquete de metadatos del servicio.
Nota Los paquetes de metadatos de dispositivo y los paquetes de metadatos de servicio usan la misma extensión de nombre de archivo (.devicemetadata-ms).
Copie los metadatos del dispositivo o el paquete de metadatos del servicio (archivo devicemetadata-ms) en la imagen del sistema en la carpeta %ProgramData%\Microsoft\Windows\DeviceMetadataStore . Para ello, siga uno de estos métodos:
En línea antes de ejecutar Sysprep
Sin conexión después de ejecutar Sysprep mediante DISM. Para ello, siga estos pasos:
Monte la imagen sin conexión para el mantenimiento.
Dism /Mount-Image /ImageFile:C:\test\images\myimage.wim /index:1 /MountDir:C:\test\offline
Copie los archivos del paquete de metadatos en el almacén de metadatos del dispositivo de la imagen montada. Por ejemplo, para copiar el archivo de paquete de metadatos 0ECF2029-2C6A-41AE-9E0A-63FFC9EAD877.devicemetadata-ms en el almacén de metadatos del dispositivo, ProgramData\Microsoft\Windows\DeviceMetadataStore:
copy 0ECF2029-2C6A-41AE-9E0A-63FFC9EAD877.devicemetadata-ms C:\test\offline\ProgramData\Microsoft\Windows\DeviceMetadataStore
Guarde los cambios y desmonte la imagen.
dism /Unmount-Image /mountdir: c:\test\offline /commit
Para obtener más información sobre el mantenimiento de imágenes sin conexión, consulta Información general sobre DISM.
Para obtener más información sobre los metadatos del servicio, consulte Metadatos del servicio.
Preinstalar la aplicación de dispositivo de Microsoft Store o la aplicación de banda ancha móvil
Para preinstalar la aplicación de dispositivo de Microsoft Store o la aplicación de banda ancha móvil
Monte la imagen sin conexión para el mantenimiento.
Dism /Mount-Image /ImageFile:C:\test\images\myimage.wim /index:1 /MountDir:C:\test\offline
Agregue la aplicación de dispositivo de Microsoft Store o la aplicación de banda ancha móvil a la imagen.
dism /Image:<mounted folder> /Add-ProvisionedAppxPackage /FolderPath:<appxpackage path>
Guarde los cambios y desmonte la imagen.
dism /Unmount-Image /mountdir: c:\test\offline /commit