我写一支Windows Service, 目的只是由这个service去激活另一只WinForm的程序.
Service(ProcessService.exe)程序和WinForm(ProcessRun.exe)程序是放在同一个资料夹之下protected override void OnStart(string[] args) {
AppPath = Assembly.GetExecutingAssembly().Location;
AppPath = AppPath.Substring(0, AppPath.LastIndexOf("\\"));
execFile = AppPath + @"\ProcessRun.exe"; Process.Start(execFile);
}当我使用installUtil将service安装之后, 在服务有看到, 并且将这个service 激活, service能正常的将另一支WinForm(ProcessRun.exe)呼叫执行. 这个Service我设定为自动激活, 结果当我重新开机却服务却执行失败了, 在事件检视器中出现了两个错误讯息. 第一则
ProcessService 服务联机的等候逾时 (30000 毫秒). 第二则
ProcessService 服务宣告失败,错误原因:
服务并未以适时的方式响应激活或控制请求. 不过, 开机后我手动去执行却仍然没有问题. 请问到底是那里出现错误呢? 另外, 顺便请问, 我使用installUtil安装service, 能否一并设定这个service安装之后是"允许服务与桌面互动", 每次重新安装后都要再一次到服务里做设定, 有些麻烦.
Service(ProcessService.exe)程序和WinForm(ProcessRun.exe)程序是放在同一个资料夹之下protected override void OnStart(string[] args) {
AppPath = Assembly.GetExecutingAssembly().Location;
AppPath = AppPath.Substring(0, AppPath.LastIndexOf("\\"));
execFile = AppPath + @"\ProcessRun.exe"; Process.Start(execFile);
}当我使用installUtil将service安装之后, 在服务有看到, 并且将这个service 激活, service能正常的将另一支WinForm(ProcessRun.exe)呼叫执行. 这个Service我设定为自动激活, 结果当我重新开机却服务却执行失败了, 在事件检视器中出现了两个错误讯息. 第一则
ProcessService 服务联机的等候逾时 (30000 毫秒). 第二则
ProcessService 服务宣告失败,错误原因:
服务并未以适时的方式响应激活或控制请求. 不过, 开机后我手动去执行却仍然没有问题. 请问到底是那里出现错误呢? 另外, 顺便请问, 我使用installUtil安装service, 能否一并设定这个service安装之后是"允许服务与桌面互动", 每次重新安装后都要再一次到服务里做设定, 有些麻烦.
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货