2017-02-19 3 views
0

Есть ли способ вызвать DebugDiag Анализ из командной строки? Я пробовал это: DebugDiag.Analysis.exe "C:\dumps\oops.dmp" Но он только запустил GUI (добавлено oops.dmp).Есть ли способ запустить DebugDiag Analysis из командной строки?

То, что я ищу, является чем-то более похожим: DebugDiag.Analysis.exe -dump "C:\dumps\oops.dmp" -out "C:\results\oops-DebugDiag.mht" -anaylsis "CrashHangAnalysis,MemoryAnalysis" Тогда это должно работать, не показывая никакого графического интерфейса.

Usecase: Мы выполняем наш анализ аварийных дампов, полностью автоматизированных с помощью SuperDump. Добавление отчетов DebugDiag .mht автоматически будет очень приятным.

Можно ли это сделать? Есть ли какая-либо документация по параметрам командной строки DebugDiag?

ответ

0

DebugDiag не вывела CLI из коробки.

Однако он предоставляет класс с именем DebugDiag.DotNet.NetAnalyzer через DebugDiag.DotNet.dll, который доступен в каталоге установки DebugDiag. Вот его документация:

/// <summary> 
/// The NetAnalyzer object is used to determine available analysis scripts, add data files, and start an analysis. 
/// This object is used internally by the DebugDiag Analysis user interface to manage analysis rules. 
/// End users can use this object to develop their own rules, batch files, or GUI's to manage data analysis. 
/// </summary> 
/// <remarks> 
/// <example> 
/// <code language="cs"> 
/// using (NetAnalyzer analyzer = new NetAnalyzer()) 
/// { 
///  //In this example I'm referencing a dll module that has the prebuild rules that ship with debugdiag 
///  analyzer.AddAnalysisRulesToRunList(@"C:\Program Files\DebugDiag\AnalysisRules\DebugDiag.AnalysisRules.dll", false); 
/// 
///  List&lt;AnalysisRuleInfo&gt; analysisRules = analyzer.AnalysisRuleInfos; 
/// 
///  Console.WriteLine("The available rules on the analyzer are: \n\r\n\r"); 
/// 
///  foreach(AnalysisRuleInfo ruleInfo in analysisRules) 
///  { 
///   Console.WriteLine(ruleInfo.DisplayName); 
///  } 
/// } 
/// </code> 
/// </example> 
/// </remarks> 

Итак, в принципе, этот API можно использовать для автоматизации. Вот два проекта, которые в настоящее время используют его как это:

Смежные вопросы