从批处理文件设置 MikTeX 代理

从批处理文件设置 MikTeX 代理

我在尝试着自动化在 Windows 7 机器上安装 MikTeX,但在代理定义方面失败。使用 GUI 手动定义效果很好,但基于批处理文件的安装效果不佳。

根据手动的应该可以通过环境变量来定义代理,但这对我来说不起作用。

set ALL_PROXY=my.proxy.name:3128我已经使用(FTP_PROXY以及)设置了代理HTTP_PROXY,但在尝试更新软件包时,我仍然收到众所周知的错误消息

mpm --admin --repository=ftp://ftp.rrzn.uni-hannover.de/pub/mirror/tex-archive/systems/win32/miktex/tm/packages/ --verbose --update-db
mpm: Host not found
mpm: Data: get host by name failed in tcp_connect()

有人成功通过批处理文件提供代理设置吗?

答案1

我看到两种解决方法。

首先:使用Ulrike 建议--proxy的选项mpm --verbose --trace --update-db --proxy=my.proxy.name:8080 --repository=ftp://ftp.rrzn.uni-hannover.de/putex-archive/systems/win32/miktex/tm/packages/。此方法解决了必须为每个命令提供代理参数的缺点mpm(没有像环境变量那样的持久设置)。由于默认存储库似乎不存在,因此还需要指定存储库。

第二:可以通过操作注册表使设置持久化。

reg add HKEY_CURRENT_USER\Software\MiKTeX.org\MiKTeX\2.9\MPM /v ProxyAuthReq     /t REG_SZ /d f /f
reg add HKEY_CURRENT_USER\Software\MiKTeX.org\MiKTeX\2.9\MPM /v ProxyHost        /t REG_SZ /d my.proxy.name /f
reg add HKEY_CURRENT_USER\Software\MiKTeX.org\MiKTeX\2.9\MPM /v ProxyPort        /t REG_SZ /d 8080 /f
reg add HKEY_CURRENT_USER\Software\MiKTeX.org\MiKTeX\2.9\MPM /v RepositoryType   /t REG_SZ /d remote /f
reg add HKEY_CURRENT_USER\Software\MiKTeX.org\MiKTeX\2.9\MPM /v UseProxy         /t REG_SZ /d t /f
reg add HKEY_CURRENT_USER\Software\MiKTeX.org\MiKTeX\2.9\MPM /v RemoteRepository /t REG_SZ /d ftp://ftp.rrzn.uni-hannover.de/pub/mirror/tex-archive/systems/win32/miktex/tm/packages/ /f

相关内容