[Solved] Script to integrate Appx packages (Modern UI Apps) in the offline Mounted WIM

Discussion in 'Scripting' started by ceo54, Jan 30, 2023.

  1. ceo54

    ceo54 MDL Addicted

    Aug 13, 2015
    904
    398
    30
    Hello,

    A helpful member provided me a script to install Calculator and Snip & Sketch modern apps into 2019 LTSC. Can the script be modified to integrate these apps in mounted offline WIM image ?

    Here's the script:
    Code:
    @echo off
    title %~n0
    setlocal EnableDelayedExpansion
    
    if %PROCESSOR_ARCHITECTURE% == x86 (set PROCARCH=_x86_) else (set PROCARCH=_x64_)
    for /f "tokens=3* delims= " %%i in ('reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" ^| findstr /i "CurrentBuild"') do set "CurrentBuild=%%i"
    
    for /f "delims=" %%j in ('dir /b "%~dp0Appx\%CurrentBuild%\*"') do (copy /y "%~dp0Appx\%CurrentBuild%\%%j" "%~dp0Appx")
    
    call :InstallAppx *%PROCARCH%*
    call :InstallAppx *_neutral_*.appx*
    call :InstallAppx *_neutral_*.Msi*
    
    pause&exit
    
    :InstallAppx
    for /f "delims=" %%i in ('dir /b "%~dp0Appx\%1"') do (
       set Licence=-SkipLicense
       set "Appx=%~dp0Appx\%%i"
       for %%j in ("!Appx!") do (set fiename=%%~nj)
       for /f "tokens=1 delims=_" %%k in ("!fiename!") do (set prefix=%%k)
       for /f "delims=" %%l in ('dir /b "%~dp0Appx\!prefix!*.xml"') do (set "Licence=-LicensePath '%~dp0Appx\%%l'")
       >nul PowerShell -command "Add-AppXProvisionedPackage -Online -PackagePath '!Appx!' !Licence!; Add-AppxPackage -Path '!Appx!'"
    )
    exit /b
    Any help will be greatly appreciated.
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  2. abbodi1406

    abbodi1406 MDL KB0000001

    Feb 19, 2011
    17,300
    91,411
    340
    Code:
    -Online
    >
    -Path MountDirectoryPath
    and remove Add-AppxPackage command
     
  3. ceo54

    ceo54 MDL Addicted

    Aug 13, 2015
    904
    398
    30
    Hi addodi, thanks for the help.

    Is this correct...?

    Code:
    @echo off
    title %~n0
    setlocal EnableDelayedExpansion
    
    if %PROCESSOR_ARCHITECTURE% == x86 (set PROCARCH=_x86_) else (set PROCARCH=_x64_)
    for /f "tokens=3* delims= " %%i in ('reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" ^| findstr /i "CurrentBuild"') do set "CurrentBuild=%%i"
    
    for /f "delims=" %%j in ('dir /b "%~dp0Appx\%CurrentBuild%\*"') do (copy /y "%~dp0Appx\%CurrentBuild%\%%j" "%~dp0Appx")
    
    call :InstallAppx *%PROCARCH%*
    call :InstallAppx *_neutral_*.appx*
    call :InstallAppx *_neutral_*.Msi*
    
    pause&exit
    
    :InstallAppx
    for /f "delims=" %%i in ('dir /b "%~dp0Appx\%1"') do (
       set Licence=-SkipLicense
       set "Appx=%~dp0Appx\%%i"
       for %%j in ("!Appx!") do (set fiename=%%~nj)
       for /f "tokens=1 delims=_" %%k in ("!fiename!") do (set prefix=%%k)
       for /f "delims=" %%l in ('dir /b "%~dp0Appx\!prefix!*.xml"') do (set "Licence=-LicensePath '%~dp0Appx\%%l'")
       >nul PowerShell -command "Add-AppXProvisionedPackage -Path C:\temp -PackagePath '!Appx!' !Licence!; Add-AppxPackage -Path '!Appx!'"
    )
    exit /b
    I don't understand, what I need to remove from it.
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  4. abbodi1406

    abbodi1406 MDL KB0000001

    Feb 19, 2011
    17,300
    91,411
    340
    Code:
    ; Add-AppxPackage -Path '!Appx!'
     
  5. ceo54

    ceo54 MDL Addicted

    Aug 13, 2015
    904
    398
    30
    All done, thanks abbodi, your help is highly appreciated.

    God bless you bud.
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...