例如,我对%WINDIR%
和之间的区别很感兴趣%SYSTEMROOT%
。我在 Google 上搜索了一下,并通过一些论坛挖掘,我发现 和%WINDIR%
指%SYSTEMROOT%
的是同一件事。%WINDIR%
适用于 9x,而%SYSTEMROOT%
适用于 Windows NT 及更高版本(但它们也可以使用%WINDIR%
)。
当然,人们会对从论坛库中检索到的信息产生怀疑,因此基本上在这个例子中,我试图确认这是否真的适用%WINDIR%
于 9x 和%SYSTEMROOT%
Windows NT 及更高版本。当然,我无法亲自测试这些(没有相应的机器)。
我想知道我们如何获取有关环境变量/系统变量的权威信息来源?(MSDN 有列表吗?)
答案1
这些是系统变量,与也用于批处理文件处理的本地环境变量相反。
如何找到有关它们的信息?答案只有一个。MSDN。深入研究,您可以找到所有这些信息以及有关 Microsoft 产品的更多信息。Windows XP 产品文档 - 命令 shell 概述
此外,在“开始”菜单提供的 Windows XP 和 Windows 7 在线帮助中,请注意命令行批处理。这些在控制台脚本中大量使用,如果您查找,在线帮助中有示例代码。可以将其视为 Linux 命令行上的“man”,它加载在每个 Windows 系统上,就像 Linux 上加载手册页一样。
答案2
考虑参观环境变量.org,它完整收集了 Windows 平台的常见环境变量,并附有描述、默认值以及 Windows XP 和 Vista/7 之间的差异。
希望有所帮助。
答案3
虽然微软提供了变量,但谨慎程序就是用户。这就像要求提供美国法律的权威来源。国会制定法律,行政部门执行法律,司法部门解释法律,律师则负责寻找最适合的策略。对于涉及众多当事人的模型来说,单一来源从定义上来说就是不完整的。
除非您想挖掘二十年来的文献资料,否则您必须更加具体。
目前,如果技术文章不够清楚,您可以下载列出所有变量的代码示例。
就您发布的内容而言,我觉得这很清楚。您是从编程角度还是从故障排除角度来看?
编辑
实际上,你并不是在寻求权威来源。你只是在寻求历史来源。由于 Windows 95 未得到官方支持,因此你再也无法找到微软官方来源。
%Windir% 是 Windows 95 使用的变量,因为它是基于 DOS 的。当时,Windows 目录不一定位于 C 盘。哎呀,它有可能甚至不是本地驱动器!
%Systemroot% 由 NT 使用。请记住,它们是两条独立的产品线。
当这两条产品线与 Windows 2K 合并时,它们保留了两者,因为许多程序都使用其中之一。从那时起,它就一直存在于 Windows 中。
但就所有实际目的而言,您应该使用 Systemroot,因为这是 Microsoft 推荐的。
我确信有一篇《旧新事物》帖子对此进行了更深入的讨论。。。
编辑2
这脚本将列出其机器上的所有脚本变量及其值。
这是一份 Technet 列表。
http://technet.microsoft.com/en-us/library/cc749104(v=ws.10).aspx
答案4
Microsoft 是您所提到的操作系统的供应商,因此是有关其操作系统中使用的系统环境变量的权威信息来源。
他们如何记录这些事情又是另一回事。