Fichiers de Langue Secondaire Manquants dans les Publications ClickOnce

This article was translated from English: Does it need improvement?
Translated
View the article in English

Une application console .NET 8.0 qui utilise IronOCR avec un pack de langue secondaire (espagnol, japonais, etc.) fonctionne bien dans Visual Studio mais échoue à l'exécution une fois publiée avec ClickOnce. Les fichiers de données de langue n'arrivent jamais dans la sortie de publication.

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

ClickOnce ne publie que ce dont il a explicitement connaissance. Les fichiers .ocrdata de langue secondaire ne sont pas reconnus ou intégrés automatiquement, ils sont donc silencieusement éliminés du déploiement même si le package est installé.

Solution

Marquez les fichiers du pack de langue pour la publication afin que ClickOnce les transporte dans le déploiement. Choisissez l'option qui convient à votre projet.

Option 1 : Marquez chaque fichier comme contenu

Localisez les fichiers .ocrdata dans la sortie de votre build, généralement :

bin\Debug\net8.0\OcrData

Pour chaque fichier dans le dossier OcrData, définissez :

  • Action de build : Content
  • Copier dans le répertoire de sortie : Copy if newer

Cela copie les fichiers dans le dossier de build et les intègre au processus de publication ClickOnce.

Option 2 : Incluez-les dans le .csproj

Lorsque le dossier est auto-généré ou grand, éditez le .csproj pour inclure chaque fichier .ocrdata de manière récursive au lieu de gérer chacun dans l'UI :

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

Le glob garde les nouveaux fichiers de langue en synchronisation sans toucher aux références du projet chaque fois que le dossier change.

Curtis Chau
Rédacteur technique

Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes ...

Lire la suite
Prêt à commencer?
Nuget Téléchargements 6,136,090 | Version : 2026.7 vient de sortir
Still Scrolling Icon

Vous faites encore défiler ?

Vous voulez une preuve rapidement ? PM > Install-Package IronOcr
lancez un échantillon regardez votre image se transformer en texte consultable.