OSDN Git Service

WinGui:
[handbrake-jp/handbrake-jp-git.git] / win / C# / Program.cs
index fa18674..ff91746 100644 (file)
@@ -6,12 +6,14 @@
 namespace Handbrake\r
 {\r
     using System;\r
+    using System.Diagnostics;\r
     using System.IO;\r
     using System.Windows.Forms;\r
 \r
-    using Handbrake.Properties;\r
+    using HandBrake.ApplicationServices;\r
 \r
-    using Presets;\r
+    using Handbrake.Presets;\r
+    using Handbrake.Properties;\r
 \r
     /// <summary>\r
     /// HandBrake Starts Here\r
@@ -21,9 +23,14 @@ namespace Handbrake
         /// <summary>\r
         /// The main entry point for the application.\r
         /// </summary>\r
+        /// <param name="args">\r
+        /// The args.\r
+        /// </param>\r
         [STAThread]\r
-        public static void Main()\r
+        public static void Main(string[] args)\r
         {\r
+            InstanceId = Process.GetProcessesByName("HandBrake").Length;\r
+\r
             // Handle any unhandled exceptions\r
             AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(CurrentDomain_UnhandledException);\r
 \r
@@ -73,13 +80,27 @@ namespace Handbrake
                     x.UpdateBuiltInPresets();\r
                 }\r
 \r
+                InitializeApplicationServices();\r
+\r
                 Application.EnableVisualStyles();\r
                 Application.SetCompatibleTextRenderingDefault(false);\r
-                Application.Run(new frmMain());\r
+                Application.Run(new frmMain(args));\r
             }\r
         }\r
 \r
         /// <summary>\r
+        /// Initialize App Services\r
+        /// </summary>\r
+        private static void InitializeApplicationServices()\r
+        {\r
+            string versionId = String.Format("Windows GUI {1} {0}", Settings.Default.hb_build, Settings.Default.hb_version);\r
+            Init.SetupSettings(versionId, InstanceId, Settings.Default.CompletionOption, Settings.Default.noDvdNav,\r
+                               Settings.Default.growlEncode, Settings.Default.growlQueue,\r
+                               Settings.Default.processPriority, Settings.Default.saveLogPath, Settings.Default.saveLogToSpecifiedPath,\r
+                               Settings.Default.saveLogWithVideo, Settings.Default.showCliForInGuiEncodeStatus, Settings.Default.preventSleep);\r
+        }\r
+\r
+        /// <summary>\r
         /// Throw up an error message for any unhandled exceptions.\r
         /// </summary>\r
         /// <param name="sender">The sender</param>\r
@@ -101,5 +122,7 @@ namespace Handbrake
                     MessageBoxIcon.Error);\r
             }\r
         }\r
+\r
+        public static int InstanceId;\r
     }\r
 }
\ No newline at end of file