我有时需要从 cmd.exe 运行程序。仅当此程序存在于C:\WINDOWS\system32
.
所以我只是将文件复制.exe
到这个文件夹中,直到现在它仍然有效(适用于 Python 和一两个其他应用程序)。但是,我认为这不是正确的方法。当我尝试这个时php.exe
,我得到一个错误说一些.dll was not found
。我怀疑它与相对路径有关。
谁能指出正确的方法来做到这一点?
根据您的 Windows 版本,您必须找到“环境变量”按钮(在 Windows 7 中,位于“我的电脑”上下文菜单中“属性”内的“高级系统设置”上);在“系统变量”中应该有一个名为PATH
. 您可以对其进行编辑并添加要包含的路径,并用;
. 然后重新启动,它应该可以工作。
通过这种方式,您可以将这些路径包含在cmd.exe
搜索命令的目录集中。在您的示例中,问题是php.exe
找到了(因为您在System32
其中复制了它PATH
),但.dll
文件仍在 php 的安装目录中,因此您需要从该目录运行程序或更新您的PATH
包含.
您必须移动到包含可执行文件的目录,指定完整路径或将目录添加到 PATH 变量。例如:
更改目录,然后运行:
cd C:\MyOtherApp\
programfile.exe
使用完整路径运行文件:
C:\MyOtherApp\programfile.exe
或添加到路径:
右键单击我的电脑,然后转到属性选择高级选项卡并转到环境变量。找到一个 PATH 并将您的文件夹添加到其中,用分号 (;) 分隔,例如:
[someotherpathsgoesfirst];C:\MyOtherApp\
您可以在http://support.microsoft.com/kb/310519/en-us上阅读有关环境变量的更多信息,特别是在http://www.computerhope.com/issues/ch000549.htm上有关 PATH 环境变量的信息
您收到该错误是因为 dll 必须与 .exe 位于同一目录中。运行 exe 的正确方法是浏览到它的目录并从那里运行它。您可以使用“cd 目录”设置新目录,例如:C:\Windows\system32>cd C:\users 将新的活动目录设置为“C:\users”。您可以使用“cd ..”向上一个目录,您可以键入“dir”来获取当前活动目录中的项目列表。我希望这对您有所帮助。
当您使用非完整路径时,Windows 会搜索一个名为 PATH 的环境变量。
换句话说, C:\Windows\System32 在 PATH 中,这就是搜索它的原因。将可执行文件移到那里是错误的。导航到可执行文件 ( cd \path\to\folder
),或将目录添加到 PATH。
您可能希望将.exe
文件的路径添加到 PATH 环境变量中。