簡體   English   中英

如何從C ++的Windows XP上的管理員進程獲取有關已登錄用戶的語言環境信息?

[英]How do I get locale information about logged-in user from an administrator process on Windows XP in c++?

這里的其他人至少已經兩次問過一個類似的問題(請參閱下面的鏈接),但從未正確回答,也許是因為它的方法不正確。 我走吧:

我有一個在Windows上的本地帳戶下運行的進程,如果有一個或多個會話,則需要有關登錄到該交互式會話的用戶的語言環境信息。

我需要知道用戶的語言和國家/地區設置,並且它必須在所有Windows XP XP Service Pack 3上都可以正常工作。

非常感謝您的回答!

先前沒有真正回答的相關問題:

我將通過以下方式進行操作:

  1. 使用LsaEnumerateLogonSessions枚舉登錄會話
  2. 調用LsaGetLogonSessionData以獲取登錄的用戶SID標識符。
  3. 調用ConvertSidToStringSid函數以獲取sid的字符串表示形式。
  4. 查找注冊表設置HKEY_USERS [USER_SID_STRING] \\控制面板\\國際

該密鑰具有所需的各種信息,並且看起來所有列出的WINAPI功能都可以從Windows XP開始使用。

所以這應該工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM