IRONSOFTWAREHOME

ClickOnce发布中缺少第二语言文件

Curtis Chau
Curtis Chau
Updated: 2026年6月29日

一个.NET 8.0控制台应用程序使用了一个次要语言包(如西班牙语、日语等)的IronOCR在Visual Studio内正常运行,但在使用ClickOnce发布后,在运行时会报错。 语言数据文件从未进入发布输出中。

IronOcr.Exceptions.LanguagePackException:
Please install the NuGet Package IronOcr.Languages.Spanish...
Error: 'The file Spanish.ocrdata was not found'
Text

ClickOnce仅发布其明确知道的内容。 次要语言.ocrdata文件没有被自动识别或捆绑,因此即使安装了包,它们也被静默丢弃于部署之外。

解决方案

标记语言包文件以便发布,使ClickOnce将它们带入部署中。 选择适合您项目的选项。

选项1:将每个文件标记为内容

在构建输出中找到.ocrdata文件,通常是:

bin\Debug\net8.0\OcrData
Text

对于OcrData文件夹内的每个文件,设置:

  • 构建动作: Content
  • 复制到输出目录: Copy if newer

这样文件就会被复制到构建文件夹中,并在ClickOnce发布过程中被拉入。

选项2:将它们包含在.csproj

当文件夹是自动生成或较大时,编辑.ocrdata文件,而不是在UI中单独管理它们:

<ItemGroup>
  <Content Include="OcrData\**\*">
    <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
  </Content>
</ItemGroup>
XML

这个glob使新的语言文件与文件夹变化同步,而不影响项目引用。

Curtis Chau
技术作家

Curtis Chau 拥有卡尔顿大学的计算机科学学士学位,专注于前端开发,精通 Node.js、TypeScript、JavaScript 和 React。他热衷于打造直观且美观的用户界面,喜欢使用现代框架并创建结构良好、视觉吸引力强的手册。

...
阅读更多

准备开始了吗?

Nuget Downloads 6,236,385版本:2026.9刚刚发布

立即获取您的免费30 天试用密钥
无需信用卡或创建账户
C# 用于 PDF 的 NuGet 库
通过 NuGet 安装

版本: 2026.9

PM > Install-Package IronOcr
nuget.org/packages/IronOcr/
  1. 在解决方案资源管理器中,右键点击引用,管理 NuGet 包
  2. 选择浏览并搜索"IronOCR"
  3. 选择包并安装
C# PDF DLL
下载 DLL

版本: 2026.9

或在这里下载Windows安装程序。

  1. 下载并解压IronOCR到你的解决方案目录中的~/Libs位置
  2. 在Visual Studio解决方案资源管理器中,右键点击引用。选择浏览,“IronOCR.dll”

许可证售价$999

Key in blue circle

立即获取免费的 30 天试用版密钥

Your trial license will be sent to your email address

无任何限制。100% 解锁。无需信用卡。

bullet_checked无需信用卡或创建账户无任何限制。100% 解锁。无需信用卡。
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
获取您的无义务咨询
填写下面的表格或通过sales@ironsoftware.com
您的资料将始终保密。
深受全球数百万工程师信赖
Iron Software 的客户徽标
立即获取您的免费30 天试用密钥
无需信用卡或创建账户