Καλημέρα,
Φτιάχνω ένα windows service το οποίο θέλω να δέχεται από τις ιδιότητες του Service και συγκεκριμένα το πεδίο Start Parameters ώστε να αλλάζει την περίοδο επαναλήψεως της λειτουργίας του σε δευτερόλεπτα:
Έχω
private void InitializeComponent()
{
this.timer1 = new System.Timers.Timer();
((System.ComponentModel.ISupportInitialize)(this.timer1)).BeginInit();
//
// timer1
//
this.timer1.Elapsed += new System.Timers.ElapsedEventHandler(Timer_Elapsed);
this.timer1.Enabled = true;
this.timer1.Interval = 3000;
//
// Service1
//
this.ServiceName = "Service1";
((System.ComponentModel.ISupportInitialize)(this.timer1)).EndInit();
}
και θέλω να αλλάξω το this.timer1.Interval με την τιμή που θα μου δίνει ο χρήστης όταν ξεκινάει το service.
Από όσα forum έχω διαβάσει μέχρι τώρα καταλαβαίνω ότι μάλλον πρέπει να υπερφορτώσω την OnStart ώστε να δεχθεί το argument της παραμέτρου
Η δικιά μου είναι η εξής απλή:
protected override void OnStart(string[] args)
{
// TODO: Add code here to start your service.
timer1.Enabled = true;
}
Τι πιστεύετε ότι πρέπει να κάνω;
Επίσης ποιος είναι ο τρόπος να περνάμε παραμέτρους; Γράφουμε π.χ. στο Start Parameters: 30 (ότι θέλουμε να περάσουμε ανά 30 sec επανάληψη)
Και αν θέλουμε να περάσουμε πολλές παραμέτρους τις περνάμε με κενά;
Ευχαριστώ εκ των προτέρων