好的,我更进一步,发现如何在 cmd 中检查软件的版本并对其进行测试,它工作正常:
wmic product where "Name like 'Microsoft .Net%'" get Name, Version
(在这里找到答案:
Is there a command line command for verifying what version of .NET is installed)
因此,由于不知道其他任何内容,我将尝试在批处理 (.bat) 文件中完成此操作。如果您知道比批处理文件更好的选择方法,请留下您的 cmets!
所以经过大量谷歌搜索后,我收集了一些命令包,这将帮助我进行必要的系统查询。
目前脚本如下所示:
@ECHO OFF
CD..
DEL Version.txt
wmic os get name, OSArchitecture>Version.txt
wmic cpu get Name>>Version.txt
wmic netuse get Name>>Version.txt
%userdomain%>>Version.txt
wmic product where "Name like 'Microsoft .Net Framework 4%%'" get Name, Version>>Version.txt
wmic product where "Name like 'Microsoft SQL Server 2008%%'" get Name, Version>>Version.txt
"sqlcmd -L">>Version.txt
wmic product where "Name like 'Micro Focus Server 5%%'" get Name, Version>>Version.txt
if exist C:\PAS2\local goto end else mkdir C:\PAS2\local
end:
...输出(Version.txt)如下所示:
Name OSArchitecture
Microsoft Windows 7 Professional |C:\windows|\Device\Harddisk0\Partition2 64-Bit
Name
Intel(R) Core(TM) i7-2620M CPU @ 2.70GHz
Name
\\brns01\PUBLIC (M:)
\\brns01\DISTRIBU (N:)
\\brns01\DOCUMENT (O:)
\\brns01\PROJECTS (P:)
\\BRNS01\PRITRANS (U:)
\\Brns01\USERS\GN (L:)
Name Version
Microsoft .NET Framework 4.5.1 Multi-Targeting Pack 4.5.50932
Microsoft .NET Framework 4.5 Multi-Targeting Pack 4.5.50710
Microsoft .NET Framework 4.5 SDK - DEU Lang Pack 4.5.50710
Microsoft .NET Framework 4.5 SDK 4.5.50710
Microsoft .NET Framework 4 Multi-Targeting Pack 4.0.30319
Microsoft .NET Framework 4.5.1 RC 4.5.50861
Microsoft .NET Framework 4.5.1 RC (DEU) 4.5.50861
Microsoft .NET Framework 4.5.1 SDK 4.5.51641
Microsoft .NET Framework 4.5.1 SDK (Deutsch) 4.5.51641
Name Version
Microsoft SQL Server 2008 R2-Setup (Deutsch) 10.52.4000.0
Microsoft SQL Server 2008 R2 RsFx Driver 10.52.4000.0
Microsoft SQL Server 2008 R2-Richtlinien 10.50.1600.1
Microsoft SQL Server 2008 R2 Native Client 10.52.4000.0
Name Version
Micro Focus Server 5.1 5.107.0047
当前状态:
版本检查 .NetFramework:完成!
版本检查 MS SQL Server:完成!
版本检查 Micro Focus 5:完成!
版本和位检查窗口:完成!
检查域名:打开! (%userdomain% 在 cmd 中有效,但在我的脚本中无效)
检查当前用户域名:打开! (现在还不知道)
检查正在运行的 SQL 实例:已打开! (“sqlcmd -L”在 cmd 中有效,但在我的脚本中无效。我在这里有一个非常奇怪的行为。在 CMD 中:当我使用语法 sqlcmd -l 它不起作用,使用 sqlcmd -L [captial Letter] 它按预期工作。奇怪的是,我的印象是语法不区分大小写。当我在批处理文件中使用命令 sqlcmd -L 时,它会生成一长串中文符号,并且所有后续任务都没有被执行,当我在上面列出的代码中使用“sqlcmd -L”时,它不会在我的文件中生成输出)
检查 c:\pas2\local 是否存在,如果不存在则创建目录:我认为它有效 :)
当我解决了上述一些问题后,我会重新评论。如果你们有改进我的脚本的提示,请不要犹豫,发表评论!谢谢!
干杯
格雷格