-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathProgram.cs
70 lines (63 loc) · 3.07 KB
/
Program.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
// ****************************************************************************
//
// HdBrStreamExtractor - A GUI front-end for eac3to
// Copyright (C) 2010-2012 Matthew Griffore
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 3 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, see <http://www.gnu.org/licenses/>.
//
// ****************************************************************************
using System;
using System.Collections.Generic;
using System.Windows.Forms;
namespace eac3toGUI
{
static class Program
{
/// <summary>The main entry point for the application.</summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
string eac3toPath = System.IO.Path.Combine(System.IO.Directory.GetCurrentDirectory(), "eac3to.exe");
if (!System.IO.File.Exists(eac3toPath))
{
MessageBox.Show("HD-DVD/Blu-Ray Stream Extractor must be run from the eac3to folder. Please restart the application in the correct location",
"Startup folder", MessageBoxButtons.OK, MessageBoxIcon.Stop, MessageBoxDefaultButton.Button1);
#if !DEBUG
return;
#endif
}
try
{
Application.Run(new HdBrStreamExtractor());
}
catch (Exception ex)
{
using (System.IO.StreamWriter SW = new System.IO.StreamWriter(System.IO.Path.Combine(System.IO.Directory.GetCurrentDirectory(), "HdBrStreamExtractor.txt"), true))
{
SW.WriteLine(string.Format("[{0}] {1}{2}", DateTime.Now.ToString("HH:mm:ss"), ex.Message, Environment.NewLine));
SW.WriteLine(string.Format("[{0}] {1}{2}", DateTime.Now.ToString("HH:mm:ss"), ex.TargetSite.Name, Environment.NewLine));
SW.WriteLine(string.Format("[{0}] {1}{2}", DateTime.Now.ToString("HH:mm:ss"), ex.Source, Environment.NewLine));
SW.WriteLine(string.Format("[{0}] {1}{2}", DateTime.Now.ToString("HH:mm:ss"), ex.StackTrace, Environment.NewLine));
SW.Close();
}
MessageBox.Show(string.Format("Message: {0}\r\nSource: {1}\r\nStack Trace: {2}", ex.Message, ex.Source, ex.StackTrace),
"Application Exception", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1);
if(Cursor.Current != Cursors.Default)
Cursor.Current = Cursors.Default;
}
}
}
}