指定した地理的位置に関する情報を取得する。(Unicode)
GetGeoInfoW Location, GeoType, lpGeoData, cchData, LangId
Location : [int] 情報を取得する地理的位置の識別子。詳細は Table of Geographical Locations を参照。EnumSystemGeoID を呼ぶことで利用可能な値を取得できる。 GeoType : [int] 取得する情報の種別。指定可能な値は SYSGEOTYPE 列挙体で定義される。GeoType の値が GEO_LCID の場合、関数はロケール識別子を取得する。GeoType の値が GEO_RFC1766 の場合、関数は RFC 4646 (Windows Vista) に準拠した文字列名を取得する。詳細は注釈を参照。Windows XP: GeoType に GEO_LCID を指定した場合、取得される文字列は 8 桁の 16 進値である。Windows Me: GeoType に GEO_LCID を指定した場合、取得される文字列は 10 進値である。 lpGeoData : [wstr] 本関数が情報を取得するバッファへのポインタ。 cchData : [int] lpGeoData が示すデータバッファのサイズ。サイズは ANSI 版ではバイト数、Unicode 版ではワード数である。アプリケーションが必要なバッファサイズを取得したい場合、本パラメータを 0 に設定できる。 LangId : [int] Location の値とともに使用される言語の識別子。アプリケーションは GeoType に GEO_RFC1766 または GEO_LCID を指定したうえで、本パラメータを 0 にできる。この設定では、関数は GetUserDefaultLangID を呼んで言語識別子を取得する。注: GeoType が GEO_RFC1766 や GEO_LCID 以外の値である場合、本パラメータは 0 に設定しなければならない。
(プラグイン / モジュール : kernel32.dll)
指定した地理的位置に関する情報を取得する。(Unicode) [戻り値] 成功した場合、出力バッファに取得した地理的位置情報のバイト数 (ANSI) またはワード数 (Unicode) を返す。cchData が 0 の場合、関数は必要なバッファサイズを返す。関数が成功しなかった場合は 0 を返す。拡張エラー情報を取得するには GetLastError を呼ぶ。次のエラーコードのいずれかが返ることがある。 (以下省略) [備考] アプリケーションが GeoType に GEO_RFC1766 を指定する場合、指定する地理的位置識別子に適した言語識別子を LangId に指定する必要がある。適切な言語とは、ロケール非依存の言語、または指定識別子に対応するロケールを持つ言語である。RFC 4646 (Windows Vista) に準拠する結果文字列はロケール名となる。例えば Location に United States の 0xF4、GeoType に GEO_RFC1766、LangId にロケール非依存英語の 0x09 または英語 (United States) の 0x409 を指定すると、関数は正常復帰時に "en-US" を取得する。実際には関数は言語のロケール固有部分を無視する。したがって LangId に英語 (United Kingdom) の 0x809 を指定しても、関数は lpGeoData に "en-US" を書き込む。別の例として、Location に United States の 0xF4、GeoType に GEO_RFC1766、LangId に中国語の 0x04 を指定した場合、関数は正常復帰時に "zh-US" を取得する。これはサポートされるロケールの名前ではない。アプリケーションが GeoType に GEO_LCID を指定する場合、関数は言語識別子をロケール識別子 (LCID) として扱う。指定された地理識別子に何らかの形で関連付けられている場合、ロケール識別子の取得を試みる。 > [!NOTE] > winnls.h ヘッダは、UNICODE プリプロセッサ定数の定義に基づいて本関数の ANSI 版または Unicode 版を自動選択するエイリアスとして GetGeoInfo を定義する。エンコード非依存のエイリアスとエンコード依存のコードを混在させると、コンパイル時または実行時のエラーにつながる不一致が発生する可能性がある。詳細は [Conventions for Function Prototypes](/windows/win32/intl/conventions-for-function-prototypes) を参照。
| プラグイン / モジュール | kernel32.dll |
| バージョン | 1.0 |
| 作成日 | 2026/04/16 |
| 著作者 | IronHSP / CsWin32 bridge |
| URL | https://github.com/inovia/IronHSP |
| 備考 | Win32 API の kernel32.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。 |
| タイプ | 拡張命令 |
| グループ | Win32API |
| 対応環境 |
|
| hs ファイル | hsphelp\win32_kernel32_gen2.hs |