问题标签 [windowsversion]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
4702 浏览

windows - 各种 Windows 版本附带的 Kernel32.dll 版本列表?

我正在尝试找出真正的 Windows 版本。出于某种原因,我的 Wise 安装程序有时会在 Windows 7 上报告 XP 版本号。

一种解决方案是查看此处提到的 kernel32.dll 版本: 如何检测真正的 Windows 版本?

我正在尝试找出各种 Kernel32.dll 版本对应的 Windows 版本。

0 投票
2 回答
473 浏览

windows - 如何通过 Win API 调用或(更好)读取注册表值来读取 Windows 构建版本

我们安装的偶尔会检测到错误的 Windows 版本。(它通过内置的 Wise 安装程序功能检测版本以检测系统信息,并没有说明它是如何做到的)。

所以,我正在寻找另一种方法来检测 Windows 版本。Wise 安装程序调用 Windows API 函数的能力非常有限,因此从注册表或特定文件中读取会更容易(当然,我必须将文件版本映射到 Windows 版本)。

我发现了这个讨论线程: http ://www.velocityreviews.com/forums/t513244-best-way-to-get-version-from-registry.html 但它没有引用。所以我不确定它有多可靠。

0 投票
2 回答
4410 浏览

c++ - 将 GetVersionEx 数字转换为操作系统名称

我有这个清单:

这是一个窗口版本列表,信息来自GetVersionEx,数字是:

我想知道这些数字的 Windows 版本名称,例如:“Win XP SP2”

我试过用谷歌搜索,但我发现了不同的信息,在某些地方,一个数字是 XP SP2 的,而在其他地方,同样是 SP3。

我可以将 5.0 识别为 Win 2000,将 5.1 识别为 XP 等。但我也想要 SP 版本,如果它是 Pro 或 Home 版本,我认为 dwBuildNumber 包含该信息。

有人知道如何将数字转换为版本名称吗?

0 投票
6 回答
23044 浏览

c++ - Windows 8 下的 GetVersionEx

我正在编写一个 C++ 代码来确定它在哪个操作系统上运行。我使用GetVersionEx()API 来做到这一点,这段代码作为教程,但它似乎无法处理 Windows 8。有谁知道如何修复它以在 Windows 8 下运行?

0 投票
1 回答
1831 浏览

wpf - 样式 WPF 正常控件取决于 Windows 主题

我已经阅读了很多关于 WPF 主题、皮肤、样式等的内容......但仍有一些我无法实现的东西。

我有自定义控件,它们的样式取决于操作系统主题,通过在每个主题文件(Aero.NormalColor.xaml、Luna.NormalColor.xaml 或 Aero2.NormalColor.xaml)中具有不同的样式,这就像一个魅力.

我不在 App.xaml 中加载/强制任何主题,每个控件(如按钮)根据操作系统主题保持样式。所以我在 XP 上看到 XP 按钮,在 Windows 7 上看到 Win7 按钮,在 Windows 8 上看到 Win8 按钮。

我还有 ResourceDictionaries 加载在 App.xaml 中,其中包含不同普通 wpf 控件的“命名”(显式 x:Key)样式。它们看起来像这样:

我像这样使用它们

所以现在,我的 BlackComboBox 在每个 Windows (XP/7/8) 上都是一样的。

我试图实现的是根据操作系统主题为这些普通控件设置不同的样式,而不必对控件进行子类化(我认为为每个需要特定于操作系统的控件创建一个子类将是矫枉过正),所以 BlackComboBox 在每个操作系统上可能会有所不同。

我已经尝试在主题文件中放置具有相同键的样式,但这似乎不起作用。

我考虑过在运行时加载一个不同的 ResourceDictionary ,其中包含所需操作系统版本的样式:

  • 但它看起来像一个丑陋的解决方案。
  • 我不喜欢检查 System.Environment.OSVersion。
  • 它不会依赖于主题,而是依赖于操作系统。

对我来说,最好的方法似乎是能够在主题文件中使用“命名”样式,这种样式会覆盖 ResourceDictionaries 中的样式。

谢谢您的帮助!

0 投票
2 回答
1006 浏览

.net - 将 Windows 版本号转换为双倍

我有这个问题:

我在 Win7 上运行,所以我想获得这个值作为十进制或双精度:“ 6.1 ”但我得到的是:“ 61

这就是我想要做的:

更新:

也尝试过这个想法,但返回“61”

0 投票
1 回答
242 浏览

windows-8 - Windows 8 次要版本返回 0 而不是 2

我有 C++ 中的代码,目的是查找 Windows 版本:

iRet 将返回一个标识 Windows 版本的内部枚举值。它将根据osvi.dwPlatformId、osvi.dwMajorVersion和osvi.dwMinorVersion中返回的值进行调整。

根据 MSDN,对于 Windows 8,MajorVersion 的值为 6,MinorVersion 的值为 2。

我在 dll 中编译了这段代码,如果我从测试 EXE 程序调用 DLL,代码实际上可以工作。

但是,如果我从 Windows 安装程序包 (MSI) 中的自定义操作中调用来自相同 DLL 的相同代码,则 GetVersionEx() 会为 MinorVersion 字段返回 0。

有没有其他人遇到过这个错误?有人知道如何解决它吗?

0 投票
2 回答
256 浏览

c++ - 运行时检查失败 #2 - 围绕变量“osvi”的堆栈在 mfc 应用程序上已损坏

我一直在互联网上搜索,我不知道为什么会发生这种情况,这并不是一个明显的数组问题。

这是功能:

有任何想法吗?

0 投票
4 回答
18869 浏览

c# - c#中的Windows版本

我想知道 PC 有哪个 Windows 版本.. 在 C# Framework 3.5 中

我试过使用

操作系统 os = Environment.OSVersion;

版本ver = os.Version;

但结果是

平台:WIN32NT

版本 6.2.9200

次要版本:2

主要版本:6

问题是我有“Windows 8 Pro”...

我怎样才能检测到它?

谢谢

0 投票
2 回答
884 浏览

delphi - 如何在 Delphi XE4 中对 CSIDL 或 KNOWFOLDERID 进行条件编译?

我在 Windows 7 机器上运行 Delphi XE4。我想要一个可以识别是使用 CSIDL 还是 KNOWFOLDERID 的代码库。

有没有办法使用 {$IFDEF XXXXXX) 有条件地编译uses部分中的不同文件并调用基于Windows XP或更低版本的不同函数?