LoadString的怎么确定load哪个语言的资源

LoadString的如何确定load哪个语言的资源?
比如:有一个字符串ID:IDS_STRING,我的rc中对应两个字符串,一个是简体中文的"字符串",另一个是英文的“String”,
那么LoadString如何判断它load哪一个字符串? 

以前我认为是根据调用线程的locale来确定的,后来发现了问题。

设置“区域和语言选项”中的“区域选项”为“英文(美国)”,
然后调用SetThreadLocale设置区域语言为英文。

此时调用LoadString(IDS_STRING),得到的结果却是简体中文的“字符串”!!~~~

不知道LoadString函数到底是依据什么来确定它Load一种语言的资源,请大侠赐教!!!!!谢谢!!!

------解决方案--------------------
BOOL LoadString( 
UINT nID ); 
只是将StringTable中ID为nID的字符串Load到你指定的CString变量中,如:

C/C++ code
#define IDS_FILENOTFOUND 1
CString s;
if (! s.LoadString( IDS_FILENOTFOUND ))
{
    AfxMessageBox("Error Loading String: IDS_FILENOTFOUND");
    ...
}

------解决方案--------------------
探讨
我是想了解LoadString通过什么判断其加载一种语言资源

Kernel32.dll内部调了FindResourceEx,那么传递给FindResourceEx的wLanguageID是怎么得来的呢?