Dieses Thema enthält Antworten auf häufig gestellte Fragen und Probleme im Zusammenhang mit dem Multilingual App Toolkit (MAT).
Siehe auch "Verwenden des Multilingual App Toolkits".
Hinweis : Das Toolkit unterstützt sowohl RESW(XAML)- als auch RESJSON-Dateien (JavaScript). In diesem Thema beziehen wir uns jedoch nur auf RESW-Dateien. Eine RESW-Datei wird als Ressourcendatei bezeichnet. Sie enthält Zeichenfolgen, entweder in der Standardsprache oder in eine andere Sprache übersetzt. Der Ordner, der eine RESW-Datei enthält, wird in der Regel nach dem Wert eines Sprachtags benannt.
Benötige ich RESW-Dateien in mehreren Sprachen?
Nein Einer der wichtigsten Vorteile des Toolkits besteht darin, dass RESW-Dateien in mehreren Sprachen nicht erforderlich sind. Das Toolkit verwaltet und synchronisiert die Ressourcen Ihrer App mithilfe von XLF-Dateien. Dadurch werden die Herausforderungen entfernt, die mit der Synchronisierung von Inhalten über mehrere RESW-Dateien hinweg verbunden sind.
Projekte, die übereinstimmende RESW- und XLF-Dateien enthalten, führen dazu, dass die Übersetzungen aus der XLF-Datei ignoriert werden. In diesem Fall wird während des Builds eine Warnung angezeigt, um Sie darüber zu informieren, dass die XLF-Übersetzungen nicht in der endgültigen App enthalten sind. Eine RESW-Datei und XLF-Datei stimmen überein, wenn sie über eine Zielsprache mit demselben Sprachcode verfügen. Ein Beispiel für ein übereinstimmende Paar wäre Strings\de-DE\Resources.resw
und eine <project-name>.de-DE.xlf
Datei (enthaltend target-language="de-DE"
).
Kann ich RESW-Dateien in mehreren Sprachen haben?
Das können Sie, aber wir raten davon ab. Wenn Sie RESW-Dateien in mehrere Sprachen in Ihr Projekt aufnehmen und das Toolkit verwenden möchten, stellen Sie sicher, dass sie keine übereinstimmenden RESW- und XLF-Dateien haben.
Im Menü "Extras" wird keine Option zum Aktivieren des Multilingual App Toolkit angezeigt.
Probieren Sie diese Schritte aus.
- Stellen Sie sicher, dass Sie den Projektknoten und nicht den Projektmappenknoten auswählen, bevor Sie das Menü "Extras " öffnen.
- Vergewissern Sie sich, dass die Toolkiterweiterung mithilfe des Visual Studio-Erweiterungs-Managers installiert ist.
- Vergewissern Sie sich, dass ihr Projekt ein UWP-Projekt ist.
Beim Erstellen meines Projekts wird keine Meldung angezeigt, dass ein Multilingual App Toolkit-Build gestartet wurde.
Vergewissern Sie sich, dass Sie das MAT für Ihr Projekt aktiviert haben. Wählen Sie im Menü Tools die Option Multilingual App Toolkit>Enable. Wenn Ihr Projekt mit einer früheren Version aktiviert wurde, deaktivieren und wieder aktivieren Sie das MAT mithilfe des Menüs "Extras ". Dadurch wird das Projekt aktualisiert, um mit der neuen Version des Toolkits zu arbeiten.
Stellen Sie sicher, dass die Komponente "Buildaufgabe für alle Visual Studio-Editionen" installiert wurde. Diese Buildkomponente wird mit der Erweiterung installiert, kann aber während der Installation manuell deaktiviert werden. Diese Komponente ist erforderlich, um die XLF-Dateien zu aktualisieren und die Übersetzung in die PRI-Datei hinzuzufügen. Wenn diese Komponente installiert und ordnungsgemäß funktioniert, werden diese Buildmeldungen angezeigt.
1> Multilingual App Toolkit build started.
1> Multilingual App Toolkit build completed successfully.
Das Toolkit meldet, dass während des Builds keine XLIFF-Sprachdateien gefunden wurden.
No XLIFF language files were found. The app will not contain any localized resources.
Diese Meldung wird angezeigt, wenn das Toolkit keine Dateien im Projekt mit der Erweiterung XLF findet. Das Toolkit generiert und speichert diese Dateien standardmäßig im MultilingualResources
Ordner. Sie können verschoben werden; Aber es empfiehlt sich, sie in diesem Ordner zu belassen, da der Multilingual Editor die zugehörigen Metadatendateien finden kann.
Meine XLF-Datei ist nicht in der Liste der Dateien enthalten, die vom Toolkit während des Builds verarbeitet werden.
Wenn Sie eine XLF-Datei manuell aus dem Projekt ausschließen und dann erneut einschließen, wird das Dateitypelement möglicherweise nicht ordnungsgemäß festgelegt. Wählen Sie in Visual Studio die Datei aus, und überprüfen Sie die Eigenschaftenfenster. Die Buildaktion der Datei sollte auf "XliffResource" festgelegt werden, und "In Ausgabeverzeichnis kopieren" sollte auf "Nicht kopieren" festgelegt werden. So sollte der Verweis in Der Projektdatei aussehen.
<XliffResource Include="MultilingualResources\<project-name>.fr-FR.xlf" />
Ich habe XLF-basierte Sprachen hinzugefügt. Wo befinden sich meine Zeichenfolgen?
Die Standardsprache Resources File (.resw) ist Ihr kanonisches "Schema" der Zeichenfolgen, die Ihre App verwendet. Übersetzte Ressourcendateien können alle oder eine Teilmenge dieser Zeichenfolgen enthalten.
Wenn Sie Ihr Projekt erstellen, werden Ihre Ressourcendateien und Ihre XLF-Dateien synchronisiert.
- Die XLF-Dateien werden aktualisiert, um alle hinzugefügten oder entfernten Zeichenfolgen widerzuspiegeln oder Ressourcendateien hinzuzufügen oder zu entfernen.
- Die Ressourcendateien werden aktualisiert, um alle übersetzten Zeichenfolgen in den XLF-Dateien widerzuspiegeln.
Dies wird im Thema "Multilingual App Toolkit" ausführlich erläutert.
Beim Erstellen meines Projekts bleiben die XLF-Dateien leer.
Bevor Sie MAT effektiv verwenden können, muss Ihre App lokalisierbar sein. Dies wird im Thema "Multilingual App Toolkit" ausführlich erläutert.
Was ist Microsoft Translator?
Microsoft Translator ist ein cloudbasierter Dienst, der maschinelle Übersetzungen bereitstellt. Maschinelle Übersetzung ist ideal für den Zugang zu Übersetzungen, wenn die menschliche Übersetzung nicht angemessen ist. Weitere Informationen finden Sie unter Microsoft Translator.
Das Toolkit verwendet den Microsoft Translator-Dienst, um Ihnen Übersetzungsvorschläge bereitzustellen. Sie können sehen, welche Sprachen von Microsoft Translator unterstützt werden, wenn das Microsoft Translator-Symbol im Dialogfeld "Übersetzungssprachen" vorhanden ist.
Sie können Ihre App schnell mithilfe von Microsoft Translator aus dem Mehrsprachigen Editor übersetzen, indem Sie eine Zeichenfolge auswählen und auf "Übersetzen" klicken.
Was ist Pseudosprache und was sind Pseudoressourcen-Tracker?
Pseudosprache ist eine künstliche Modifikation des Softwareprodukts, das die lokalisierung realer Sprache simulieren soll. Weitere Details zu Pseudosprache und Pseudoressourcen-Trackern finden Sie unter "Multilingual App Toolkit".
Gewusst wie meine Spracheinstellung auf Pseudosprache festlegen, damit ich meine Pseudo-Loc'd-Zeichenfolgen testen kann?
Dies wird unter Verwendung des Multilingual App Toolkit erläutert.
Welche Art von Lokalisierbarkeitsproblemen kann ich mithilfe von Pseudosprache finden?
Dies wird unter Verwendung des Multilingual App Toolkit erläutert.
Beim Starten meiner App werden keine Übersetzungen angezeigt, oder meine App wird nur teilweise übersetzt.
Öffnen Sie die XLF-Datei im Multilingual Editor, um zu sehen, ob die Übersetzungen vorhanden sind. Wenn Zeichenfolgen in der RESW-Standardsprache explizit geändert werden, werden alle entsprechenden Übersetzungen aus XLF-Dateien entfernt. Dadurch wird sichergestellt, dass eine Übersetzung ihrer Quellzeichenfolge entspricht. Übersetzen Sie die Zeichenfolgen in den XLF-Dateien, und erstellen Sie sie neu, um die nicht standardmäßige RESW-Datei(n) zu aktualisieren.
Wenn Ihre Zeichenfolgen in den XLF-Dateien übersetzt werden, aber nicht in Ihrer App angezeigt werden, erstellen Sie ihr Projekt neu, um die nicht standardmäßige RESW-Datei(n) zu aktualisieren. Visual Studio optimiert den Befehl "Erstellen", um nur Dateien zu erstellen, die sich seit dem letzten Build geändert haben.
Überprüfen Sie ihre Spracheinstellungsreihenfolge. Stellen Sie sicher, dass die zu testende Sprache oben in der Liste der Spracheinstellungen in den Einstellungen aufgeführt ist.
Das Toolkit meldet Fehler 0x80004004 in der Buildausgabe.
Merge of Loc PRI file failed calling makepri.exe: "0x80004004"
Diese Meldung kann angezeigt werden, wenn das Regionsformat mit dem Toolkit-Buildvorgang in Konflikt tritt. Die Problemumgehung besteht darin, ihre Sprache in "Einstellungen" beim Erstellen in "en-US" zu ändern.
Das Toolkit meldet Fehler 0x80004005 in der Buildausgabe.
Merge of Loc PRI file failed calling makepri.exe: "0x80004005"
Diese Meldung kann angezeigt werden, wenn die XLF-Datei eine nicht unterstützte Zielsprache enthält. Beispielsweise ist "zh-cht" falsch (ändern Sie es in "zh-hant"), und "zh-chs" ist falsch (ändern Sie es in "zh-hans").
Gibt es eine Möglichkeit, weitere Informationen zu den fehlern zu finden, die ich sehe?
Ja, Sie können die ausführliche Protokollierung in Visual Studio aktivieren. Klicken Sie auf "Extras>optionen>Projects" und "Solutions>Build" und "Ausführen". Ändern Sie die MsBuild-Projektbuild-Ausgabedegalität von Minimal in Normal oder höher.
Das Ausführen von MSBuild über die Befehlszeile kann auch zusätzliche Nachrichten erzeugen.
msbuild /t:rebuild <project-name>
Fehler beim Importieren der Übersetzung
Der Importvorgang führt vor dem Importieren eine grundlegende Überprüfung durch. Dadurch wird sichergestellt, dass die Informationen zur Zielkultur in den zu importierenden Dateien mit denen in den vorhandenen .xlf-Dateien übereinstimmen. Öffnen Sie die XLF-Dateien im Multilingual Editor, und stellen Sie sicher, dass die Kulturinformationen übereinstimmen.
Was geschieht, wenn mein Übersetzer windows 10, Windows 11 und/oder Visual Studio und/oder das Multilingual App Toolkit nicht installiert hat?
Wenn Sie "Ausgabe: E-Mail-Empfänger" im Dialogfeld "Zeichenfolgenressourcen exportieren" auswählen, enthält die E-Mail einen Link zum Herunterladen und Installieren des Multilingual App Toolkit (MAT). Ihr Übersetzer kann das eigenständige Multilingual Editor-Tool MAT auch ohne Windows 10, Windows 11 oder Visual Studio installieren.
Weitere Informationen finden Sie unter Verwenden des Multilingual App Toolkit.
Was ist mit den Dateien "MarkupRules.xml" und "ResourcesLocks.xml" geschehen?
Das Multilingual App Toolkit verwendet keine proprietären Ressourcensperrdateien. Stattdessen wird das XLIFF 1.2-Tag <mrk>
direkt zur XLF-Datei hinzugefügt, um Zeichenfolgen zu identifizieren, die während der maschinellen Übersetzung nicht geändert werden. Dadurch kann die XLIFF-Datei eigenständig sein und die dateibasierte Ressourcensperre ermöglichen.
Diese zusätzlichen Supportdateien werden nicht mehr benötigt, und Sie können sie sicher löschen, wenn Sie sie haben.
Was ist mit der TPX-Datei passiert?
Die TPX-Datei bietet eine einfache Möglichkeit, die MarkupRules.xml
Dateien ResourcesLocks.xml
einzuschließen, wenn die XLF-Datei zur Übersetzung gesendet wurde. Diese Funktionalität ist nicht mehr erforderlich.
Wenn Sie Übersetzungen in einer TPX-Datei haben, die Sie abrufen müssen, benennen Sie einfach die TPX-Dateierweiterung in .zip um. Auf diese Weise können Sie den Inhalt mit Explorer oder einem beliebigen .zip kompatiblen Tool öffnen und extrahieren.
Ich denke, ich habe alles richtig gemacht, aber es funktioniert immer noch nicht
Probieren Sie diese Schritte aus.
- Fügen Sie Übersetzungen mithilfe einer der bereits beschriebenen Methoden hinzu.
- Dump the .pri file (see MakePri.exe command-line options) to see whether your translation are in the .pri file. Übersetzungen werden mit Sprachcode und übersetzten Werten wie folgt angezeigt.
<Candidate qualifiers="Language-QPS-PLOC" type="String"> <Value>[!!_Ŝéãřćĥ_!!]</Value> </Candidate>
- Erstellen aus einer Eingabeaufforderung; Der resultierende Fehler enthält möglicherweise mehr Details als die in der Buildausgabe gemeldeten Angaben.
Die Zertifizierung für meine App für den Microsoft Store ist fehlgeschlagen.
Bevor Sie den Microsoft Store-Zertifizierungsprozess starten, müssen Sie die <project-name>.qps-ploc.xlf
Datei aus Ihrem Projekt ausschließen. Pseudosprache wird verwendet, um potenzielle Lokalisierbarkeitsprobleme oder Fehler zu erkennen, es handelt sich jedoch nicht um eine gültige Microsoft Store-Sprache. Wenn sie nicht entfernt wird, schlägt ihre App während des Microsoft Store-Zertifizierungsprozesses fehl.
Welche Daten sammeln Sie?
Die Erweiterung des Multilingual App Toolkit Visual Studio (MAT VS) sammelt anonyme Nutzungsdaten und sendet sie an Microsoft-Server, um unsere Produkte und Dienste zu verbessern. Telemetrie ist standardmäßig deaktiviert und kann jederzeit aktiviert oder deaktiviert werden.
Nutzungsdaten: Dies sind anonyme Informationen dazu, welche Features verwendet werden. Beispiel: Hinzufügen einer neuen Sprache zu einer MAT-fähigen Lösung.
Konfigurationsdaten: Dies sind anonyme Informationen über die auf der MAT VS installierte Version und die Version von Windows, auf der sie ausgeführt wird.
Nachfolgend finden Sie ein konkretes Beispiel für die im folgenden Format gesammelten Daten, Key / Value / Notes:
- AddLanguage / MachineID: xxxx / Dies basiert auf einem Hash der Netzwerkadapter-NIC. Es ist nicht garantiert einzigartig.
- TimeStamp / 2022/01/07T22:04:45.000000Z / Time Event fand statt.
- MAT_Version / 4.1.02 / Version von MAT installiert.
- Sprachen / fr,es,de/DE / Liste der Sprachen, die zum Projekt hinzugefügt wurden.
Alle Daten werden mithilfe von Application Insights gesammelt und an Azure Log Analytics gesendet. Die Daten werden 90 Tage lang aufbewahrt und dann gelöscht.