2017-07-24 2 views
2

Ich möchte Quarz-Job schreiben, die meine installierte Anwendung aufrufen wird.Anruf Anwendung mit Quarz Job

Zum Beispiel habe ich Konsole App:

class Program 
{ 
    static void Main(string[] args) 
    { 
     Console.WriteLine(Datetime.Now()); 
     Console.ReadLine(); 
    } 
} 

und ich veröffentliche diese App auf meinem Windows-Rechner. Jetzt schreibe ich diesen Code:

class Program 
{ 
    static void Main(string[] args) 
    { 
     var schedFact = new StdSchedulerFactory(); 

     var sched = schedFact.GetScheduler(); 
     sched.Start(); 

     var job = JobBuilder.Create<TestJob>() 
      .WithIdentity("testjob", "testgroup") 
      .Build(); 

     var trigger = TriggerBuilder.Create() 
      .WithIdentity("testtrigger", "testgroup") 
      .WithSimpleSchedule(x => x.WithIntervalInMinutes(1).RepeatForever()) 
      .Build(); 

     sched.ScheduleJob(job, trigger); 
    } 

} 


public class TestJob : IJob 
{ 
    public void Execute(IJobExecutionContext context) 
    { 
     // Here I want to call my app 
    } 
} 

Wie kann ich das tun?

+0

Verwendung Process.Start und die Parameter für die erste Konsole EXE hinzufügen – Paul

Antwort

1

In Ihrem Execute() Methode, rufen ausführbare die Anwendung, die Sie aufrufen müssen:

// eg: "C:/MyApp/app.exe" 
System.Diagnostics.Process.Start("PathToApplication.exe"); 

MSDN Documentation