Ich versuche derzeit, einen Dienst zu implementieren, der einen speziellen Befehl ausführt, der etwas mit übergebenen Argumenten ausführt, zum Beispiel: Dateipfade. Ich bin mit dem cmd
Befehl:C# service onCustomCommand mit Parametern?
sc control "ServiceName" 128
jedoch dieser Befehl keine Möglichkeit zur Eingabe von Argumenten für mich bereitstellt. Das Verfahren ist wie nachstehend:
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;
}
}
Das einzige Argument kann die i Eingang int
command
für das Verfahren ist. Ich möchte eine folder path
für t1.readLog();
eingeben. In dem obigen Code muss ich den Pfad fest codieren, der nicht flexibel und mühsam ist. Also, gibt es das irgendwie, um das herauszufinden?