OSDN Git Service

WinGui:
[handbrake-jp/handbrake-jp-git.git] / win / C# / Program.cs
index 22b601f..f2bae96 100644 (file)
@@ -1,24 +1,13 @@
 /*  Program.cs \r
        \r
           This file is part of the HandBrake source code.\r
-          Homepage: <http://handbrake.m0k.org/>.\r
+          Homepage: <http://handbrake.fr>.\r
           It may be used under the terms of the GNU General Public License. */\r
 \r
 using System;\r
-using System.Collections.Generic;\r
-using System.Collections.Specialized;\r
-using System.ComponentModel;\r
-using System.Data;\r
-using System.Drawing;\r
-using System.Text;\r
 using System.Windows.Forms;\r
-using System.Net;\r
 using System.IO;\r
-using System.Diagnostics;\r
-using System.Threading;\r
-using System.Runtime.InteropServices;\r
-using System.Globalization;\r
-\r
+using Handbrake.Presets;\r
 \r
 namespace Handbrake\r
 {\r
@@ -30,82 +19,47 @@ namespace Handbrake
         [STAThread]\r
         static void Main()\r
         {\r
-            // Development Code Expiry.\r
-            // Remember to comment out on public release!!!\r
-            if (DateTime.Now > DateTime.Parse("2008/01/30", new CultureInfo("en-US"))) { MessageBox.Show("Sorry, This development build of Handbrake has expired."); return; } \r
-\r
             // Check the system meets the system requirements.\r
             Boolean launch = true;\r
             try\r
             {\r
                 // Make sure the screen resolution is not below 1024x768\r
-                System.Windows.Forms.Screen scr = System.Windows.Forms.Screen.PrimaryScreen;\r
+                Screen scr = Screen.PrimaryScreen;\r
                 if ((scr.Bounds.Width < 1024) || (scr.Bounds.Height < 720))\r
                 {\r
-                    MessageBox.Show("Your system does not meet the minimum requirements for HandBrake. \n" + "Your screen is running at: " + scr.Bounds.Width.ToString() + "x" + scr.Bounds.Height.ToString() + " \nScreen resolution is too Low. Must be 1024x720 or greater", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);\r
-                    launch = false;\r
-                }\r
-\r
-                // Make sure the system has enough RAM. 384MB or greater\r
-                uint memory = MemoryCheck.CheckMemeory();\r
-                memory = memory / 1024 / 1024;\r
-\r
-                if (memory < 256)\r
-                {\r
-                    MessageBox.Show("Your system does not meet the minimum requirements for HandBrake. \n Insufficient RAM. 384MB or greater required. You have: " + memory.ToString() + "MB", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);\r
+                    MessageBox.Show("Your system does not meet the minimum requirements for HandBrake. \n" + "Your screen is running at: " + scr.Bounds.Width + "x" + scr.Bounds.Height + " \nScreen resolution is too Low. Must be 1024x720 or greater", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);\r
                     launch = false;\r
                 }\r
             }\r
             catch (Exception exc)\r
             {\r
-                MessageBox.Show("frmMain.cs - systemCheck() " + exc.ToString());\r
+                MessageBox.Show("frmMain.cs - systemCheck() " + exc);\r
             }\r
 \r
             // Either Launch or Close the Application\r
-            if (launch == true)\r
+            if (launch)\r
             {\r
+                string appDir = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "\\HandBrake";\r
+                if (!Directory.Exists(appDir))\r
+                    Directory.CreateDirectory(appDir);\r
+\r
+                string logDir = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "\\HandBrake\\logs";\r
+                if (!Directory.Exists(logDir))\r
+                    Directory.CreateDirectory(logDir);\r
+\r
+                if (!File.Exists(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "\\HandBrake\\presets.xml"))\r
+                {\r
+                    PresetsHandler x = new PresetsHandler();\r
+                    x.updateBuiltInPresets();\r
+                }\r
+\r
                 Application.EnableVisualStyles();\r
                 Application.SetCompatibleTextRenderingDefault(false);\r
                 Application.Run(new frmMain());\r
             }\r
             else\r
-            {\r
                 Application.Exit();\r
-            }\r
         }\r
     }\r
 \r
-    class MemoryCheck\r
-    {\r
-        public struct MEMORYSTATUS\r
-        {\r
-            public UInt32 dwLength;\r
-            public UInt32 dwMemoryLoad;\r
-            public UInt32 dwTotalPhys; // Used\r
-            public UInt32 dwAvailPhys;\r
-            public UInt32 dwTotalPageFile;\r
-            public UInt32 dwAvailPageFile;\r
-            public UInt32 dwTotalVirtual;\r
-            public UInt32 dwAvailVirtual;\r
-            // Aditional Varibles left in for future usage (JIC)\r
-        }\r
-\r
-        [DllImport("kernel32.dll")]\r
-        public static extern void GlobalMemoryStatus\r
-        (\r
-            ref MEMORYSTATUS lpBuffer\r
-        );\r
-\r
-        public static uint CheckMemeory()\r
-        {\r
-            // Call the native GlobalMemoryStatus method\r
-            // with the defined structure.\r
-            MEMORYSTATUS memStatus = new MEMORYSTATUS();\r
-            GlobalMemoryStatus(ref memStatus);\r
-\r
-            uint MemoryInfo = memStatus.dwTotalPhys;\r
-\r
-            return MemoryInfo;\r
-        }\r
-    }\r
 }
\ No newline at end of file