如何使用包支持框架运行脚本以创建应用程序快捷方式 |
您所在的位置:网站首页 › 如何创建文件快捷方式图标图片 › 如何使用包支持框架运行脚本以创建应用程序快捷方式 |
使用包支持框架运行脚本来创建应用程序快捷方式
项目10/30/2023
本文档介绍如何使用包支持框架 (PSF) 创建应用程序快捷方式,该框架通过 MSIX 打包工具和 Contoso Expense WPF 应用程序运行脚本。 其思路是通过 PSF 脚本将包中可用的应用程序快捷方式复制到用户的桌面。 需要注意以下几点: 仅当绝对必要时才创建快捷方式。 目标是不使用户的桌面凌乱。 必须在创建快捷方式之前安装 MSIX 应用程序,以便在创建快捷方式期间指定 MSIX 应用程序路径。 同时,在安装文件夹中指定版本号后,MSIX 应用程序路径可以更改。 Contoso Expenses 安装路径的示例:C:\Program Files\WindowsApps\ContosoExpenses_1.0.0.0_x86__3z09h3y28h0qg 为了避免每次更新应用程序时更改应用程序快捷方式,请通过指向 AppExecutionAlias 创建快捷方式。 AppExecutionAlias 允许它使用应用程序清单的别名会话中定义的值启动应用程序,因此无需指定完整的应用程序路径。 因此,在创建快捷方式之前,请在应用程序清单中定义别名。 否则,Windows 资源管理器将无法识别别名,并且不允许我们创建快捷方式。 创建应用程序别名单击“包信息”菜单项,然后单击 UI 底部提供的“打开文件”以编辑应用程序清单: 包括用于创建别名的以下命名空间,如下所示: xmlns:uap3="http://schemas.microsoft.com/appx/manifest/uap/windows10/3" xmlns:desktop="http://schemas.microsoft.com/appx/manifest/desktop/windows10"在 IgnorableNamespaces 元素中包含值 uap3 和 desktop: IgnorableNamespaces="uap uap3 desktop rescap build"在 元素后面包含应用程序的执行别名: 在清单后加上修改: “保存”并“关闭”清单文件。 切换回 MSIX 打包工具并“生成新包”。 创建包后,通过别名安装包并启动应用程序,例如,按 Win+R 并键入 contosoexpenses: 创建别名后,可以继续执行后续步骤。 创建应用程序快捷方式使用别名 contosoexpenses.exe 在首选项文件夹中创建新的应用程序快捷方式,如下所示: 为 Contoso Expenses 命名快捷方式: 默认情况下,快捷方式将是一个通用图标: 更改快捷方式非常简单,但此处的挑战是避免使用具有版本号的完整应用程序路径,其可能会在将来的更新中更改。 解决此问题的一种方法是将图标从包复制到 MSIX 应用程序使用的 %appdata%,即没有版本号的 %localappdata%\Packages\ContosoExpenses_3z09h3y28h0qg\LocalCache\Roaming_ 文件夹。 若要更改应用程序快捷方式,目前需要手动将图标复制到该文件夹。 稍后将使用 PSF 脚本自动执行此操作。 现在,可以将快捷图标更改为 %localappdata% 路径: 依然是在快捷方式属性中,充分利用并相应更改“目标”和“起始位置”属性的值为 %localappdata%\Microsoft\WindowsApps\contosoexpenses.exe 与 %localappdata%\Microsoft\WindowsApps: 现在快捷方式正常工作,下一步是将其添加到包并自动执行创建过程。 获取 PSF 文件从 PSF Github 存储库下载 PSFBinaries.zip。 将所需的 32 位或 64 位文件提取到包目录的根目录,具体取决于应用程序是 32 位还是 64 位。 使用下表作为指南。 应用程序可执行文件为 x64 应用程序可执行文件为 x86 PSFLauncher64.exe PSFLauncher32.exe PSFRuntime64.dll PSFRuntime32.dll 在包中包含 PSF 文件通过“MSIX 打包工具”编辑 Contoso Expense: 单击“包文件”菜单项,单击 Package 文件夹的右侧按钮,然后选择“添加文件...”: 由于 ContosoExpense 的版本为 32 位,因此添加了 PSF 32 位所需的文件。 包内容现在应该如下所示: 更新 PSF 的包清单单击“包信息”菜单项,然后单击 UI 底部提供的“打开文件”以编辑应用程序清单: 在此步骤中,必须通过 PSFLauncher32.exe 更改应用程序入口点 (ContosoExpenses\ContosoExpenses.exe)。 “保存”并“关闭”清单文件。 创建 config.json 文件切换回“MSIX 打包工具”,单击“包文件”,选择 Package 文件夹,并添加包含以下内容的新的 config.json 文件。 { "applications": [ { "id": "App", "executable": "ContosoExpenses\\ContosoExpenses.exe", "workingDirectory": "ContosoExpenses\\", "startScript": { "scriptPath": "createshortcut.ps1", "runInVirtualEnvironment": false, "waitForScriptToFinish": true, "showWindow": false, "runOnce": true } } ] }👀 请注意,应用程序 ID 与清单中相同: 必须在包根目录中创建 config.json 文件,如下所示: config.json 文件用于指定 createshortcut.ps1 脚本应在第一个应用程序初始化中只运行一次。 由于“工作目录”设置为 ContosoExpenses,因此 createshortcut.ps1 脚本(稍后将创建)和 StartingScriptWrapper.ps1 脚本(来自 PSF 文件)必须添加到 ContosoExpenses 文件夹中。 更新 PowerShell 脚本创建包含以下内容的 createshortcut.ps1 脚本: Copy-Item "Contoso Expenses.lnk" "$env:USERPROFILE\desktop\Contoso Expenses.lnk" Copy-Item "contoso.ico" $env:APPDATA\contoso.icocreateshortcut.ps1 脚本会将之前创建的 "Contoso Expenses.lnk" 快捷方式复制到用户桌面,该快捷方式将可在包中使用。 第二个指令将 contoso.icon 复制到 MSIX APPDATA 文件夹 (%localappdata%\Packages\ContosoExpenses_3z09h3y28h0qg\LocalCache\Roaming)。 下一步是将以下文件复制到包的 ContosoExpenses 文件夹: Contoso Expenses.lnk Contoso.ico StartingScriptWrapper.ps1 createshortcut.ps1最后一步是创建并安装新版本的应用程序包。 在第一个应用程序初始化期间,createshortcut.ps1 脚本将运行,它将在用户桌面中创建 Contoso Expense 快捷方式。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |