Multilingual App Toolkit: FAQ und Handbuch zur Problembehandlung

[ Dieser Artikel richtet sich an Windows 8.x- und Windows Phone 8.x-Entwickler, die Windows-Runtime-Apps schreiben. Wenn Sie für Windows 10 entwickeln, finden Sie weitere Informationen unter neueste Dokumentation ]

Installation

Systemanforderungen

Unterstützte Betriebssysteme: Windows 8 (RTM oder höher, 32- und 64-Bit-Editionen).

Erforderliche Software: Microsoft Visual Studio.

Speicherplatzanforderungen: 10 MB (32 Bit), 10 MB (64 Bit).

Unterstützte Programmiersprachen für das Toolkit

Das Toolkit unterstützt die Entwicklung von Windows-Apps im Rahmen der WinRT (Windows-Runtime)-Umgebung. Dazu gehören sowohl RESW (XAML)- als auch RESJSON (JavaScript)-Dateien. Im Rest des Dokuments beschäftigen wir uns jedoch ausschließlich mit RESJSON-Dateien.

Aktivierung des Multilingual App Toolkit

Benötige ich RESJSON-Dateien in mehreren Sprachen?

Nein. Ein großer Vorteil des Toolkits besteht darin, dass mehrsprachige RESJSON-Dateien nicht erforderlich sind. Die Verwaltung und Synchronisierung der Ressourcen Ihrer App durch das Toolkit erfolgt mithilfe der XLF-Dateien des Projekts. Dadurch entfallen die Probleme, die sich ergeben können, wenn die Inhalte mehrerer RESJSON-Dateien synchronisiert werden müssen.

Bei Projekten mit übereinstimmenden RESJSON- und XLF-Dateien werden die Übersetzungen aus der XLF-Datei ignoriert. In diesem Fall wird beim Erstellen eine Warnung mit dem Hinweis angezeigt, dass die XLF-Übersetzungen nicht in die finale App einbezogen werden. Eine RESJSON- und XLF-Datei stimmen überein, wenn sie eine Zielsprache mit demselben Sprachcode enthalten. Beispiel für ein übereinstimmendes Paar: "strings\de-DE\resources.resjson" und "Deutsch (Deutschland).xlf" mit den Zielsprachattributen "de-DE".

Kann ich dennoch RESJSON-Dateien in mehreren Sprachen verwenden?

Dies ist grundsätzlich möglich, wird jedoch nicht empfohlen. Wenn Sie Ihrem Projekt mehrsprachige RESJSON-Dateien hinzufügen und das Toolkit verwenden möchten, müssen Sie darauf achten, dass keine übereinstimmenden RESJSON- und XLF-Dateien vorhanden sind.

Im Menü "Extras" ist keine Option zum Aktivieren des Multilingual App Toolkit verfügbar.

Führen Sie folgende Schritte aus:

  1. Vergewissern Sie sich, dass der Name des Projekt und nicht die Projektmappe ausgewählt wurde, bevor Sie Extras auswählen.
  2. Vergewissern Sie sich, dass die Toolkit-Erweiterung mit dem Erweiterungs-Manager installiert wurde.
  3. Vergewissern Sie sich, dass Ihr Projekt ein Windows Store-App-Projekt ist.

Beim Erstellen des Projekts wird das Multilingual App Toolkit anscheinend nicht gestartet.

Vergewissern Sie sich, dass Ihr Projekt mit der Option Multilingual App Toolkit aktivieren im Menü Extras aktiviert wurde. Wenn Ihre App mit einer früheren Version aktiviert wurde, müssen Sie das Multilingual App Toolkit im Menü Extras zunächst deaktivieren und anschließend erneut aktivieren. Dadurch wird das Projekt aktualisiert, sodass es mit der neuen Version des Toolkits verwendet werden kann.

Vergewissern Sie sich, dass die Komponente "Buildtask für alle Visual Studio-Editionen" installiert wurde. Die Buildkomponente wird zusammen mit der Erweiterung installiert, kann jedoch bei der Installation manuell deaktiviert werden. Diese Komponente wird benötigt, um die XLF-Dateien zu aktualisieren und die Übersetzung in die PRI-Datei einzufügen. Bei einer ordnungsgemäßen Installation und Funktion der Komponente werden folgende Build-Meldungen angezeigt:

1> Multilingual App Toolkit build started.
1> Multilingual App Toolkit build completed successfully.

Das Toolkit meldet, dass keine XLIFF-Sprachdateien bei der Erstellung gefunden wurden.

Meldung:

No XLIFF language files were found.  The app will not contain any localized resources.

Diese Meldung wird angezeigt, wenn vom Toolkit im Projekt keine Dateien mit der Erweiterung XLF gefunden wurden. Diese Dateien werden standardmäßig im Ordner "MultilingualResources" gespeichert. Sie können diese Dateien entfernen. Es wird jedoch empfohlen, die Dateien in diesem Ordner zu belassen, da der Editor so auf die zugehörigen Metadatendateien zugreifen kann.

Klicken Sie mit der rechten Maustaste auf den Projektnamen, und wählen Sie im Projektmappen-Explorer Übersetzungssprachen hinzufügen aus. Das Dialogfeld zum Hinzufügen von XLF-basierten Sprachen wird angezeigt. Bei allen vorhandenen XLF-basierten Sprachen, die das Toolkit findet, ist das jeweilige Auswahlkontrollkästchen bereits aktiviert, um anzugeben, dass die Sprache bereits im Paket enthalten ist.

Meine XLF-Datei ist nicht in der Liste der Dateien enthalten, die vom Toolkit im Rahmen der Erstellung verarbeitet wurden.

Bei XLF-Dateien, die zunächst ausgeschlossen und anschließend wieder eingeschlossen werden, wird das Dateitypelement möglicherweise nicht ordnungsgemäß festgelegt. Um dies zu überprüfen, öffnen Sie die Projektdatei direkt, und untersuchen Sie den enthaltenen Typ der XLF-Datei. Das Typelement muss auf "Keiner" festgelegt sein, damit die Datei vom Toolkit verarbeitet werden kann. Wenn das Element auf "Inhalt" oder auf einen anderen Wert festgelegt ist, ändern Sie die Einstellung in "Keiner". Speichern Sie die Projektdatei, und laden Sie das Projekt erneut.

Beispiel: Der Typ "Deutsch (Deutschland)" ist fehlerhaft.

<Content Include="MultilingualResources\German (Germany).xlf" />
<None Include="MultilingualResources\Pseudo Language %28Pseudo%29.xlf" />

Ich habe mehrere XLF-basierte Sprachen hinzugefügt. Wo sind meine Zeichenfolgen?

Die ausgewählten Sprachen wurden dem Ordner "MultilingualResources" hinzugefügt. Sprachdateien sind nach ihrer Erstellen zunächst leer. Bei der nächsten Neuerstellung werden die XLF-Dateien mit den Zeichenfolgen aus Ihren RESJSON-Dateien gefüllt.

Die XLF-Dateien weisen auch nach dem Erstellen des Projekts keinen Inhalt auf.

Führen Sie folgende Schritte aus:

  1. Verwenden Sie die Option Neu erstellen, um sicherzustellen, dass die XLF-Dateien aktualisiert werden. Visual Studio optimiert den Befehl Erstellen, sodass nur Dateien aktualisiert werden, die sich seit der letzten Ausführung von Erstellen geändert haben. Visual Studio erkennt keine Änderungen, wenn neue XLF-Dateien hinzugefügt werden.
  2. Stellen Sie sicher, dass Ihre App das Designmodell für die Globalisierung und Lokalisierung von Windows Store-Apps unterstützt. Lesen Sie in den anderen Themen zur Globalisierung Ihrer App nach.

Hinzufügen von Sprachen zu Ihrer App

Was ist der Microsoft Translator-Dienst?

Microsoft Translator ist ein Cloud-Dienst für Maschinenübersetzungen. Die Maschinenübersetzung bietet eine gute Möglichkeit, um fremdsprachige Texte zu erhalten, wenn der Aufwand für eine professionelle Übersetzung durch Menschen unverhältnismäßig hoch erscheint. Weitere Informationen erhalten Sie unter Microsoft Translator.

Das Toolkit nutzt den Microsoft Translator-Dienst, um Übersetzungsvorschläge für Entwickler anzuzeigen. Wenn das Microsoft Translator-Symbol im Fenster "Übersetzungssprachen hinzufügen" angezeigt wird, können Sie sehen, welche Sprachen von Microsoft Translator unterstützt werden.

Das Übersetzen Ihrer App mit Microsoft Translator ist ganz einfach. Wählen Sie einfach im Mehrsprachen-Editor eine Zeichenfolge aus, und klicken Sie auf die Schaltfläche "Übersetzen".

Pseudosprache.

Die Pseudosprache ist eine künstliche Variante der Software, die die Lokalisierung von realen Sprachen simulieren soll, dabei jedoch für Muttersprachler lesbar bleibt. Bei der Pseudoübersetzung werden Zeichen ersetzt, und die Länge der Ressourcenzeichenfolgen wird erhöht, um bereits in einem frühen Stadium des Projektzyklus (und noch vor Beginn der Lokalisierung) potenzielle Lokalisierungsprobleme oder Fehler erkennen zu können. Weitere Einzelheiten zum Test der Lokalisierbarkeit mit Pseudosprache finden Sie unter Testen im Hinblick auf die Lokalisierbarkeit.

Was ist die Pseudo-Ressourcenüberwachung?

Neben der Ersetzung und Erweiterung von Zeichen stellt das Pseudo-Modul einen eindeutigen Überwachungsbezeichner für jede Ressource bereit. Dieser Bezeichner wird jeder Zeichenfolge vorangestellt und in Klammern eingeschlossen [xxxxx]. Die Tracker können bei der optischen Überprüfung der Benutzeroberfläche verwendet werden. Sie können dabei helfen, spezifische Ressourcen im Produkt zu finden. Dies gilt insbesondere für mehrfach vorhandene Ressourcen mit ähnlichem oder gleichem Text.

Im folgenden "Hello World"-Textbeispiel wird die Pseudoübersetzung erweitert und nimmt 30 % mehr Platz auf dem Bildschirm ein. Anschließend wird die Ressourcenüberwachung angewendet:

"Hello World" -> "Ĥèĺļõ Ŵòŗłđ" -> "[!!_Ĥèĺļõ Ŵòŗłđ_!!]" -> “[hJ8s1][!!_Ĥèĺļõ Ŵòŗłđ_!!]"

Die Ressourcenüberwachung ist standardmäßig aktiviert. Sie können diese Einstellung in der Datei "PseudoSettings.config" unter dem Attribut "EnableResourceTracker = true" überprüfen. Dieser Parameter kann bei Bedarf in "false" geändert werden.

Ich kann die Pseudosprache nicht in der Liste mit den Spracheinstellungen von Windows 8 finden.

"English (qps-ploc)" wird in der Liste mit den Spracheinstellungen von Windows 8 nicht standardmäßig angezeigt. Gehen Sie wie folgt vor, um "English (qps-ploc)" hinzuzufügen:

  1. Öffnen Sie die Systemsteuerung, und wählen Sie Zeit, Sprache und Region > Sprache aus.
  2. Klicken Sie auf Sprache hinzufügen.
  3. Geben Sie im Suchfeld qps-ploc ein. Geben Sie unbedingt den vollständigen Sprachcode ein. Wenn etwas fehlt, wird in den Suchergebnissen nicht "Pseudosprache" zurückgegeben.
  4. Wählen Sie Englisch (pseudo-qps) aus, und klicken Sie auf Hinzufügen.
  5. Stellen Sie sicher, dass sich Englisch (qps-ploc) am Kopf der Liste der bevorzugten Sprachen befindet.

Testen

Wenn ich meine App starte, werden keine Übersetzungen angezeigt, oder meine App ist nur teilweise übersetzt.

  1. Vergewissern Sie sich, dass Ihre XLF-Datei Übersetzungen enthält.

    Öffnen Sie die XLF-Datei im Mehrsprachen-Editor, um dies zu überprüfen. Wenn die Zeichenfolgen in der RESJSON- oder in der RESW-Datei aktualisiert werden, werden alle zugehörigen Übersetzungen entfernt. Dadurch wird sichergestellt, dass die Übersetzung der jeweiligen Zeichenfolge entspricht. Übersetzen Sie die Zeichenfolge, und führen Sie eine Neuerstellung durch.

  2. Meine Zeichenfolgen sind übersetzt, werden jedoch nicht in der App angezeigt.

    Mit dem Befehl Neu erstellen können Sie sicherstellen, dass die aktualisierte XLF-Datei in die PRI-Datei Ihrer App eingebunden wird. Dank der Optimierung des Befehls Erstellen durch Microsoft Visual Studio wird sichergestellt, dass nur die Dateien aktualisiert werden, die seit dem letzten Build geändert wurden. Derzeit machen die XLF-Dateien nicht automatisch eine Neuerstellung erforderlich.

  3. Überprüfen Sie die Reihenfolge Ihrer Spracheinstellungen.

    Vergewissern Sie sich, dass sich die Sprache, die Sie gerade testen, in den Spracheinstellungen an erster Stelle befindet. Die Sprachen werden von der App in der festgelegten Reihenfolge angezeigt. Wenn die Standardsprache Ihrer App nicht an erster Stelle steht, kann es sein, dass Übersetzungen nie angezeigt werden.

Welche Arten von Problemen bei der Lokalisierbarkeit kann ich mithilfe der Pseudosprache erkennen?

  • Unvollständig dargestellte Elemente der Benutzeroberfläche. In der Pseudosprache werden Ihrer Zeichenfolge zusätzliche Zeichen hinzugefügt. So können Sie besser abschätzen, wie die Zeichenfolge nach einer Übersetzung möglicherweise dargestellt wird.
  • Hartcodierte Zeichenfolgen. Wenn Ihre App in Pseudosprache noch regulären englischen Text enthält, können Sie davon ausgehen, dass die entsprechenden Zeichenfolgen hartcodiert sind und nicht vom Toolkit übersetzt werden können.

Weitere Informationen zur Pseudosprache und zum Testen der Lokalisierbarkeit mithilfe von Pseudosprache finden Sie unter Testen im Hinblick auf die Lokalisierbarkeit.

Meine App wird nicht so dargestellt, wie in den Spracheinstellungen festgelegt.

Die Spracheinstellung wird durch Festlegen der Reihenfolge der einzelnen Sprachen von oben nach unten bestimmt. Vergewissern Sie sich, dass die Reihenfolge Ihren Vorstellungen entspricht, bevor Sie die App bereitstellen. Öffnen Sie dazu die Systemsteuerung, wählen Sie Zeit, Sprache und Region > Sprache und anschließend eine Sprache aus. Klicken Sie auf Nach oben oder Nach unten, um die Reihenfolge zu ändern.

Das Toolkit meldet den Fehler "0x80004004" in der Buildausgabe.

Meldung:

Merge of Loc PRI file failed calling makepri.exe: "0x80004004"

Diese Meldung kann angezeigt werden, wenn ein Konflikt zwischen dem regionalen Format und dem Toolkit-Buildvorgang auftritt. Sie können das Problem jedoch umgehen, indem Sie den Regionscode beim Erstellen auf "en-US" festlegen.

Das Toolkit meldet den Fehler "0x80004005" in der Buildausgabe.

Meldung:

Merge of Loc PRI file failed calling makepri.exe: "0x80004005"

Dieser Fall kann eintreten, wenn die XLF-Datei eine nicht unterstützte Zielsprache enthält. In der Customer Preview des Multilingual App Toolkit wurde fälschlicherweise für traditionelles Chinesisch die Zielkultur "zh-cht" und für vereinfachtes Chinesisch die Zielkultur "zh-chs" verwendet. Dieser Fehler wurden in den nachfolgenden Versionen korrigiert.

Um den Fehler manuell zu beheben, bearbeiten Sie die XLF-Dateien mit den fehlerhaften Codes. Ändern Sie "zh-cht" in "zh-hant" und "zh-chs" in "zh-hans".

Gibt es eine Möglichkeit, weitere Informationen zu den angezeigten Fehler zu erhalten?

Ja. Aktivieren Sie die ausführliche Protokollierung in Visual Studio. Wählen Sie Extras > Optionen aus, um das Dialogfeld Optionen anzuzeigen. Erweitern Sie dann Projekte und Projektmappen, und wählen Sie Erstellen und Ausführen aus. Ändern Sie die Einstellung Ausführlichkeit der MSBuild-Projektbuildausgabe von Minimal in Normal oder höher.

Hinweis  Bei der Ausführung von "msbuild" über die Befehlszeile können weitere Meldungen angezeigt werden. Versuchen Sie, das Projekt über die Befehlszeile von Visual Studio zu erstellen:

msbuild /t:rebuild <projectname>

 

Importieren/Exportieren von XLIFF-Dateien

Fehler beim Importieren der Übersetzung.

Vor dem Importieren wird eine grundlegende Überprüfung durchgeführt, um sicherzustellen, dass die Informationen bezüglich der Zielkulturen in der vorhandenen XLF-Datei und der zu importierenden XLF-Datei übereinstimmen. Öffnen Sie die XLF-Dateien im Mehrsprachen-Editor, und vergewissern Sie sich, dass die Kulturinformationen übereinstimmen.

Was ist, wenn mein Übersetzer Windows 8, Visual Studio und/oder das Multilingual App Toolkit nicht installiert hat?

Kein Problem! Wenn Sie Zum Übersetzen senden auswählen, wird der E-Mail ein Link zum Herunterladen und Installieren des Multilingual App Toolkit angefügt. Ohne Windows 8 und Visual Studio ist der Mehrsprachen-Editor die einzige installierbare Komponente.

Nachdem die Dateien übersetzt und an Sie zurückgesendet wurden, klicken Sie mit der rechten Maustaste auf die XLF-Datei und wählen Übersetzungen importieren und dann die zurückgesendete XLF-Datei aus.

Veraltete Funktionen

Was ist aus der Datei "MarkupRules.xml" und aus der Datei "ResourcesLocks.xml" geworden?

Die endgültige Version des Multilingual App Toolkit verwendet keine proprietären Ressourcensperrdateien mehr. Stattdessen wird das XLIFF 1.2-Tag "<mrk>" direkt der XLF-Datei hinzugefügt, um Zeichenfolgen zu kennzeichnen, die nicht von der maschinellen Übersetzung geändert werden. Dies ermöglicht eigenständige XLIFF-Dateien sowie die dateibasierte Sperrung von Ressourcen.

Aus diesem Grund werden keine zusätzlichen Unterstützungsdateien mehr benötigt. Sie können daher problemlos aus Projekten entfernt werden, die mit einer früheren Version des Toolkits erstellt wurden.

Was ist aus der TPX-Datei geworden?

Mithilfe der TPX-Datei konnten die Dateien "MarkupRules.xml" und "ResourcesLocks.xml" beim Senden der XLF-Datei zum Übersetzen auf einfache Weise eingefügt werden. Da die beiden Unterstützungsdateien entfernt wurden, wird diese Funktion nicht mehr benötigt.

Wenn Sie Dateien aus einer TPX-Datei benötigen, können Sie einfach die Erweiterung ändern und aus der TPX-Datei eine ZIP-Datei machen. So können Sie die Inhalte mit dem Datei-Explorer oder einem anderen ZIP-kompatiblen Programm öffnen und extrahieren.

Weitere Fragen

Ich habe alle Anweisungen befolgt, es funktioniert aber immer noch nicht.

Führen Sie folgende Schritte aus:

  1. Fügen Sie die Übersetzungen mit einer der bereits beschriebenen Methoden hinzu.

  2. Lesen Sie (die unter Konfiguration von MakePRI.exe) beschriebene PRI-Datei aus, um zu überprüfen, ob die Übersetzungen darin enthalten sind. Übersetzungen werden mit dem Sprachcode und dem übersetzten Wert angezeigt:

    <Candidate qualifiers="Language-QPS-PLOC" type="String">
        <Value>[!!_Ŝéãřćĥ_!!]</Value>
    </Candidate>
    
  3. Erstellung über eine Eingabeaufforderung. Der resultierende Fehler weist möglicherweise zusätzliche Informationen zur Buildausgabe auf.

Ich habe meine App mit dem Multilingual App Toolkit für Visual Studio 11 Beta oder RC aktiviert. Muss ich etwas Bestimmtes beachten?

Ja. Nach dem Installieren des Multilingual App Toolkit v1.0 müssen Sie das Multilingual App Toolkit im Menü Extras zunächst deaktivieren und dann erneut aktivieren. Auf diese Weise wird das Projekt für die neuere Version des Toolkits aktiviert.

Ich habe Windows 8, Visual Studio 2012 und das Multilingual App Toolkit für Visual Studio 11 Beta installiert.

Wenn Sie das Multilingual App Toolkit über Programme und Funktionen deinstalliert haben, kann die Release Preview des Toolkits weiterhin nicht installiert werden, weil die Erweiterung noch in Visual Studio installiert ist.

Führen Sie Visual Studio aus, und deinstallieren Sie die Multilingual App Toolkit-Erweiterung über den Erweiterungs-Manager, um das Problem zu beheben.

Meine App hat keine Zertifizierung für den Windows Store erhalten.

Vergewissern Sie sich, dass die App nur unterstützte Sprachen enthält. Vor dem Start des Zertifizierungsprozesses sollten Sie die Datei "Pseudo Language (Pseudo).xlf" aus dem Projekt entfernen. Die Pseudosprache ist keine auswählbare Sprache für den Windows Store, und das Einschließen dieser Sprache birgt für die Kunden keinen Vorteil.

Verwandte Themen

Globalisierung Ihrer App

Microsoft Translator

Testen im Hinblick auf die Lokalisierbarkeit

Konfiguration von MakePRI.exe