SatDLL サンプル : Win32 アプリケーションの多言語リソースの実装

SatDLL サンプルでは、ローカリゼーションとグローバリゼーションに関連するさまざまな項目を示します。

  • 1 つのメイン EXE ファイルと、ユーザー インターフェイスの異なる言語バージョンが含まれる各サテライト DLL をビルドする、ソリューションの設定方法。

  • 選択した言語が使用できない場合に、言語のフォールバック機能を備えたサテライト DLL 読み込み機構を実装するための推奨方法。

  • すべての Windows バージョンでユーザー インターフェイスに設定された言語を検出するコード。

  • ユーザーの変更要求に応じて、ユーザー インターフェイス言語を動的に切り替える方法。ただし、ユーザーが選択したユーザー インターフェイス言語を持続的に使用する方法については説明していません。

  • 汎用の文字エンコーディング マップ関数を使用して、同じソース コードから ANSI バージョンと Unicode バージョンのアプリケーションをビルドする方法。

セキュリティに関するメモセキュリティに関するメモ

このサンプル コードは概念を示すためのものであり、その概念に関連するコードのみを示しています。 特定の環境について必ずしもセキュリティ要件を満たしていませんので、そのまま使用しないでください。 セキュリティおよびエラー処理コードを追加して、プロジェクトをより安全かつ堅牢にすることをお勧めします。 これらのサンプル コードは、現状有姿のままで提供されるものであり、一切保証されていません。

サンプルとそのインストール手順を取得するには

Visual Studio のサンプルにアクセスするには

  • [ヘルプ] メニューの [サンプル] をクリックします。

    既定では、これらのサンプルは drive:\Program Files\Microsoft Visual Studio 10.0\Samples\ にインストールされています。

  • このサンプルの最新バージョンと他のサンプルの一覧については、MSDN Web サイトの Visual Studio のサンプルを参照してください。

サンプルのビルドと実行

このサンプルをビルドして実行するには

  1. satdll.sln ソリューション ファイルを開きます。

  2. [ビルド] メニューの [ソリューションのビルド] をクリックします。

  3. [デバッグ] メニューの [デバッグなしで開始] をクリックします。

既定の構成では、このソリューションがビルドする Unicode アプリケーションには、西ヨーロッパの言語と日本語のすべての文字をユーザー インターフェイスに正しく表示できる言語サポートを備えた Windows 2000 以降のバージョンが必要です。

プロジェクト全般の設定で [文字セット] を [マルチ バイト文字セットを使用する] に変更すると、サンプルを以前のバージョンの Windows プラットフォーム用にコンパイルできます。 ただし、言語の切り替えは、以前のバージョンの Windows の ANSI コード ページによってサポートされた言語だけに制限されます。

注意

このサンプルのデバッグ時の現在のディレクトリは、デバッグ ディレクトリではなく、ソリューション ディレクトリです。そのため、サテライト DLL (1031、1033、および 1041) のディレクトリは、ソリューション ディレクトリに作成されます。アプリケーションをエンド ユーザーに配信する場合、サテライト DLL の各ディレクトリは、メイン実行可能ファイルが置かれているディレクトリ内に作成することが必要です。

キーワード

このサンプルでは、次のキーワードを使用します。

LoadString; LoadMenu; LoadAccelerators; LoadIcon; LoadCursor; DialogBox; CreateFontIndirect; DrawText; InvalidateRect; UpdateWindow; DestroyMenu; SetMenu; DrawMenuBar; GetLocaleInfo; GetCurrentDirectory; FindFirstFile; FindNextFile; LoadLibrary; EnumResourceLanguages; GetVersionInfoEx; RegOpenKeyEx; RegQueryValueEx; RegCloseKey; GetUserDefaultUILanguage; GetUserDefaultLangID; _tWinMain; _tcscpy; _tcsncpy; _tcslen; _tcsclen; _tcscat; _ttoi; _itot

参照

概念

MFC アプリケーションのローカライズされたリソース: サテライト DLL

その他の技術情報

国際化対応のサンプル

一般的なサンプル