Я пытаюсь использовать Quartz.Net для планирования заданий внутри службы Windows, которую я разработал.
Я включил следующий код в метод Onstart , планировщик является атрибутом класса private readonly IScheduler scheduler;
logger = LogManager.GetLogger(typeof (TelegestionService));<br />
scheduler = new StdSchedulerFactory().GetScheduler();<br />
var job = new JobDetail("job1", "group1", typeof (HelloJob));<br />
var trigger = new SimpleTrigger("trigger1", "group1", runTime);<br />
scheduler.ScheduleJob(job, trigger);
Это прекрасно работает для меня.Я выполнил задание.
Теперь я пытаюсь сделать встроенный планировщик удаленно доступным, на основе en Example12 в Примерах исходного кода Quartz (Консольный сервер / клиент работает нормально).
var properties = new NameValueCollection();<br />
properties["quartz.scheduler.instanceName"] = "RemoteServer";<br />
properties["quartz.threadPool.type"] = "Quartz.Simpl.SimpleThreadPool, Quartz";<br />
properties["quartz.threadPool.threadCount"] = "5";<br />
properties["quartz.threadPool.threadPriority"] = "Normal";<br />
properties["quartz.scheduler.exporter.type"] = "Quartz.Simpl.RemotingSchedulerExporter, Quartz";<br />
properties["quartz.scheduler.exporter.port"] = "555";<br />
properties["quartz.scheduler.exporter.bindName"] = "QuartzScheduler";<br />
properties["quartz.scheduler.exporter.channelType"] = "tcp";<br /><br />
scheduler = new StdSchedulerFactory(properties).GetScheduler();<br />
Служба запускается правильно, как и планировщик, но я не могу удаленно планировать задание с помощью клиента консоли / Winform (соединение отклонено).
Я проверил LISTENING порты на своем сервере, используяSysInternals TcpView и я не могу найти порт 555, указанный выше.
Я подозреваю проблему, связанную с .Net Remoting, но не могу понять, как ее решить.Есть идеи?
Заранее спасибо.