Fehlende Sekundärsprachen-Dateien bei ClickOnce-Veröffentlichungen

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

Eine .NET 8.0 Konsolenanwendung, die IronOCR mit einem Sekundärsprachpaket (Spanisch, Japanisch usw.) verwendet, läuft innerhalb von Visual Studio einwandfrei, aber beim Lauf mit ClickOnce nach Veröffentlichung gibt es Fehler. Die Sprachdatendateien gelangen nie in das Veröffentlichungs-Output.

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

ClickOnce veröffentlicht nur, was es explizit weiß. Sekundärsprachige .ocrdata Dateien werden nicht automatisch erkannt oder gebündelt, daher werden sie beim Deployment stillschweigend weggelassen, obwohl das Paket installiert ist.

Lösung

Markieren Sie die Sprachpaketdateien zur Veröffentlichung, damit ClickOnce sie in die Bereitstellung überträgt. Wählen Sie die Option, die zu Ihrem Projekt passt.

Option 1: Markieren Sie jede Datei als Inhalt

Finden Sie die .ocrdata Dateien in Ihrem Build-Ausgabeordner, üblicherweise:

bin\Debug\net8.0\OcrData

Für jede Datei im OcrData Ordner setzen Sie:

  • Build Action: Content
  • In Ausgabeverzeichnis kopieren: Copy if newer

Das kopiert die Dateien in den Build-Ordner und zieht sie in den ClickOnce Veröffentlichungsprozess.

Option 2: Einschließen in das .csproj

Wenn der Ordner automatisch generiert oder groß ist, bearbeiten Sie das .csproj, um jede .ocrdata Datei rekursiv einzuschließen, anstatt jede einzeln in der UI zu verwalten:

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

Das Glob hält die neuen Sprachdateien synchron, ohne die Projektreferenzen zu berühren, wann immer sich der Ordner ändert.

Curtis Chau
Technischer Autor

Curtis Chau hat einen Bachelor-Abschluss in Informatik von der Carleton University und ist spezialisiert auf Frontend-Entwicklung mit Expertise in Node.js, TypeScript, JavaScript und React. Leidenschaftlich widmet er sich der Erstellung intuitiver und ästhetisch ansprechender Benutzerschnittstellen und arbeitet gerne mit modernen Frameworks sowie der Erstellung gut strukturierter, optisch ansprechender ...

Weiterlesen
Bereit anzufangen?
Nuget Downloads 6,136,090 | Version: 2026.7 gerade veröffentlicht
Still Scrolling Icon

Scrollst du immer noch?

Sie brauchen schnell einen Beweis? PM > Install-Package IronOcr
Führen Sie ein Beispiel aus und beobachten Sie, wie Ihr Bild zu durchsuchbarem Text wird.