【发布时间】:2016-04-01 03:41:19
【问题描述】:
我目前正在尝试实现一个服务,该服务运行一个特殊命令,该命令对传递的参数执行某些操作,例如:文件路径。我正在使用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;
}
}
我可以输入的唯一参数是该方法的intcommand。我想为t1.readLog(); 输入folder path。在上面的代码中,我必须对不灵活且麻烦的路径进行硬编码。那么,有没有办法解决这个问题?
【问题讨论】:
标签: c# service parameters servicecontroller