添加特定于应用程序的路径,因此它可以在Windows中的命令行中运行

Smi*_*rup 5 windows dll dynamic

按照Microsoft的指南, http://msdn.microsoft.com/en-us/library/ee872121(VS.85).aspx,我能够让我的程序能够使程序解析动态库是必需的,以便它工作.

所以我添加一个带有我的可执行文件的全名和路径的值,并使用DLL文件目录的完整路径添加该条目(命名路径)的子项.

而魔术.有用.我进入开始菜单,并键入myprogram.exe,它启动,现在能够正确找到DLL文件.

但是,如果我使用命令cmd.exe启动命令提示符,然后尝试运行myprogram.exe,则无法再解析DLL.出于某种原因,在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths下设置时,命令提示符似乎不尊重/读取注册表的值

有关如何从命令提示符以及开始菜单中使用此行为的任何建议?

Ole*_*leg 5

它是正确的.HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths是由ShellExecuteEx而不是由CreateProcess.因此,并非所有程序都将使用App Paths您的应用程序中的设置.如果要PATH为cmd.exe 定义,可以使用App Paths名为cmd.exe的子项,也可以使用旧%SystemRoot%\System32\autoexec.nt文件来修改PATH环境变量.

  • “使用名为 cmd.exe 的应用程序路径子项”是什么意思? (2认同)