You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何在开始菜单快捷方式中为APPX包的可执行文件添加参数?

在UWP打包的桌面应用快捷方式中添加启动参数

针对你遇到的问题——已经将原生exe打包成APPX并正常安装启动,但无法通过AppxManifest直接添加启动参数,这里有几个可行的解决方案:

方法1:创建批处理中转启动(打包阶段配置)

这个方法需要你重新打包应用,通过批处理文件带参数启动你的launcher.exe

  1. 在你的UWP打包文件夹中新建一个launch_with_param.bat文件,内容如下:
    @echo off
    "%~dp0launcher.exe" --param
    
  2. 打开AppxManifest.xml,找到<Application>节点,将Executable属性的值从launcher.exe改为launch_with_param.bat
    <Application Id="App" Executable="launch_with_param.bat" EntryPoint="Windows.FullTrustApplication">
    
  3. 确保你的AppxManifest根节点Package包含桌面命名空间(如果没有的话添加):
    <Package xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10"
             xmlns:desktop="http://schemas.microsoft.com/appx/manifest/desktop/windows10"
             ...>
    
  4. 重新用makeappx.exe打包并签名,安装后启动开始菜单的快捷方式就会自动带--param参数运行你的exe了。

方法2:手动创建桌面快捷方式(已安装后配置)

如果你不想重新打包,可以手动在桌面创建带参数的快捷方式:

  1. 首先获取应用的安装路径:
    • 打开PowerShell,运行以下命令(替换YourPackageName为你的应用包名,可在AppxManifest的Name属性中找到):
      Get-AppxPackage *YourPackageName* | Select-Object -ExpandProperty InstallLocation
      
    • 复制输出的路径,比如C:\Program Files\WindowsApps\YourPackage_1.0.0.0_x64__abc123
  2. 访问该路径(注意WindowsApps文件夹受系统保护,需要右键选择“获取权限”或通过管理员权限打开),找到launcher.exe
  3. 右键点击launcher.exe,选择“创建快捷方式”,系统会提示无法在当前位置创建,选择“是”将快捷方式放到桌面。
  4. 右键点击桌面上的快捷方式,选择“属性”,在“快捷方式”选项卡的“目标”字段末尾添加 --param(注意前面有空格),最终目标类似:
    "C:\Program Files\WindowsApps\YourPackage_1.0.0.0_x64__abc123\launcher.exe" --param
    
  5. 点击“确定”,之后双击这个快捷方式就会带参数启动应用了。

方法3:PowerShell脚本自动化创建快捷方式

如果需要批量创建或自动化操作,可以用PowerShell脚本:

# 替换为你的应用包名关键词
$packageNameKeyword = "YourPackageName"
$exeName = "launcher.exe"
$arguments = "--param"
$shortcutName = "Launcher with Param.lnk"

$package = Get-AppxPackage *$packageNameKeyword*
if ($null -eq $package) {
    Write-Error "未找到指定的应用包"
    exit 1
}

$exePath = Join-Path $package.InstallLocation $exeName
$shortcutPath = Join-Path [Environment]::GetFolderPath("Desktop") $shortcutName

# 创建快捷方式
$WScriptShell = New-Object -ComObject WScript.Shell
$shortcut = $WScriptShell.CreateShortcut($shortcutPath)
$shortcut.TargetPath = $exePath
$shortcut.Arguments = $arguments
$shortcut.Save()

Write-Host "快捷方式已创建到桌面:$shortcutPath"

运行这个脚本就能自动在桌面上生成带参数的快捷方式。

需要注意的是,开始菜单的默认快捷方式由AppxManifest控制,无法直接修改(修改后会被系统重置),所以如果需要开始菜单的快捷方式带参数,推荐使用方法1重新打包配置。

内容的提问来源于stack exchange,提问作者Biswapriyo

火山引擎 最新活动