You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Desktop Bridge打包时,如何阻止卫星程序集被剥离?

阻止Desktop Bridge打包时剥离卫星程序集的方法

嘿,我刚好碰到过一模一样的问题,给你几个亲测有效的解决办法:

1. 修改项目文件(最直接的方案)

右键你的项目,选择「编辑项目文件」(就是那个.csproj或者.vbproj文件),在<PropertyGroup>节点里添加或修改<SatelliteResourceLanguages>配置:

<SatelliteResourceLanguages>none</SatelliteResourceLanguages>

设置成none就表示打包工具不会过滤任何语言的卫星程序集,bin文件夹里所有的VidCoder.resources.dll都会被完整保留。要是你只想保留特定几种语言,也可以直接列出来,比如:

<SatelliteResourceLanguages>bs,cs,de,es,eu,zh</SatelliteResourceLanguages>

2. 调整Package.appxmanifest的语言配置

打开Package.appxmanifest文件,切换到「打包」选项卡,找到「选择要包含的语言」按钮。点击进去后,别只勾选中文,把你需要的所有语言都勾选上,或者直接选「全部」。这样Visual Studio打包时就会自动把对应语言的卫星dll都包含进安装包了。

3. 手动用MakeAppx.exe打包(适合命令行场景)

如果你习惯用命令行打包,那在用MakeAppx.exe的时候,要么别加/l参数指定单一语言,要么明确把所有需要的语言列出来:

MakeAppx pack /d "你的项目bin目录路径" /p "输出的appx文件路径" /l bs,cs,de,es,eu,zh

这样就能确保所有指定语言的卫星程序集都被打包进去。

额外注意点

  • 检查Visual Studio的发布配置,看看是不是不小心只勾选了中文作为目标语言,改成多语言或者全部语言就行。
  • 要是你有自定义的MSBuild脚本或者打包任务,记得排查一下有没有过滤卫星程序集的逻辑,别让这些脚本把其他语言的dll误删了。

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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 03:29:13