在Windows平台上检索系统特定值

时间:2014-07-10 21:22:58

标签: c++ windows msdn

我正在使用C ++开发Windows特定的应用程序。如何获取系统特定信息,如水平/垂直屏幕分辨率,屏幕dpi,地理位置(美国,中国等),系统语言,执行过程的语言等。我使用了一些方法来获取地理位置和语言,但它们返回ID而不是字符串。如何获取String值。

我使用的方法是:

GEOID id = GetUserGeoID(GEOCLASS_NATION);
LANGID lid = GetUserDefaultLangID();

1 个答案:

答案 0 :(得分:0)

你问过几个问题。他们已经在其他堆栈中回答了流量问题。

How to get screen resolution in C++? - 如何获得屏幕分辨率

How to get the current DPI of a system in MFC Application? - 如何获得DPI

您已为地理位置提供了自己的答案。

您已为系统语言提供了自己的答案。

使用这些ID从表中查找信息是正常的。看这篇文章。 Win32 API for getting the language(localization info) of the OS?

我不确定你的意思是“执行过程的语言”。如果您的意思是系统语言,那么您已经有了答案。如果你的意思是除了你正在编码的应用程序之外的任意应用程序的语言,我无法想象有一个单一的答案,并且在许多情况下你根本无法得到它。