-
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Program.cs
32 lines (31 loc) · 1.28 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
namespace WordUnprotector
{
internal static class Program
{
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main()
{
List<string> filePaths = System.Environment.GetCommandLineArgs().ToList(); // コマンドライン引数の取得
filePaths.RemoveAt(0); // ※最初(0番目)のコマンドライン引数は実行ファイル自身のファイルパスなので除外
if (filePaths.Count == 0) // コマンドライン引数が無い(=ファイルがドラッグ&ドロップされていない)場合はフォームを立ち上げ
{
ApplicationConfiguration.Initialize();
Application.Run(new Form1());
}
else // コマンドライン引数があればフォームを起動せず、直接それをWordUnprotectLogicに渡す
{
var wordUnprotectLogic = new WordUnprotectLogic(filePaths);
if (IniFile.IniFileExists()) //Settings.ini存在時は設定値を読み込む
{
var iniFile = new IniFile();
wordUnprotectLogic.IsAlertEnabled = bool.Parse(iniFile.Read("IsAlertEnabled"));
}
wordUnprotectLogic.Unprotect();
wordUnprotectLogic.ShowUnprotectionAlert();
}
}
}
}