Windows下以服务运行时Python urllib.getproxies()无法工作
我在我的应用程序中使用 urllib.getproxies()
来检测代理设置。
当我在 Python 命令行中调用这个函数时,它运行得很好。
但是,当我的应用程序作为服务运行时(只有在作为服务运行时),urllib.getproxies()
却返回一个空的字典。
我使用的是 Windows 2008 R2 和 Python 2.7。
你们知道这可能是什么原因吗?谢谢!
1 个回答
0
所以答案是,在Windows系统中,代理设置是存储在注册表里的,具体位置在HKEY_CURRENT_USER。
因为这个服务是以一个特殊用户身份运行,所以它在自己的HKEY_CURRENT_USER中找不到这些设置。
解决办法有两个:
- 让这个服务以另一个用户身份运行。
- 读取正确用户的注册表。