編集

次の方法で共有


多言語アプリ ツールキットに関する FAQ & トラブルシューティング

このトピックでは、多言語アプリ ツールキット (MAT) に関連してよく寄せられる質問と問題に対する回答を示します。

多言語アプリ ツールキットを使用する」も参照してください。

ツールキットでは、.resw (XAML) ファイルと .resjson (JavaScript) ファイルの両方がサポートされています。 ただし、このトピックでは .resw ファイルのみを参照します。 resw ファイルはリソース ファイルと呼ばれます。 既定の言語または別の言語に翻訳された文字列が含まれています。 .resw ファイルを含むフォルダーには、通常、言語タグの値の名前が付けられます。

複数の言語の .resw ファイルが必要ですか?

いいえ。 ツールキットの主な利点の 1 つは、複数の言語の .resw ファイルが不要であるという点です。 ツールキットは、.xlf ファイルを使用してアプリのリソースを管理および同期します。 これにより、複数の .resw ファイル間でコンテンツの同期を維持することに関連する課題が排除されます。

一致する .resw ファイルと .xlf ファイルを含むプロジェクトでは、.xlf ファイルからの変換は無視されます。 この場合、ビルド中に 、.xlf 翻訳が最終的なアプリに含まれていないことを知らせる警告が表示されます。 .resw ファイルと .xlf ファイルは、同じ言語コードを持つターゲット言語がある場合に一致します。 一致するペアの例として、 Strings\de-DE\Resources.resw<project-name>.de-DE.xlf ファイル ( target-language="de-DE"を含む) があります。

複数の言語で .resw ファイルを使用できますか?

できます。ただし、お勧めできません。 プロジェクトに複数の言語で .resw ファイルを含め、ツールキットを使用する場合は、一致する .resw ファイルと .xlf ファイルがないことを確認します。

[ツール] メニューに多言語アプリ ツールキットを有効にするオプションが表示されない

次の手順を試してください。

  • Tools メニューを開く前に、ソリューション ノードではなくプロジェクト ノードを選択してください。
  • Visual Studio 拡張機能マネージャーを使用して、ツールキット拡張機能がインストールされていることを確認します。
  • プロジェクトが UWP プロジェクトであることを確認します。

プロジェクトをビルドするときに、多言語アプリ ツールキットのビルドが開始されたことを示すメッセージが表示されない

プロジェクトの MAT が有効になっていることを確認します。 [ツール] メニューで、[多言語アプリ ツールキット > 選択を有効にする] を選択します。 プロジェクトが以前のバージョンで有効になっていた場合は、 Tools メニューを使用して MAT を無効にして再度有効にします。 これにより、新しいバージョンのツールキットで動作するようにプロジェクトが更新されます。

"すべての Visual Studio エディションのビルド タスク" コンポーネントがインストールされていることを確認します。 このビルド コンポーネントは拡張機能と共にインストールされますが、インストール時に手動で選択解除できます。 このコンポーネントは、.xlf ファイルを更新し、PRI ファイルに変換を追加するために必要です。 このコンポーネントがインストールされ、正常に動作すると、これらのビルド メッセージが表示されます。

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

ツールキットは、ビルド中に XLIFF 言語ファイルが見つからなかったことを報告しています

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

このメッセージは、.xlf の拡張子を持つプロジェクト内のファイルがツールキットで見つからない場合に表示されます。 ツールキットは、既定でこれらのファイルを生成し、 MultilingualResources フォルダーに保持します。 これらは移動できます。ただし、多言語エディターで関連するメタデータ ファイルを検索できるため、そのフォルダーに残しておくことをお勧めします。

ビルド中にツールキットによって処理されたファイルの一覧に .xlf ファイルが含まれていない

プロジェクトから .xlf ファイルを手動で除外してから再インクルードすると、ファイルの種類の要素が正しく設定されていない可能性があります。 Visual Studio でファイルを選択し、プロパティ ウィンドウを確認します。 ファイルのビルド アクションを XliffResource に設定し、[出力ディレクトリにコピー] を [コピーしない] に設定する必要があります。 プロジェクト ファイルでの参照の外観は次のようになります。

<XliffResource Include="MultilingualResources\<project-name>.fr-FR.xlf" />

xlf ベースの言語を追加しました。 文字列はどこにありますか?

既定の言語リソース ファイル (.resw) は、アプリが使用する文字列の正規の "スキーマ" です。 翻訳されたリソース ファイルには、これらの文字列のすべてまたはサブセットを含めることができます。

プロジェクトをビルドすると、リソース ファイルと .xlf ファイルが同期されます。

  • .xlf ファイルは、追加または削除された文字列、または追加または削除されたリソース ファイルを反映するように更新されます。
  • リソース ファイルは、.xlf ファイル内の翻訳された文字列を反映するように更新されます。

これについては、「 多言語アプリ ツールキットを使用する」で詳しく説明します。

プロジェクトをビルドすると、.xlf ファイルは空のままです

MAT を効果的に使用するには、アプリをローカライズ可能にする必要があります。 これについては、「 多言語アプリ ツールキットを使用する」で詳しく説明します。

Microsoft Translator とは

Microsoft 翻訳ツールは、マシンベースの翻訳を提供するクラウドベースのサービスです。 機械翻訳は、人間の翻訳が得られない場合に翻訳にアクセスするのに最適です。 詳細については、Microsoft 翻訳ツールを参照してください。

ツールキットは、Microsoft 翻訳ツール サービスを使用して翻訳候補を提供します。 Microsoft 翻訳ツール アイコンが [翻訳言語] ダイアログに表示されている場合、Microsoft 翻訳ツールでサポートされている言語を確認できます。

多言語エディター内からMicrosoft 翻訳ツールを使用してアプリをすばやく翻訳するには、文字列を選択して [Translate をクリックします。

擬似言語とは何か、擬似リソーストラッカーとは何ですか?

擬似言語は、実際の言語のローカライズをシミュレートすることを目的としたソフトウェア製品の人工的な変更です。 擬似言語と擬似リソース トラッカーの詳細については、「 多言語アプリ ツールキットを使用する」を参照してください。

操作方法自分の言語設定を擬似言語に設定して、擬似 loc の文字列をテストできるようにしますか?

これについては、「 多言語アプリ ツールキットを使用する」で説明します。

擬似言語を使用して見つけることができるローカライズの問題の種類

これについては、「 多言語アプリ ツールキットを使用する」で説明します。

アプリの起動時に翻訳が表示されないか、アプリが部分的にしか翻訳されない

多言語エディターで .xlf ファイルを開き、翻訳が存在するかどうかを確認します。 既定の言語の .resw ファイルの文字列が明示的に変更されると、対応するすべての翻訳が .xlf ファイルから削除されます。 これは、翻訳がそのソース文字列と一致することを保証するためです。 .xlf ファイル内の文字列を変換し、リビルドして既定以外の言語の .resw ファイルを更新します。

文字列が .xlf ファイルで翻訳されていても、アプリに表示されない場合は、プロジェクトをリビルドして、既定以外の言語の .resw ファイルを更新します。 Visual Studio では、ビルド コマンドが最適化され、前回のビルド以降に変更されたファイルのみがビルドされます。

言語の優先順位を確認します。 テストする言語が、 Settingsの言語設定リストの一番上に表示されていることを確認します。

ツールキットは、ビルド出力でエラー 0x80004004を報告しています

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

このメッセージは、リージョンの形式がツールキットのビルド操作と競合している場合に表示できます。 回避策は、ビルド中に Settings の言語を en-US に変更することです。

ツールキットがビルド出力でエラー 0x80004005を報告しています

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

このメッセージは、.xlf ファイルにサポートされていないターゲット言語が含まれている場合に表示できます。 たとえば、"zh-cht" が正しくありません ("zh-hant" に変更)、"zh-chs" が正しくありません ("zh-hans" に変更します)。

私が見ているエラーに関する詳細情報を見つける方法はありますか?

はい。Visual Studio で詳細ログを有効にすることができます。 Tools>Options>Projects and Solutions>Build and Run をクリックします。 MSBuild プロジェクトのビルド出力の詳細度を最小から標準以上に変更します。

コマンド ラインから MSBuild を実行すると、追加のメッセージを生成することもできます。

msbuild /t:rebuild <project-name>

インポート変換に失敗しました

インポート プロセスでは、インポート前に基本的な検証が実行されます。 これにより、インポートされるファイル内のターゲット カルチャ情報が、既存の .xlf ファイル内のカルチャ情報と一致します。 多言語エディターで .xlf ファイルを開き、カルチャ情報が一致することを確認します。

翻訳ツールに Windows 10、Windows 11、Visual Studio、多言語アプリ ツールキットがインストールされていない場合はどうしますか?

[文字列リソースのエクスポート] ダイアログで [ 出力: メール受信者 を選択すると、多言語アプリ ツールキット (MAT) をダウンロードしてインストールするためのリンクが電子メールに含まれます。 翻訳ツールは、Windows 10、Windows 11、Visual Studio がなくても、MAT スタンドアロンの多言語エディター ツールをインストールできます。

詳細については、「多言語アプリ ツールキットの使用」を参照してください。

'MarkupRules.xml' と 'ResourcesLocks.xml' ファイルはどうなりましたか?

多言語アプリ ツールキットでは、独自のリソース ロック ファイルは使用されません。 代わりに、 XLIFF 1.2 タグが .xlf ファイルに直接追加され、機械翻訳中に変更されない文字列が識別されます。 これにより、XLIFF ファイルを自己完結型にすることができ、ファイルごとのリソース ロックが可能になります。

これらの追加のサポート ファイルは不要になり、お持ちの場合は安全に削除できます。

tpx ファイルはどうですか?

.tpx ファイルは、.xlf ファイルが翻訳のために送信されたときに、 MarkupRules.xml ファイルと ResourcesLocks.xml ファイルを簡単に含める方法を提供しました。 この機能は不要になりました。

取得する必要がある .tpx ファイルに翻訳がある場合は、.tpx ファイル拡張子の名前を .zip に変更するだけです。 これにより、エクスプローラーまたは任意の.zip互換性のあるツールを使用してコンテンツを開いて抽出できます。

私はすべてを正しく行ったと思うが、それはまだ動作していない

次の手順を試してください。

  1. 既に説明されているいずれかの方法を使用して翻訳を追加します。
  2. .pri ファイルをダンプして ( MakePri.exeコマンド ライン オプションを参照)、翻訳が .pri ファイルに含まれているかどうかを確認します。 翻訳は、言語コードと次のような翻訳された値と共に表示されます。
    <Candidate qualifiers="Language-QPS-PLOC" type="String">
        <Value>[!!_Ŝéãřćĥ_!!]</Value>
    </Candidate>
    
  3. コマンド プロンプトからビルドする。結果のエラーには、ビルド出力で報告される内容よりも詳細が含まれる場合があります。

Microsoft Store に対するアプリの認定に失敗しました

Microsoft Store 認定プロセスを開始する前に、プロジェクトから <project-name>.qps-ploc.xlf ファイルを除外する必要があります。 擬似言語は、潜在的なローカライズの問題やバグを検出するために使用されますが、有効な Microsoft Store 言語ではありません。 削除されていない場合、Microsoft Store 認定プロセス中にアプリは失敗します。

どのようなデータを収集していますか?

多言語アプリ ツールキット Visual Studio (MAT VS) 拡張機能は、匿名の使用状況データを収集し、それをMicrosoft サーバーに送信して、製品とサービスの向上に役立ちます。 テレメトリはデフォルトでオフになっており、いつでも有効または無効にすることができます。

使用状況データ: これは、使用されている機能に関する匿名情報です。 たとえば、MAT 対応ソリューションに新しい言語を追加します。

構成データ: これは、インストールされている MAT VS のバージョンと実行されている Windows のバージョンに関する匿名情報です。

次の形式で収集されたデータの具体的な例を次に示します。キー/値/メモ:

  • AddLanguage/ MachineID: xxxx / これは、ネットワーク アダプター NIC のハッシュに基づいています。 一意であるとは限りません。
  • TimeStamp / 2022/01/07T22:04:45.0000000Z / Time イベントが発生しました。
  • MAT_Version / 4.1.02 / インストールされている MAT のバージョン。
  • Languages / fr,es,de/DE / プロジェクトに追加された言語の一覧。

すべてのデータは Application Insights を使用して収集され、Azure Log Analytics に送信されます。 データは 90 日間保持され、削除されます。