Skip to content
This repository has been archived by the owner on Mar 6, 2024. It is now read-only.

Commit

Permalink
GUIと起動方法
Browse files Browse the repository at this point in the history
  • Loading branch information
Takym committed Mar 20, 2020
1 parent 8b999d7 commit e4e0eda
Show file tree
Hide file tree
Showing 3 changed files with 212 additions and 20 deletions.
175 changes: 174 additions & 1 deletion AupLauncher/FormMain.Designer.cs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

39 changes: 29 additions & 10 deletions AupLauncher/Program.cs
Original file line number Diff line number Diff line change
Expand Up @@ -89,16 +89,16 @@ public static int StartupProgram((ExecutionKind kind, string fname) arg)
var psi = new ProcessStartInfo();
switch (arg.kind) {
case ExecutionKind.AviUtl:
psi.FileName = Settings.Default.AviUtlPath;
psi.Arguments = Settings.Default.AviUtlArgs;
psi.FileName = Environment.ExpandEnvironmentVariables(Settings.Default.AviUtlPath);
psi.Arguments = Environment.ExpandEnvironmentVariables(Settings.Default.AviUtlArgs);
break;
case ExecutionKind.Audacity:
psi.FileName = Settings.Default.AudacityPath;
psi.Arguments = Settings.Default.AudacityArgs;
psi.FileName = Environment.ExpandEnvironmentVariables(Settings.Default.AudacityPath);
psi.Arguments = Environment.ExpandEnvironmentVariables(Settings.Default.AudacityArgs);
break;
case ExecutionKind.RunCustomProgram:
psi.FileName = Settings.Default.CustomProgramPath;
psi.Arguments = Settings.Default.CustomProgramArgs;
psi.FileName = Environment.ExpandEnvironmentVariables(Settings.Default.CustomProgramPath);
psi.Arguments = Environment.ExpandEnvironmentVariables(Settings.Default.CustomProgramArgs);
break;
case ExecutionKind.ShowError:
MessageBox.Show(
Expand All @@ -117,14 +117,33 @@ public static int StartupProgram((ExecutionKind kind, string fname) arg)
MessageBoxIcon.Warning);
return -1;
}
psi.UseShellExecute = true;
psi.WorkingDirectory = Path.GetDirectoryName(arg.fname);
psi.Arguments += $" \"{arg.fname}\"";
psi.Verb = "open";
psi.UseShellExecute = true;
psi.WorkingDirectory = Path.GetDirectoryName(arg.fname);
psi.Arguments = CreateArgs(psi.Arguments, arg.fname);
psi.Verb = "open";
Process.Start(psi);
return 0;
}

public static string CreateArgs(string format, string args)
{
string bat = Path.GetTempFileName();
File.WriteAllText(bat, $"@echo off\r\necho {format}", Encoding.UTF8);
var psi = new ProcessStartInfo();
psi.CreateNoWindow = true;
psi.UseShellExecute = false;
psi.WorkingDirectory = Environment.CurrentDirectory;
psi.FileName = Environment.GetEnvironmentVariable("COMSPEC");
psi.Arguments = $"/C call \"{bat}\" {args}";
psi.Verb = "open";
psi.RedirectStandardOutput = true;
using (var proc = Process.Start(psi))
using (var sr = proc.StandardOutput) {
proc.WaitForExit();
return sr.ReadToEnd().Trim();
}
}

public static int SaveErrorReport(Exception e)
{
var dt = DateTime.Now;
Expand Down
18 changes: 9 additions & 9 deletions AupLauncher/SettingProfile.cs
Original file line number Diff line number Diff line change
Expand Up @@ -21,11 +21,11 @@ public SettingProfile()
{
this.DisplayName = Resources.NewProfileDisplayName;
this.AviUtlPath = "C:\\AviUtl\\aviutl.exe";
this.AviUtlArgs = "";
this.AviUtlArgs = "%1";
this.AudacityPath = "‪%ProgramFiles(x86)%\\Audacity\\audacity.exe";
this.AudacityArgs = "‪%ProgramFiles(x86)%\\Audacity\\audacity.exe";
this.AudacityArgs = "%1";
this.CustomProgramPath = "%SystemRoot%\\notepad.exe";
this.CustomProgramArgs = "%SystemRoot%\\notepad.exe";
this.CustomProgramArgs = "%1";
this.HandleForInvalidFile = ExecutionKind.ShowError;
}

Expand All @@ -44,12 +44,12 @@ public virtual void LoadFromRegistry(RegistryKey reg)
public virtual void SaveToRegistry(RegistryKey reg)
{
reg.SetValue(nameof(this.DisplayName), this.DisplayName, RegistryValueKind.String);
reg.SetValue(nameof(this.AviUtlPath), this.AviUtlPath, RegistryValueKind.ExpandString);
reg.SetValue(nameof(this.AviUtlArgs), this.AviUtlArgs, RegistryValueKind.ExpandString);
reg.SetValue(nameof(this.AudacityPath), this.AudacityPath, RegistryValueKind.ExpandString);
reg.SetValue(nameof(this.AudacityArgs), this.AudacityArgs, RegistryValueKind.ExpandString);
reg.SetValue(nameof(this.CustomProgramPath), this.CustomProgramPath, RegistryValueKind.ExpandString);
reg.SetValue(nameof(this.CustomProgramArgs), this.CustomProgramArgs, RegistryValueKind.ExpandString);
reg.SetValue(nameof(this.AviUtlPath), this.AviUtlPath, RegistryValueKind.String);
reg.SetValue(nameof(this.AviUtlArgs), this.AviUtlArgs, RegistryValueKind.String);
reg.SetValue(nameof(this.AudacityPath), this.AudacityPath, RegistryValueKind.String);
reg.SetValue(nameof(this.AudacityArgs), this.AudacityArgs, RegistryValueKind.String);
reg.SetValue(nameof(this.CustomProgramPath), this.CustomProgramPath, RegistryValueKind.String);
reg.SetValue(nameof(this.CustomProgramArgs), this.CustomProgramArgs, RegistryValueKind.String);
reg.SetValue(nameof(this.HandleForInvalidFile), this.HandleForInvalidFile);
}
}
Expand Down

0 comments on commit e4e0eda

Please sign in to comment.