我一直在努力让我的用户手动设置PATH环境变量,但一直没有成功。我正在寻找一种自动设置的方法。最好是一个批处理文件,因为这将需要他们自己运行它(并警告他们正在做什么)。但是也可以在setup.py中进行添加。
其他信息:SET仅影响当前和派生shell;永久值似乎存储在注册表中(那是我不敢碰的地方)。
其他信息:SET仅影响当前和派生shell;永久值似乎存储在注册表中(那是我不敢碰的地方)。
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths
(以及HKEY_CURRENT_USER\...
)注册表键允许您将应用程序特定路径附加到可执行文件名称上。正如David所说,您可以从Windows资源工具包中获取SETX工具。
然而,我发现SETX有时会出现问题(例如崩溃)。我还没有找出确切的问题所在,但我怀疑这是一个大小问题(例如,如果您尝试将变量(在我的情况下是PATH)设置为太大的值,例如>1024个奇怪字符)。
我发现另外两个可执行文件可以完成同样的任务。我特别喜欢CodeProject上Jonathan“Darka”Wilkes的SetEnv。他使其非常有用,具有良好的功能,并且与所有Windows系统兼容——我还提出了一些功能建议。 :)
另一个选择是手动完成(实际上将项目添加到注册表中,然后广播 WM_SETTINGCHANGE 到顶级窗口,或重新启动shell /重新启动)。但是我认为在批处理文件中使用SetEnv是最好的选择。 ;)
setup.py
中的使用)来自这个网站:
这听起来可以满足你想要做的事情。Using the add-on tool Setx.exe
It is not part of the standard Windows XP setup but a command-line tool called setx.exe is included in the Windows XP Service Pack 2 Support Tools. This tool extends the set command so that permanent changes in the environment variables can be made. For example, to add a folder C:\New Folder to the path, the command would be
setx path "%PATH%;C:\New Folder"