diff --git a/DiscImageChef/Main.cs b/DiscImageChef/Main.cs index b7267c24..f62a91fa 100644 --- a/DiscImageChef/Main.cs +++ b/DiscImageChef/Main.cs @@ -46,22 +46,12 @@ namespace DiscImageChef { class MainClass { - public static void Main(string [] args) + public static void Main(string[] args) { - object [] attributes = typeof(MainClass).Assembly.GetCustomAttributes(typeof(AssemblyTitleAttribute), false); - string AssemblyTitle = ((AssemblyTitleAttribute)attributes [0]).Title; - attributes = typeof(MainClass).Assembly.GetCustomAttributes(typeof(AssemblyCopyrightAttribute), false); - Version AssemblyVersion = typeof(MainClass).Assembly.GetName().Version; - string AssemblyCopyright = ((AssemblyCopyrightAttribute)attributes [0]).Copyright; - DicConsole.WriteLineEvent += System.Console.WriteLine; DicConsole.WriteEvent += System.Console.Write; DicConsole.ErrorWriteLineEvent += System.Console.Error.WriteLine; - DicConsole.WriteLine("{0} {1}", AssemblyTitle, AssemblyVersion); - DicConsole.WriteLine("{0}", AssemblyCopyright); - DicConsole.WriteLine(); - Settings.Settings.LoadSettings(); Core.Statistics.LoadStats(); @@ -70,143 +60,171 @@ namespace DiscImageChef DumpMediaOptions, DeviceReportOptions, ConfigureOptions, StatsOptions>(args) .WithParsed(opts => { - if (opts.Debug) + if(opts.Debug) DicConsole.DebugWriteLineEvent += System.Console.Error.WriteLine; - if (opts.Verbose) + if(opts.Verbose) DicConsole.VerboseWriteLineEvent += System.Console.WriteLine; + PrintCopyright(); Commands.Analyze.doAnalyze(opts); }) .WithParsed(opts => { - if (opts.Debug) + if(opts.Debug) DicConsole.DebugWriteLineEvent += System.Console.Error.WriteLine; - if (opts.Verbose) + if(opts.Verbose) DicConsole.VerboseWriteLineEvent += System.Console.WriteLine; + PrintCopyright(); Commands.Compare.doCompare(opts); }) .WithParsed(opts => { - if (opts.Debug) + if(opts.Debug) DicConsole.DebugWriteLineEvent += System.Console.Error.WriteLine; - if (opts.Verbose) + if(opts.Verbose) DicConsole.VerboseWriteLineEvent += System.Console.WriteLine; + PrintCopyright(); Commands.Checksum.doChecksum(opts); }) .WithParsed(opts => { - if (opts.Debug) + if(opts.Debug) DicConsole.DebugWriteLineEvent += System.Console.Error.WriteLine; - if (opts.Verbose) + if(opts.Verbose) DicConsole.VerboseWriteLineEvent += System.Console.WriteLine; + PrintCopyright(); Commands.Entropy.doEntropy(opts); }) .WithParsed(opts => { - if (opts.Debug) + if(opts.Debug) DicConsole.DebugWriteLineEvent += System.Console.Error.WriteLine; - if (opts.Verbose) + if(opts.Verbose) DicConsole.VerboseWriteLineEvent += System.Console.WriteLine; + PrintCopyright(); Commands.Verify.doVerify(opts); }) .WithParsed(opts => { - if (opts.Debug) + if(opts.Debug) DicConsole.DebugWriteLineEvent += System.Console.Error.WriteLine; - if (opts.Verbose) + if(opts.Verbose) DicConsole.VerboseWriteLineEvent += System.Console.WriteLine; + PrintCopyright(); Commands.PrintHex.doPrintHex(opts); }) .WithParsed(opts => { - if (opts.Debug) + if(opts.Debug) DicConsole.DebugWriteLineEvent += System.Console.Error.WriteLine; - if (opts.Verbose) + if(opts.Verbose) DicConsole.VerboseWriteLineEvent += System.Console.WriteLine; + PrintCopyright(); Commands.Decode.doDecode(opts); }) .WithParsed(opts => { - if (opts.Debug) + if(opts.Debug) DicConsole.DebugWriteLineEvent += System.Console.Error.WriteLine; - if (opts.Verbose) + if(opts.Verbose) DicConsole.VerboseWriteLineEvent += System.Console.WriteLine; + PrintCopyright(); Commands.DeviceInfo.doDeviceInfo(opts); }) .WithParsed(opts => { - if (opts.Debug) + if(opts.Debug) DicConsole.DebugWriteLineEvent += System.Console.Error.WriteLine; - if (opts.Verbose) + if(opts.Verbose) DicConsole.VerboseWriteLineEvent += System.Console.WriteLine; + PrintCopyright(); Commands.MediaInfo.doMediaInfo(opts); }) .WithParsed(opts => { - if (opts.Debug) + if(opts.Debug) DicConsole.DebugWriteLineEvent += System.Console.Error.WriteLine; - if (opts.Verbose) + if(opts.Verbose) DicConsole.VerboseWriteLineEvent += System.Console.WriteLine; + PrintCopyright(); Commands.MediaScan.doMediaScan(opts); }) .WithParsed(opts => { - if (opts.Debug) + if(opts.Debug) DicConsole.DebugWriteLineEvent += System.Console.Error.WriteLine; - if (opts.Verbose) + if(opts.Verbose) DicConsole.VerboseWriteLineEvent += System.Console.WriteLine; + PrintCopyright(); Commands.Formats.ListFormats(opts); }) .WithParsed(opts => { - if (opts.Debug) + if(opts.Debug) DicConsole.DebugWriteLineEvent += System.Console.Error.WriteLine; - if (opts.Verbose) + if(opts.Verbose) DicConsole.VerboseWriteLineEvent += System.Console.WriteLine; + PrintCopyright(); Commands.Benchmark.doBenchmark(opts); }) .WithParsed(opts => { - if (opts.Debug) + if(opts.Debug) DicConsole.DebugWriteLineEvent += System.Console.Error.WriteLine; - if (opts.Verbose) + if(opts.Verbose) DicConsole.VerboseWriteLineEvent += System.Console.WriteLine; + PrintCopyright(); Commands.CreateSidecar.doSidecar(opts); }) .WithParsed(opts => { - if (opts.Debug) + if(opts.Debug) DicConsole.DebugWriteLineEvent += System.Console.Error.WriteLine; - if (opts.Verbose) + if(opts.Verbose) DicConsole.VerboseWriteLineEvent += System.Console.WriteLine; + PrintCopyright(); Commands.DumpMedia.doDumpMedia(opts); }) .WithParsed(opts => { - if (opts.Debug) + if(opts.Debug) DicConsole.DebugWriteLineEvent += System.Console.Error.WriteLine; - if (opts.Verbose) + if(opts.Verbose) DicConsole.VerboseWriteLineEvent += System.Console.WriteLine; + PrintCopyright(); Commands.DeviceReport.doDeviceReport(opts); }) - .WithParsed(opts => { Commands.Configure.doConfigure();}) - .WithParsed(opts => { Commands.Statistics.showStats(); }) + .WithParsed(opts => { PrintCopyright(); Commands.Configure.doConfigure(); }) + .WithParsed(opts => { PrintCopyright(); Commands.Statistics.showStats(); }) .WithNotParsed(errs => Environment.Exit(1)); Core.Statistics.SaveStats(); } + + static void PrintCopyright() + { + object[] attributes = typeof(MainClass).Assembly.GetCustomAttributes(typeof(AssemblyTitleAttribute), false); + string AssemblyTitle = ((AssemblyTitleAttribute)attributes[0]).Title; + attributes = typeof(MainClass).Assembly.GetCustomAttributes(typeof(AssemblyCopyrightAttribute), false); + Version AssemblyVersion = typeof(MainClass).Assembly.GetName().Version; + string AssemblyCopyright = ((AssemblyCopyrightAttribute)attributes[0]).Copyright; + + DicConsole.WriteLine("{0} {1}", AssemblyTitle, AssemblyVersion); + DicConsole.WriteLine("{0}", AssemblyCopyright); + DicConsole.WriteLine(); + } } }