我尝试使用gbak制作简单的GUI应用程序来备份firebird数据库。以下是流程代码
Process backingup = new Process();
backingup.StartInfo.Filename = gbak;
backingup.StartInfo.Arguments = "databaseBox.Text savedirBox.Text -user username.Text -pass pass.Text"
backingup.StartInfo.UseShellExecute = false;
backingup.StartInfo.CreateNoWindow = true;
backingup.StartInfo.RedirectStandardError = true;
backingup.Start();
string backupoutput = backingup.StandardError.ReadToEnd();
backingup.WaitForExit();
ConsoleInfo.Text = backupoutput;
我无法正确传递参数。我想要输入的论点是
“C:\ DatabaseFile.GDB C:\ BackupFile.GBK -user SYSDBA -pass masterkey”
其中:
答案 0 :(得分:3)
你实际上是使用这些字符串而不是值。
尝试将参数行更改为:
backingup.StartInfo.Arguments = string.Format("{0} {1} -user {2} -pass {3}", databaseBox.Text, savedirBox.Text, username.Text, pass.Text);
请注意,您可能需要在格式字符串中添加一些双引号。