[RESUELTO] Agregar AppxProvisionedPackage y parámetro posicional

Preguntas sobre paquetes WAPT / Solicitudes y ayuda sobre paquetes WAPT.
Reglas del foro
Reglas del foro de la comunidad
* Soporte en inglés en www.reddit.com/r/wapt
* El soporte de la comunidad en francés está disponible en este foro
* Por favor, anteponga [RESUELTO] al título del tema si está resuelto.
* Por favor, no edite un tema que esté etiquetado como [RESUELTO]. Abra un nuevo tema haciendo referencia al anterior.
* Especifique la versión de WAPT instalada, la versión completa y el número de compilación (2.2.1.11957 / 2.2.2.12337 / etc.), así como la edición Enterprise/Discovery.
* Las versiones 1.8.2 y anteriores ya no son compatibles. Las únicas preguntas aceptadas sobre la versión 1.8.2 están relacionadas con la actualización a una versión compatible (2.1, 2.2, etc.).
* Especifique el sistema operativo del servidor (Linux/Windows) y la versión (Debian Buster/Bullseye - CentOS 7 - Windows Server 2012/2016/2019).
* Especifique el sistema operativo de la máquina de administración/creación de paquetes y de la máquina con el agente problemático, si corresponde (Windows 7/10/11/Debian 11/etc.).
* Evite hacer varias preguntas al abrir un tema, ya que podría ser ignorado. Si hay varios temas, ábralos por separado, preferiblemente uno tras otro y no todos a la vez (es decir, no sature el foro con spam).
* Incluya fragmentos de código, capturas de pantalla y otras imágenes directamente en la publicación. Los enlaces a Pastebin, Bitly y otros sitios de terceros serán eliminados sistemáticamente.
* Como en cualquier foro comunitario, el soporte es proporcionado voluntariamente por los miembros. Si necesita soporte comercial, puede comunicarse con el departamento de ventas de Tranquil IT al 02.40.97.57.55.
Bloqueado
cefinformática
Mensajes: 31
Inscripciones: 26 de mayo de 2023 - 14:25 horas.

26 de junio de 2025 - 13:19

Versión WAPT: 2.6.0.17293

Buen día,

Estoy intentando crear un paquete para instalar la última versión del cliente 3CX para Windows. Así que recuperé el archivo 3CX.msix y su dependencia: Microsoft.WindowsAppRuntime.1.7_7000.498.2246.0_x64__8wekyb3d8bbwe.msix, y los agregué al directorio de paquetes WAPT.

Luego utilicé esta función:

Código: Seleccionar todo

appx_package_name = "3CX"

def install():
    # Sélection du fichier principal .msix
    bin_path_candidates = glob.glob(makepath(f"{appx_package_name}.msix"))
    if not bin_path_candidates:
        raise Exception(f"Erreur : fichier {appx_package_name}.msix introuvable")
    bin_path = bin_path_candidates[0]

    # Détection des dépendances éventuelles
    dependencies_paths = [
        f'"{a}"' for a in glob.glob("*.msix")
        if not os.path.basename(a).startswith(appx_package_name)
    ]
    dependencies_pathes_str = ", ".join(dependencies_paths)

    # Construction de la commande PowerShell
    add_appx_cmd = (
        f'Add-AppxProvisionedPackage -Online '
        f'-PackagePath "{bin_path}" '
        f'-SkipLicense'
    )
    if dependencies_pathes_str:
        add_appx_cmd += f' -DependencyPackagePath {dependencies_pathes_str}'

    # Vérification de la version installée de l'appx
    appxprovisionedpackage = run_powershell(
        f'Get-AppXProvisionedPackage -Online | Where-Object DisplayName -Like "{appx_package_name}"',
        output_format="json"
    )
    current_version = appxprovisionedpackage[0]["Version"] if appxprovisionedpackage else "0.0.0.0"

    # Installation si version plus récente ou install forcée
    if Version(current_version, 4) < Version(control.get_software_version(), 4) or force:
        print(f"Installing: {os.path.basename(bin_path)}")
        killalltasks(ensure_list(control.impacted_process))
        run_powershell_script(add_appx_cmd.strip(), output_format="text")
    else:
        print(f"{appx_package_name} is already installed and up-to-date.")
Pero cuando pruebo el paquete obtengo el siguiente error:

Código: Seleccionar todo

Invoke-Expression : Impossible de trouver un paramètre positionnel acceptant l\'argument «3CX.msix -SkipLicense _x000D__x000A_</S><S S="Error">-DependencyPackagePath Microsoft.WindowsAppRuntime.1.7_7000.498.2246.0_x005F_x64__8wekyb3d8bbwe.msix»._x000D__x000A_</S><S S="Error">Au caractère Ligne:1 : 2_x000D__x000A_</S><S S="Error">+ (invoke-expression -Command "Add-AppxProvisionedPackage -Online -Pack ..._x000D__x000A_</S><S S="Error">
¿Qué le pasa a mi trabajo?
Última modificación realizada por cefinformatique el 7 de julio de 2025 a las 10:00 a. m., modificada 1 vez.
jlepiquet
Mensajes: 69
Inscripciones: 3 sep 2024 - 16:09 horas.

26 de junio de 2025 - 15:39

Hola,

parece que hay un problema al añadir paquetes como dependencias.
Estoy aprovechando tu solicitud para añadir el paquete a nuestra tienda.

Está disponible en preproducción aquí: https://wapt.tranquil.it/wapt-testing/t ... EPROD.wapt
y estará disponible en producción en 5 días.

Saludos,
cefinformática
Mensajes: 31
Inscripciones: 26 de mayo de 2023 - 14:25 horas.

1 de julio de 2025 - 11:21

Buen día,

¡Gracias por el paquete!

Acabo de probarlo en una máquina con Windows 11 Pro que acabo de reinstalar y aparece este error:

Código: Seleccionar todo

Erreur lors de l'installation de ['cef-3cx-appx(=20.0.895.0-66)']: erreurs dans les paquets [[PackageRequest(package='cef-3cx-appx',version=(Version('20.0.895.0'), 66),architectures=['x64'],locales=['fr'],maturities=['PROD'],tags=['windows-10', 'win-10', 'w-10', 'windows10', 'win10', 'w10', 'windows', 'win', 'w'],min_os_version=Version('10.0.26100'),max_os_version=Version('10.0.26100')), PackageEntry('cef-3cx-appx','20.0.895.0-66' architecture='x64',maturity='PROD',target_os='windows'), 'Traceback (most recent call last):\n  File "C:\\Program Files (x86)\\wapt\\common.py", line 5609, in install\n    result = self.install_wapt(p.localpath,\n  File "C:\\Program Files (x86)\\wapt\\common.py", line 4548, in install_wapt\n    raise e\n  File "C:\\Program Files (x86)\\wapt\\common.py", line 4454, in install_wapt\n    exitstatus = setup.install()\n  File "C:\\WINDOWS\\TEMP\\wapt2x3d94vg\\setup.py", line 36, in install\nIndexError: list index out of range\n']]
Traceback (most recent call last):
  File "<string>", line 1662, in run
  File "C:\Program Files (x86)\wapt\waptservice\waptservice_common.py", line 875, in run
    self._run()
  File "C:\Program Files (x86)\wapt\waptservice\waptservice_common.py", line 1484, in _run
    raise Exception(_('Error during install of {}: errors in packages {}').format(
Exception: Erreur lors de l'installation de ['cef-3cx-appx(=20.0.895.0-66)']: erreurs dans les paquets [[PackageRequest(package='cef-3cx-appx',version=(Version('20.0.895.0'), 66),architectures=['x64'],locales=['fr'],maturities=['PROD'],tags=['windows-10', 'win-10', 'w-10', 'windows10', 'win10', 'w10', 'windows', 'win', 'w'],min_os_version=Version('10.0.26100'),max_os_version=Version('10.0.26100')), PackageEntry('cef-3cx-appx','20.0.895.0-66' architecture='x64',maturity='PROD',target_os='windows'), 'Traceback (most recent call last):\n  File "C:\\Program Files (x86)\\wapt\\common.py", line 5609, in install\n    result = self.install_wapt(p.localpath,\n  File "C:\\Program Files (x86)\\wapt\\common.py", line 4548, in install_wapt\n    raise e\n  File "C:\\Program Files (x86)\\wapt\\common.py", line 4454, in install_wapt\n    exitstatus = setup.install()\n  File "C:\\WINDOWS\\TEMP\\wapt2x3d94vg\\setup.py", line 36, in install\nIndexError: list index out of range\n']]

Exception: Erreur lors de l'installation de ['cef-3cx-appx(=20.0.895.0-66)']: erreurs dans les paquets [[PackageRequest(package='cef-3cx-appx',version=(Version('20.0.895.0'), 66),architectures=['x64'],locales=['fr'],maturities=['PROD'],tags=['windows-10', 'win-10', 'w-10', 'windows10', 'win10', 'w10', 'windows', 'win', 'w'],min_os_version=Version('10.0.26100'),max_os_version=Version('10.0.26100')), PackageEntry('cef-3cx-appx','20.0.895.0-66' architecture='x64',maturity='PROD',target_os='windows'), 'Traceback (most recent call last):\n  File "C:\\Program Files (x86)\\wapt\\common.py", line 5609, in install\n    result = self.install_wapt(p.localpath,\n  File "C:\\Program Files (x86)\\wapt\\common.py", line 4548, in install_wapt\n    raise e\n  File "C:\\Program Files (x86)\\wapt\\common.py", line 4454, in install_wapt\n    exitstatus = setup.install()\n  File "C:\\WINDOWS\\TEMP\\wapt2x3d94vg\\setup.py", line 36, in install\nIndexError: list index out of range\n']]
Traceback (most recent call last):
  File "<string>", line 1662, in run
  File "C:\Program Files (x86)\wapt\waptservice\waptservice_common.py", line 875, in run
    self._run()
  File "C:\Program Files (x86)\wapt\waptservice\waptservice_common.py", line 1484, in _run
    raise Exception(_('Error during install of {}: errors in packages {}').format(
Exception: Erreur lors de l'installation de ['cef-3cx-appx(=20.0.895.0-66)']: erreurs dans les paquets [[PackageRequest(package='cef-3cx-appx',version=(Version('20.0.895.0'), 66),architectures=['x64'],locales=['fr'],maturities=['PROD'],tags=['windows-10', 'win-10', 'w-10', 'windows10', 'win10', 'w10', 'windows', 'win', 'w'],min_os_version=Version('10.0.26100'),max_os_version=Version('10.0.26100')), PackageEntry('cef-3cx-appx','20.0.895.0-66' architecture='x64',maturity='PROD',target_os='windows'), 'Traceback (most recent call last):\n  File "C:\\Program Files (x86)\\wapt\\common.py", line 5609, in install\n    result = self.install_wapt(p.localpath,\n  File "C:\\Program Files (x86)\\wapt\\common.py", line 4548, in install_wapt\n    raise e\n  File "C:\\Program Files (x86)\\wapt\\common.py", line 4454, in install_wapt\n    exitstatus = setup.install()\n  File "C:\\WINDOWS\\TEMP\\wapt2x3d94vg\\setup.py", line 36, in install\nIndexError: list index out of range\n']]
jlepiquet
Mensajes: 69
Inscripciones: 3 sep 2024 - 16:09 horas.

4 de julio de 2025 - 12:34

Hola,

¿tiene algún software antivirus que pueda estar eliminando archivos?
El error que recibió indica que falta el archivo 3CXDMCC.3CX_20.0.895.0_x64__bhm4yemhnd70e.msix. ¿

Podría revisarlo, por favor?

Atentamente,
cefinformática
Mensajes: 31
Inscripciones: 26 de mayo de 2023 - 14:25 horas.

7 de julio de 2025 - 10:00

Hola,

ya descubrí de dónde venía el problema: el paquete busca la ubicación de los archivos msix según el nombre del paquete. Mi nombre de paquete es diferente al tuyo. Así que cambié el nombre del directorio 3cx-microsoft-store y ahora funciona.

¡Gracias! :D
Avatar de usuario
dcardón
Experto en WAPT
Mensajes: 1908
Inscripción: 18 de junio de 2014 - 09:58
Ubicación: Saint Sébastien sur Loire
Contacto :

7 de julio de 2025 - 12:28

Hola Marc,

gracias por tus comentarios, :-)

Denis.
Denis Cardon - Tranquil IT
¡Comparte tus experiencias en WAPT! Envíanos las URL de tus blogs y artículos en la "Tu opinión del foro y los publicaremos en el de WAPT
Bloqueado