我已经编写了 ac# 应用程序来检查存储库是否应该是转储程序(使用一些参数)
我已经在我的计算机(Winsows 8)上编译了这个应用程序,它可以按预期工作。当我尝试在安装了 .net 4.5 的两个不同的 Windows 服务器(2003 和 2008)上使用它时,出现了问题..
在此之前,我将讨论我遇到的问题,我将向您展示我为使该应用程序工作而编写的部分代码:
output[2] = exec("svnadmin dump " + dir + " > " + dir + ".dump");
其中dir是存储库的实际名称,exec函数如下:
public string exec(object command)
{
try
{
System.Diagnostics.ProcessStartInfo procStartInfo =
new System.Diagnostics.ProcessStartInfo("cmd", "/c " + command);
procStartInfo.RedirectStandardOutput = true;
procStartInfo.UseShellExecute = false;
procStartInfo.CreateNoWindow = true;
System.Diagnostics.Process proc = new System.Diagnostics.Process();
proc.StartInfo = procStartInfo;
proc.Start();
return proc.StandardOutput.ReadToEnd();
}
catch (Exception objException)
{
return "Error: " + objException;
}
}
我得到的是,当我在 Windows 8 上运行它时,当我在 Server 2003 上运行它时它按预期工作,当我在 Server 2008 上运行它时它只转储修订版 0 它返回错误(它不是存储库!)
Windows 8 svn 版本:1.7.8 (sliksvn) Windows server 2003 svn 版本:1.5.8 Windows server 2008 svn 版本:1.7.9
任何帮助都会得到帮助,在此先感谢