1

我希望获得用户 Internet Explorer 浏览器发送到网页(服务器)的“Accept-Language”标头。我想在不连接到网页的情况下执行此操作,但只需通过一些 .dll COM 调用或 Windows API 或其他一些无需连接到互联网即可为我提供此信息的方法。我正在寻找跨越 Window 2000 - Windows 8.1 的最可靠的方法。

我愿意通过发出网络请求来获得它,但更愿意不这样做,即:通过调用 API 或以真正的方式进行(无论是什么)。当我搜索互联网/谷歌时,人们只会显示涉及连接到某些服务器等的代码示例......我找不到这样做的本地(非互联网)方法。

有人知道吗?我使用的是 VB6 (Visual Basic 6.0),但可以使用 VB.NET 或 C# 中的代码示例,因为它们对我来说很容易翻译。

4

1 回答 1

2

接受语言存储在注册表中(帮助:如何使用 C# 代码更改 Internet Explorer 的默认语言?):

HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\International
 REG_SZ: AcceptLanguage

 example en-gb,ar-eg;q=0.5

在 vb.net 中很简单(如何:从 Visual Basic 中的注册表项中读取值

Dim readValue = My.Computer.Registry.GetValue("HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\International",
 "AcceptLanguage",Nothing)

在 vb6 中必须使用 API 参见:Microsoft:How To Use the Registry API to Save and Retrieve Setting

于 2013-09-27T17:06:47.033 回答