-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathProgram.cs
58 lines (52 loc) · 1.75 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
///Borderlands Advanced Settings Tool
///Developed By Babak B. MDKv4
///Code Release Date: 9/12/2010
using System;
using System.IO;
using System.Reflection;
using System.Windows.Forms;
using BorderlandsAdvancedConfig.ErrorHandling;
namespace BorderlandsAdvancedConfig
{
static class Program
{
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
try
{
Application.Run(new FrmConfig());
}
catch (Exception ex)
{
FileStream fs = File.Create(GetCrashLogFilePath());
StreamWriter sw = new StreamWriter(fs);
sw.Write(ex.Message);
sw.Write(ex.StackTrace.ToString());
sw.Close();
fs.Close();
ErrorMessageBox msgBox = new ErrorMessageBox(ex.Message + Environment.NewLine + ex.StackTrace, "Unexpected Error", "Sorry, the tool encountered an error. Error log:");
Application.Run(msgBox);
}
}
private static string GetCrashLogFilePath()
{
string fileNameFormatString = "crashlog{0}.log";
string filePath = string.Empty;
int num = 0;
bool fileFound = true;
while (fileFound)
{
filePath = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), string.Format(fileNameFormatString, num));
fileFound = File.Exists(filePath);
num++;
}
return filePath;
}
}
}