現在、渡された引数で何かを行う特別なコマンドを実行するサービスを実装しようとしています。たとえば、ファイル パスです。私はcmd
コマンドを使用しています:
sc control "ServiceName" 128
ただし、このコマンドでは引数を入力する方法がありません。方法は以下の通りです。
protected override void OnCustomCommand(int command)
{
switch(command)
{
case 128:
Command.StartProcess(3);
LogWriter.WriteLog("Next output: ");
Command.StartProcess(4);
break;
case 129:
// input extension, output extension, key id , working path
try
{
test t1 = new test();
t1.readLog(@"C:\Users\Joe\Desktop\success.txt");
LogWriter.WriteLog(t1.input);
LogWriter.WriteLog(t1.output);
}
catch(Exception e)
{
LogWriter.WriteLog(e.ToString());
}
finally { LogWriter.WriteLog("abc"); }
//LogWriter.WriteLog(t1.output + "def");
break;
}
}
入力できる唯一の引数はint
command
、メソッドの です。folder path
forを入力したいのですがt1.readLog();
。上記のコードでは、柔軟で面倒なパスをハードコーディングする必要があります。それで、とにかくこれを解決する方法はありますか?