无忧启动论坛

标题: NET,CMD等命令调用时提示找不到文件,只能在SYSTEM32文件夹下才能运行 [打印本页]

作者: ut0    时间: 2023-10-28 19:27
标题: NET,CMD等命令调用时提示找不到文件,只能在SYSTEM32文件夹下才能运行
本人有些批处理,然后里面会用到NET,调用到CMD等命令之前在任意目录下,都可以直接正常运行
然后今天在有台电脑上,发现调用到CMD,NET等命令时,提示找不到文件之类的提示,然后必须在SYSTEM32文件夹下面才可以正常运行

然后尝试搜索了一下,有些回答是说环境变量的问题,但是我看了下,也没看到什么异常的地方,
请教各位㚐,问题是出在哪里呢?

作者: yyz2191958    时间: 2023-10-28 19:57
那就加上:
cd /d C:\Windows\System32
作者: 邪恶海盗    时间: 2023-10-28 19:57
为毛不把批处理发上来???
作者: hua_wuxin    时间: 2023-10-28 20:43
这台电脑的环境变量“path”被改乱了呗,变量值中的C:\Windows和C:\Windows\system32都没有了
打开命令提示符窗口执行set path就能看到了
作者: blank007    时间: 2023-10-28 21:01
本帖最后由 blank007 于 2023-10-28 21:02 编辑
hua_wuxin 发表于 2023-10-28 20:43
这台电脑的环境变量“path”被改乱了呗,变量值中的C:\Windows和C:\Windows\system32都没有了
打开命令提 ...

是这样的。我曾乱改 path 环境变量,结果有些程序不能运行了。改回来之后就正常了。
作者: l3429900    时间: 2023-10-28 22:32
在环境变量中,加入system32目录
作者: fulibo    时间: 2023-10-28 22:42
C:\Windows\System32
添加到环境里面!

2023-10-28_22-41-41.png (193.29 KB, 下载次数: 25)

2023-10-28_22-41-41.png

作者: nttwqz    时间: 2023-10-28 22:43
在前面加一句试试,如果正常,那就是path变量异常
  1. path %path%;C:\Windows;C:\Windows\System32
复制代码

作者: nathan6498    时间: 2023-10-28 23:15
加上:cd /d C:\Windows\System32
作者: ut0    时间: 2023-10-29 10:42
yyz2191958 发表于 2023-10-28 19:57
那就加上:
cd /d C:\Windows\System32

这样是可以的,但是我想知道出问题的具体原因并解决
作者: ut0    时间: 2023-10-29 10:44
hua_wuxin 发表于 2023-10-28 20:43
这台电脑的环境变量“path”被改乱了呗,变量值中的C:\Windows和C:\Windows\system32都没有了
打开命令提 ...

但奇怪的是,变量里有这些,所以我说没看到什么异常的地方
作者: ut0    时间: 2023-10-29 10:45
l3429900 发表于 2023-10-28 22:32
在环境变量中,加入system32目录

变量里是有的
作者: ut0    时间: 2023-10-29 10:46
fulibo 发表于 2023-10-28 22:42
C:\Windows\System32
添加到环境里面!

变量里有这些
作者: ut0    时间: 2023-10-29 10:47
nttwqz 发表于 2023-10-28 22:43
在前面加一句试试,如果正常,那就是path变量异常

加了之后是运行正常了,是变量异常,但奇怪的是变量里面有SYSTEM32
作者: ut0    时间: 2023-10-29 11:01
本帖最后由 ut0 于 2023-10-29 16:00 编辑

就是变量里有systemroot,system32等设置,还是提示错误,所以觉得很奇怪,也找不到问题出在哪里





运行set path和set之后,显示的是这些
  1. C:\WINDOWS\system32>set path
  2. Path=%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;%SYSTEMROOT%\System32\OpenSSH\;C:\Program Files (x86)\Common Files\THSOFT Shared;C:\Users\DELL\AppData\Local\Microsoft\WindowsApps;C:\Program Files (x86)\Common Files\THSOFT Shared
  3. PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC

  4. C:\WINDOWS\system32>set
  5. ADSK_CLM_WPAD_PROXY_CHECK=FALSE
  6. ALLUSERSPROFILE=C:\ProgramData
  7. APPDATA=C:\Users\DELL\AppData\Roaming
  8. CommonProgramFiles=C:\Program Files\Common Files
  9. CommonProgramFiles(x86)=C:\Program Files (x86)\Common Files
  10. CommonProgramW6432=C:\Program Files\Common Files
  11. COMPUTERNAME=DELL-PC2
  12. ComSpec=C:\WINDOWS\system32\cmd.exe
  13. DriverData=C:\Windows\System32\Drivers\DriverData
  14. HOMEDRIVE=C:
  15. HOMEPATH=\Users\DELL
  16. LOCALAPPDATA=C:\Users\DELL\AppData\Local
  17. LOGONSERVER=\\DELL-PC2
  18. NUMBER_OF_PROCESSORS=12
  19. OS=Windows_NT
  20. Path=%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;%SYSTEMROOT%\System32\OpenSSH\;C:\Program Files (x86)\Common Files\THSOFT Shared;C:\Users\DELL\AppData\Local\Microsoft\WindowsApps;C:\Program Files (x86)\Common Files\THSOFT Shared
  21. PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
  22. PROCESSOR_ARCHITECTURE=AMD64
  23. PROCESSOR_IDENTIFIER=AMD64 Family 25 Model 80 Stepping 0, AuthenticAMD
  24. PROCESSOR_LEVEL=25
  25. PROCESSOR_REVISION=5000
  26. ProgramData=C:\ProgramData
  27. ProgramFiles=C:\Program Files
  28. ProgramFiles(x86)=C:\Program Files (x86)
  29. ProgramW6432=C:\Program Files
  30. PROMPT=$P$G
  31. PSModulePath=C:\Program Files\WindowsPowerShell\Modules;C:\WINDOWS\system32\WindowsPowerShell\v1.0\Modules
  32. PUBLIC=C:\Users\Public
  33. SESSIONNAME=Console
  34. SystemDrive=C:
  35. SystemRoot=C:\WINDOWS
  36. TEMP=C:\Users\DELL\AppData\Local\Temp
  37. TMP=C:\Users\DELL\AppData\Local\Temp
  38. USERDOMAIN=DELL-PC2
  39. USERDOMAIN_ROAMINGPROFILE=DELL-PC2
  40. USERNAME=DELL
  41. USERPROFILE=C:\Users\DELL
  42. windir=C:\WINDOWS
复制代码




作者: ut0    时间: 2023-10-29 11:01
本帖最后由 ut0 于 2023-10-29 11:08 编辑
邪恶海盗 发表于 2023-10-28 19:57
为毛不把批处理发上来???

现在发上来了

path2.png (107.69 KB, 下载次数: )

path2.png

path.png (222.31 KB, 下载次数: )

path.png

作者: hua_wuxin    时间: 2023-10-29 12:07
ut0 发表于 2023-10-29 10:47
加了之后是运行正常了,是变量异常,但奇怪的是变量里面有SYSTEM32

加了之后正常说明批处理的实际运行环境里缺这些 这个环境中的变量值跟自己打开的命令提示符窗口中的不一致
你在批处理最前面加上set和pause后在那台电脑上运行看看path变量呢?
作者: nathan6498    时间: 2023-10-29 13:21
学习学习
作者: ut0    时间: 2023-10-29 16:06
hua_wuxin 发表于 2023-10-29 12:07
加了之后正常说明批处理的实际运行环境里缺这些 这个环境中的变量值跟自己打开的命令提示符窗口中的不一 ...

是的,但问题是为什么批处理中变量和系统的变量不一致,而且系统变量里看起来都是正常的

加了set和pause之后是这样显示的,中间也显示是有%systemroot\system32%的,但还是报错



作者: hua_wuxin    时间: 2023-10-29 16:46
本帖最后由 hua_wuxin 于 2023-10-29 18:06 编辑

你检查下注册表HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment下Path环境变量的类型。系统初始类型应该是REG_EXPAND_SZ,但是好像有什么东西(某个常见软件的安装程序?)会把它改成REG_SZ。如果被改成了REG_SZ,那么数据里就不能用%SystemRoot%,而必须直写为C:\Windows。或者把它删掉重建为REG_EXPAND_SZ也行。



作者: ut0    时间: 2023-10-29 18:17
hua_wuxin 发表于 2023-10-29 16:46
你检查下注册表HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment下Path ...

非常感谢回复和指点,我这下看到了,正常的环境变量下,path在命令行里的显示,不应该还是显示的变量,应该是显示的具体路径了。

但注册表的问题也没法查看了,因为电脑已经被人拿走了
作者: nttwqz    时间: 2023-10-29 18:47
hua_wuxin 发表于 2023-10-29 16:46
你检查下注册表HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment下Path ...

原来是注册表类型问题,涨姿势了。
不知,删除path变量再重建是否能恢复正常。
作者: 千城    时间: 2023-12-8 11:02
我感觉就是环境变量的问题
作者: 无犹启动    时间: 2024-2-17 10:35
学习学习
作者: tilltotell007    时间: 2024-2-17 10:46
学习了
作者: 无犹启动    时间: 2024-2-17 17:21
加上:cd /d C:\Windows\System32
作者: laozhao    时间: 2024-2-17 18:24
这个我清楚,是装了清华天河后,自动添加的路径有问题

清华天河的路径是带有空格的,这样的路径必须要用双引号括起来,然而清华天河软件并没有考虑到这个问题,只是机械地把自己的带空格路径加到path变量中,从而导致了整个path环境变量的失效

解决这个问题的方法就是把path变量中的所有带空格的路径两边加上双引号(半角英文)
作者: hehuiying    时间: 2024-4-14 15:35
谢谢分享
作者: 无犹启动    时间: 2024-4-21 14:43
谢谢分享




欢迎光临 无忧启动论坛 (http://bbs.c3.wuyou.net/) Powered by Discuz! X3.3