Как сохранить отчеты о сравнении, созданные программным обеспечением Beyond Compare

У меня есть фрагмент кода, в котором я сравниваю два файла с помощью Beyond compare.

string s = @""C:\Program Files\Beyond Compare 2\BC2.exe"";

Process.Start(s, @"c:\temp\File1.txt c:\temp\File2.txt" );

Теперь я хочу программно сохранить отчет сравнения с именем файла и в местоположении на моем рабочем столе.

Я искал документы, но ничего не нашел о сохранении отчетов.

В настоящее время выполнение приведенного выше кода открывает окно, как видно на изображении (не путайте с черной частью окна, я покрасил ее таким образом, чтобы скрыть расположение файлов) не путайте с черной частью окна, я покрасил ее таким образом, чтобы скрыть расположение файлов

Заранее спасибо.


person anurag    schedule 06.01.2014    source источник


Ответы (1)


Я нашел решение на странице документации Beyond Compare.

Добавьте следующие строки в файл и сохраните его с помощью My Script.txt.

file-report layout:side-by-side &
options:ignore-unimportant,display-context &
output-to:%3 output-options:html-color %1 %2

Теперь с помощью командной строки запустите следующий код BeyondCompate.exe @"My Script.txt" "1.txt" "2.txt" "Save.html" Это сохранит отчет в Save.html.

Я включил это в свой код как:

System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo();
startInfo.FileName = "cmd.exe" ;
startInfo.Arguments = "/c" + "BeyondCompare.exe" + " " + @"My Script.txt" + " " + "1.txt" + " " + "2.txt" + " " +"Save.html";
System.Diagnostics.Process.Start(startInfo);
person anurag    schedule 10.01.2014
comment
Чтобы узнать, почему используется /c, см. stackoverflow.com/questions/5047171/ - person anurag; 10.01.2014