mirror of
https://github.com/xCryptic/MegaKeep.git
synced 2024-11-22 01:52:30 +01:00
Added ability to run via command line with arguments "--cli" and can set file path with "--txtFile" #5 (#6)
This commit is contained in:
parent
10a4d09007
commit
b76965bf63
@ -1,6 +1,7 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Diagnostics;
|
using System.Diagnostics;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
|
using System.Linq;
|
||||||
using System.Threading;
|
using System.Threading;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using System.Windows.Forms;
|
using System.Windows.Forms;
|
||||||
@ -10,11 +11,27 @@ namespace MegaKeep
|
|||||||
public partial class MegaKeep : Form
|
public partial class MegaKeep : Form
|
||||||
{
|
{
|
||||||
private string _local = Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData);
|
private string _local = Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData);
|
||||||
|
private string[] commandlineArgs = { };
|
||||||
public MegaKeep()
|
public MegaKeep()
|
||||||
{
|
{
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
}
|
}
|
||||||
|
public MegaKeep(string[] args)
|
||||||
|
{
|
||||||
|
InitializeComponent();
|
||||||
|
if (args.Length > 0)
|
||||||
|
{
|
||||||
|
commandlineArgs = args;
|
||||||
|
var txtFileIndex = Array.IndexOf(args, "--txtFile") + 1;
|
||||||
|
var txtFile = args[txtFileIndex];
|
||||||
|
if (File.Exists(txtFile))
|
||||||
|
{
|
||||||
|
Properties.Settings.Default.Location = txtFile;
|
||||||
|
Properties.Settings.Default.Save();
|
||||||
|
txtPath.Text = txtFile;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private async void btnRun_ClickAsync(object sender, EventArgs e)
|
private async void btnRun_ClickAsync(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
@ -50,6 +67,8 @@ namespace MegaKeep
|
|||||||
|
|
||||||
// run the processes in a task so it doesn't freeze the ui
|
// run the processes in a task so it doesn't freeze the ui
|
||||||
await Task.Run(() => Work(lines));
|
await Task.Run(() => Work(lines));
|
||||||
|
if (commandlineArgs.Contains("--cli"))// if running in cli mode, closes window after running work.
|
||||||
|
this.Close();
|
||||||
}
|
}
|
||||||
|
|
||||||
private string Login(string user, string pass)
|
private string Login(string user, string pass)
|
||||||
@ -225,6 +244,11 @@ namespace MegaKeep
|
|||||||
|
|
||||||
private void MegaKeep_Load(object sender, EventArgs e)
|
private void MegaKeep_Load(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
|
// if started with arg "--cli" simulate button click in UI
|
||||||
|
if (commandlineArgs.Contains("--cli"))
|
||||||
|
{
|
||||||
|
btnRun.PerformClick();
|
||||||
|
}
|
||||||
txtPath.Text = Properties.Settings.Default.Location;
|
txtPath.Text = Properties.Settings.Default.Location;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
using System;
|
using System;
|
||||||
|
using System.IO;
|
||||||
using System.Windows.Forms;
|
using System.Windows.Forms;
|
||||||
|
|
||||||
namespace MegaKeep
|
namespace MegaKeep
|
||||||
@ -9,11 +10,31 @@ namespace MegaKeep
|
|||||||
/// The main entry point for the application.
|
/// The main entry point for the application.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[STAThread]
|
[STAThread]
|
||||||
static void Main()
|
static void Main(string[] args)
|
||||||
{
|
{
|
||||||
Application.EnableVisualStyles();
|
Application.EnableVisualStyles();
|
||||||
Application.SetCompatibleTextRenderingDefault(false);
|
Application.SetCompatibleTextRenderingDefault(false);
|
||||||
Application.Run(new MegaKeep());
|
CommandArgs(args);
|
||||||
|
Application.Run(new MegaKeep(args)); //passes args to new start method
|
||||||
|
}
|
||||||
|
|
||||||
|
// sets the path to the text file passed via command line.
|
||||||
|
static void CommandArgs(string[] args)
|
||||||
|
{
|
||||||
|
if (args.Length > 0)
|
||||||
|
{
|
||||||
|
var txtFileIndex = Array.IndexOf(args, "--txtFile") + 1;
|
||||||
|
if(args[txtFileIndex] != null)
|
||||||
|
{
|
||||||
|
var txtFile = args[txtFileIndex];
|
||||||
|
if (File.Exists(txtFile))
|
||||||
|
{
|
||||||
|
Properties.Settings.Default.Location = txtFile;
|
||||||
|
Properties.Settings.Default.Save();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user