0

情况:我有一个 mvc.net 网页,当被调用时,它使用 System.Diagnostics.Process.Start 和 cmd.exe 在我的服务器上运行一个批处理文件。批处理文件包含运行“svn.exe update myfilepath”的行,因此应该更新服务器上的文件。

发生了什么? - 批处理文件正在运行,但对 svn.exe 的调用不执行任何操作,也不会产生任何错误消息。- 如果我通过双击运行批处理文件,svn 命令确实运行成功。

我想这是一个安全问题,但我不是这方面的专家,我无法取得任何进展。

该站点托管在 Windows Server 2008 R2 上,应用程序池使用 ApplicationPoolIdentity 系统。我尝试将应用程序池作为网络服务运行,并将网络服务添加为可以读取/执行到 svn.exe 的用户。

请帮忙!

4

1 回答 1

0

这可能与代理有关。您可能通过代理访问 Internet,但应用程序池身份的用户配置文件未像这样配置。您可能需要使用可以登录的域帐户才能创建合适的用户配置文件。您还需要通过勾选适当的选项来确保 IIS 正在加载配置文件。

(另一种可能性是您正在启动的进程的工作目录未正确设置为您的 Subversion 工作副本的根目录。我们已经确定这不是您的问题。)

于 2012-07-09T12:07:03.353 回答