/// <summary>
 /// コマンド終了イベントを実行する
 /// </summary>
 /// <param name="sender">イベント呼び出し元オブジェクト</param>
 /// <param name="e">イベント引数</param>
 /// <exception cref="NotImplementedException"></exception>
 private void Command_ExecuteFinished(object sender, EventArgs e)
 {
     //タイマの停止
     _timer.Stop();
     //ファイルパス
     _resultFilePath = _command.RecordPath;
     //キャンセ要求時
     if (_command.CancelRequest)
     {
         ExecuteCanceled?.Invoke(this, new EventArgs());
     }
     else
     {
         ExecuteFinished?.Invoke(this, new EventArgs());
     }
     //コマンドの破棄
     _command?.Dispose();
     Close();
 }
Exemple #2
0
        /// <summary>
        /// サイレントモードを実行する
        /// </summary>
        /// <param name="param">パラメータ</param>
        /// <returns></returns>
        static void RunSilent(string[] param)
        {
            RenameLogger.ConsoleMode = true;
            NativeMethods.AttachConsole(uint.MaxValue);
            var args = param;

            //コマンドライン不正時の処理
            if (!IsValidCommandLine(args, out string msg))
            {
                var e = new CommandLineArgumentException(
                    msg, CommandLineArgumentErrorCategory.ApplyValueError);
                RenameLogger.WriteLog(new LogItem
                {
                    Exception = e,
                    Level     = LogLevel.Error,
                    Message   = InvalidCommandLineParam()
                });;
                throw e;
            }
            //実行コマンド
            var command = new RenameCommand();

            //実行
            command.Execute(new RenameExecuteParams
            {
                SourcePath      = args[0],
                DestinationPath = args[1],
                PrefixName      = args[2],
                Signature       = args[3],
                Settings        = new OptionSettingsSerializer().Load()
            });
            //変換結果を出力
            var outStream = Console.Out;

            foreach (var line in command.RecordItems)
            {
                outStream.WriteLine(line);
            }
            //コマンドの破棄
            command.Dispose();
        }