VBA查找远程计算机的安装日期和Bios日期
我试图让一些VBA代码工作,以返回计算机Ping结果、安装日期和BIOS版本(以获取日期) Ping工作正常,但systeminfo短暂闪烁并消失。我可以只使用VBA查找远程计算机的安装日期和Bios日期,vba,shell,excel,wsh,Vba,Shell,Excel,Wsh,我试图让一些VBA代码工作,以返回计算机Ping结果、安装日期和BIOS版本(以获取日期) Ping工作正常,但systeminfo短暂闪烁并消失。我可以只使用“systeminfo/s”和addr1运行,但显然这会带来很多不必要的信息。我有一种感觉,这与传递“字符有关。我尝试过/C:“&Chr(34)&”也没有用 cmdInstall = "%comspec% /c systeminfo /s " & addr1 & " | findstr /C:""Install Date"
“systeminfo/s”和addr1运行,但显然这会带来很多不必要的信息。我有一种感觉,这与传递“
字符有关。我尝试过/C:“&Chr(34)&”
也没有用
cmdInstall = "%comspec% /c systeminfo /s " & addr1 & " | findstr /C:""Install Date"""
及
是的ASC(“|”)=CHR(124)
但这不是问题所在。我不知道为什么它不起作用,但你可以做的是只运行一次“systeminfo/s”&addr1
,然后使用VBAYeah从返回的字符串中提取安装日期和Bios版本。我知道我可以从完整结果中提取信息(这是我这次运行它时所做的)但我想知道如何让它在将来像这样工作,因为事实上它应该可以工作;)对,所以如果运行Debug.Print runInstall.stderr.readall
它实际上会显示一个错误错误:无效参数/选项-'|'。键入“SYSTEMINFO/?“用于使用。
我认为由于某种原因,查找器
没有被识别出来,现在我找到了答案啊哈!没想到会事先调用cmd。好发现!
cmdInstall = "%comspec% /c systeminfo /s " & addr1 & " | findstr /C:""Install Date"""
cmdBios = "%comspec% /c systeminfo /s " & addr1 & " " & Chr(124) & " findstr /C:""BIOS Version"""