Mi1*_*vic 12 directory cmd system32
我在文件夹run中有文件夹system32.当我cmd从Total Commander中打开一个命令提示符窗口C:\Users\admin作为当前目录并想要进入该文件夹时,会输出以下错误消息:
系统找不到指定的路径.
当我cmd直接在文件夹中打开时run,它完美无缺.为什么?
打开的命令提示符窗口C:\Windows\System32\run:
C:\Windows\System32\run>cd..
C:\Windows\System32>cd run
C:\Windows\System32\run>
Run Code Online (Sandbox Code Playgroud)
简单运行命令提示符窗口cmd:
Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. Všetky práva vyhradené.
C:\Users\admin>cd..
C:\Users>cd..
C:\>cd windows
C:\Windows>cd system32
C:\Windows\System32>cd run
Systém nemôže nájst’ zadanú cestu.
Run Code Online (Sandbox Code Playgroud)
ais*_*ib7 14
以下对我有用:
Registry Editor(按windows键,输入regedit并点击Enter)。HKEY_CURRENT_USER\Software\Microsoft\Command Processor\AutoRun并清除这些值。HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\AutoRun。有不仅1 %SystemRoot%\System32 Windows x64上。有2个这样的目录。
真实%SystemRoot%\System32目录适用于64位应用程序。此目录包含64位cmd.exe。
但是也有%SystemRoot%\SysWOW64针对32位应用程序的。如果32位应用程序访问,则使用此目录%SystemRoot%\System32。它包含一个32位cmd.exe。
32位应用程序可以%SystemRoot%\System32使用%SystemRoot%\Sysnativein路径访问64位应用程序。
有关更多详细信息,请参阅有关文件系统重定向器的Microsoft文档。
所以,我想你已经创建的子目录run中%SystemRoot%\System32的64位应用程序和运行32位cmd的此目录不存在,因为没有子目录run中%SystemRoot%\SysWOW64是%SystemRoot%\System3232位cmd.exe。
或者,您已经run在%SystemRoot%\System3232位应用程序中创建了子目录,并运行64位cmd,该目录不存在,因为其中没有子目录run,%SystemRoot%\System32因为该子目录仅存在于中%SystemRoot%\SysWOW64。
如果子目录run位于%SystemRoot%\System3264位应用程序中,则可以在批处理文件顶部使用以下命令:
@echo off
set "SystemPath=%SystemRoot%\System32"
if not "%ProgramFiles(x86)%"=="" (
if exist %SystemRoot%\Sysnative\* set "SystemPath=%SystemRoot%\Sysnative"
)
Run Code Online (Sandbox Code Playgroud)
接下来,您需要System32\run使用%SystemPath%批处理文件中的目录调用每个控制台应用程序,例如%SystemPath%\run\YourApp.exe。
怎么运行的?
在Windows x86上,没有环境变量ProgramFiles(x86),因此实际上%SystemRoot%\System32顶部只有1个。
在Windows x64上,环境变量ProgramFiles(x86)带有值。在Windows x64上,还要检查中是否有文件%SystemRoot%\Sysnative。在这种情况下,批处理文件以32位执行,cmd.exe仅在这种情况下才%SystemRoot%\Sysnative需要使用。否则,%SystemRoot%\System32也可以在Windows x64上使用,就像使用64位启动批处理文件时一样cmd.exe,这是包含64位控制台应用程序(和您的子目录run)的目录。
注意:%SystemRoot%\Sysnative不是目录!不可能cd去%SystemRoot%\Sysnative或使用if exist %SystemRoot%\Sysnative
| 归档时间: |
|
| 查看次数: |
154698 次 |
| 最近记录: |