Créer un raccourci d’application en exécutant un script à l’aide de l’infrastructure de prise en charge des packages

Ce document vous montre comment créer des raccourcis d’application à l’aide de l’infrastructure de prise en charge des packages qui exécutent des scripts via l' outil d’empaquetage MSIX et l’application contoso Expense WPF.

dépenses contoso

L’idée est de copier le raccourci de l’application, qui sera disponible à l’intérieur du package, sur le Bureau de l’utilisateur par le biais des scripts de fibres discontinues de polyester.

Il y a deux choses à garder à l’esprit :

  1. Créez un raccourci uniquement s’ils sont absolument nécessaires. L’objectif est de ne pas encombrer le Bureau de l’utilisateur.
  2. L’application MSIX doit être installée avant de créer le raccourci, afin de pouvoir spécifier le chemin d’accès de l’application MSIX lors de la création du raccourci.
  3. En même temps, le chemin d’accès de l’application MSIX peut changer, une fois qu’il a le numéro de version spécifié dans le dossier d’installation. Exemple de chemin d’installation de contoso dépenses :

C:\Program Files\WindowsApps\ ContosoExpenses_ 1.0.0.0 _x86__3z09h3y28h0qg

Pour éviter d’avoir à modifier le raccourci de l’application chaque fois que l’application est mise à jour, créez le raccourci en pointant sur le AppExecutionAlias. Le AppExecutionAlias permet au service informatique de lancer l’application avec la valeur définie dans la session d’alias du manifeste de l’application. il n’est donc pas nécessaire de spécifier le chemin d’accès complet de l’application. Par conséquent, avant de créer le raccourci, définissez l’alias dans le manifeste de l’application. Dans le cas contraire, l’Explorateur Windows ne reconnaîtra pas l’alias et ne nous permettra pas de créer le raccourci.

Créer l’alias d’application

Cliquez sur l’élément de menu informations sur le package , puis cliquez sur ouvrir un fichier, disponible en bas de l’interface utilisateur, pour modifier le manifeste d’application :

ouvrir le manifeste msix

Incluez les espaces de noms suivants, qui seront utilisés pour créer l’alias, comme suit :

xmlns:uap3="http://schemas.microsoft.com/appx/manifest/uap/windows10/3" xmlns:desktop="http://schemas.microsoft.com/appx/manifest/desktop/windows10" 

Incluez la valeur uap3 et le Bureau dans l’élément ignorablenamespaces en spécifiant :

IgnorableNamespaces="uap uap3 desktop rescap build"

Incluez l’alias d’exécution de l’application après l' <élément/UAP : VisualElements> :

  <Extensions>
    <uap3:Extension Category="windows.appExecutionAlias"   
                    Executable="ContosoExpenses\ContosoExpenses.exe"
                    EntryPoint="Windows.FullTrustApplication">
      <uap3:AppExecutionAlias>
        <desktop:ExecutionAlias Alias="contosoexpenses.exe" />
        </uap3:AppExecutionAlias>
      </uap3:Extension>
  </Extensions>

Suit le manifeste avec les modifications :

créer un alias

Enregistrez et Fermez le fichier manifeste.

Revenez à l’outil d’empaquetage MSIX et générez un nouveau package. Une fois le package créé, Installez le package et démarrez l’application par le biais de l’alias, par exemple, en appuyant sur Win + R et en tapant contosoexpenses:

lancer à l’aide de l’alias

Maintenant que l’alias est créé, il est possible de passer aux étapes suivantes.

Créer le raccourci vers l’application

Créez un raccourci d’application dans un dossier de votre préférence à l’aide de l’alias contosoexpenses.exe, comme suit :

nouveau raccourci vers l’application

Nommer le raccourci pour Contoso dépenses :

fin de la création de l’application

Par défaut, le raccourci sera une icône générique :

raccourci vers une application générique

La modification du raccourci est simple, mais le défi est ici d’éviter d’utiliser le chemin d’accès complet de l’application qui porte le numéro de version et qui peut changer dans une prochaine mise à jour. Pour résoudre ce cas, vous pouvez copier l’icône du package dans le% AppData% utilisé par l’application MSIX, c’est-à-dire le dossier %localappdata%\packages\ ContosoExpenses_3z09h3y28h0qg \localcache\roaming _ qui n’a pas de numéro de version.

Pour modifier le raccourci de l’application, pour le moment, il est nécessaire de copier manuellement l’icône dans ce dossier. Cela sera automatisé ultérieurement à l’aide de scripts de fibres discontinues.

raccourci AppData

Maintenant, il est possible de remplacer l’icône de raccourci par le chemin d’accès% LocalAppData% :

nouveau raccourci du chemin

Toujours dans les propriétés de raccourci, tirez parti et modifiez les valeurs de la cible et Démarrez dans les propriétés para % LocalAppData% \Microsoft\WindowsApps\contosoexpenses.exe , respectivement :

raccourci des nouvelles valeurs

Maintenant que le raccourci fonctionne, l’étape suivante consiste à l’ajouter au package et à automatiser le processus de création.

nouveau raccourci

Récupérer les fichiers de fibres discontinues

Téléchargez le PSFBinaries.zip à partir du référentiel GitHub de fibresdiscontinues.

fibres discontinues des versions GitHub

Extrayez les fichiers requis de 32 ou 64 bits à la racine de votre répertoire de packages, selon que votre application est 32 ou 64 bits. Inspirez-vous du tableau suivant.

L’exécutable de l’application est x64 L’exécutable de l’application est x86
PSFLauncher64.exe PSFLauncher32.exe
PSFRuntime64.dll PSFRuntime32.dll

Inclure les fichiers de fibres discontinues dans le package

Modifiez les dépenses de contoso via l' outil d’empaquetage MSIX :

fibres discontinues de GitHub modifier MPT

Cliquez sur l’élément de menu fichiers du package , cliquez avec le bouton droit sur le dossier du package , puis sélectionnez Ajouter un fichier...:

fibres discontinues de GitHub ajouter des fichiers de fibres discontinues

Étant donné que la build ContosoExpense est 32 bits, elle a été ajoutée aux fichiers requis 32-bit de fibres de polyesters. Le contenu de votre package doit maintenant ressembler à ceci :

les fibres discontinues des fibres GitHub ont ajouté des fichiers

Mettre à jour le manifeste du package pour les fibres discontinues

Cliquez sur l’élément de menu informations sur le package , puis cliquez sur ouvrir un fichier, disponible en bas de l’interface utilisateur, pour modifier le manifeste d’application :

fibres discontinues du manifeste de modification GitHub

Dans cette étape, il est nécessaire de modifier le point d’entrée de l’application (ContosoExpenses\ContosoExpenses.exe) par le PSFLauncher32.exe.

 <Application Id="App" Executable="PSFLauncher32.exe" EntryPoint="Windows.FullTrustApplication">

Enregistrez et Fermez le fichier manifeste.

Créer le config.jssur le fichier

Revenez à l' outil d’empaquetage MSIX, cliquez sur fichiers du package, sélectionnez le dossier du package et ajoutez une nouvelle config.jssur le fichier avec le contenu suivant.

{
  "applications": [
    {
      "id": "App",
      "executable": "ContosoExpenses\\ContosoExpenses.exe",
      "workingDirectory": "ContosoExpenses\\",
      "startScript":
      {
        "scriptPath": "createshortcut.ps1",
        "runInVirtualEnvironment": false,
        "waitForScriptToFinish": true,
        "showWindow": false,
        "runOnce": true
      }
    }
  ]
}

👀 Notez que l’ID d’application est le même que celui du manifeste :

Le config.jssur le fichier doit être créé à la racine du package, comme suit :

fibres discontinues de GitHub

L' config.jssur le fichier est utilisé pour spécifier que le script createshortcut.ps1 ne doit s’exécuter qu’une seule fois lors de la première initialisation de l’application. Comme le Répertoire de travail est défini sur ContosoExpenses, le script createshortcut.ps1 (qui sera créé plus tard) et le script StartingScriptWrapper.ps1 (à partir des fichiers de fibres discontinues) doivent être ajoutés au dossier ContosoExpenses .

Créer le script PowerShell

Créez le script createshortcut.ps1 avec le contenu suivant :

Copy-Item "Contoso Expenses.lnk" "$env:USERPROFILE\desktop\Contoso Expenses.lnk"

Copy-Item "contoso.ico" $env:APPDATA\contoso.ico

Le script createshortcut.ps1 copie le raccourci « contoso dépenses. lnk » , créé précédemment et qui sera disponible à l’intérieur du package, sur le Bureau de l’utilisateur. La deuxième instruction copie l’icône Contoso dans le dossier MSIX APPDATA (%localappdata%\Packages\ ContosoExpenses_3z09h3y28h0qg \LocalCache\Roaming ) .

L’étape suivante consiste à copier les fichiers suivants dans le dossier ContosoExpenses du package :

  • Dépenses contoso. lnk
  • Contoso. ico
  • StartingScriptWrapper.ps1
  • createshortcut.ps1

Enfin, la dernière étape consiste à créer et à installer la nouvelle version du package d’application. Lors de la première initialisation de l’application, le script createshortcut.ps1 s’exécute et il crée le raccourci contoso Expense dans le Bureau de l’utilisateur.