Laden...

Anwendung nach Restart nicht in den Vordergrund kommen lassen

Erstellt von oli001 vor 9 Jahren Letzter Beitrag vor 9 Jahren 1.017 Views
O
oli001 Themenstarter:in
449 Beiträge seit 2005
vor 9 Jahren
Anwendung nach Restart nicht in den Vordergrund kommen lassen

Hallo,
eigentlich beschreibt der Titel schon sehr genau was ich will:

Ich starte eine Applikation nach einer bestimmten Zeit neu. Das Problem ist nun, dass die Anwendung immer nach vorne poppt. Kann man das verhindern?

TopMost ist auf false.

Grüße Oli

Viele Grüße, Oli

T
2.223 Beiträge seit 2008
vor 9 Jahren

Hier wäre die Frage wie die Anwendung neustartet.
Machst du das über die Aufgabenplanung?
Dort gibt es eine ensprechende Option.

Oder machst du dies über eine Anwendung/Batch Datei?

T-Virus

Developer, Developer, Developer, Developer....

99 little bugs in the code, 99 little bugs. Take one down, patch it around, 117 little bugs in the code.

O
oli001 Themenstarter:in
449 Beiträge seit 2005
vor 9 Jahren

Hi,

das mache ich über die Anwendung mit Application.Restart();

edit:


static class Program
    {
         private static System.Timers.Timer t;

        [STAThread]
        static void Main()
        {
            t = new System.Timers.Timer();
            t.Elapsed += t_Elapsed;
            t.Interval = 1000 * 60 * 60;
            t.Enabled = true;
            t.Start();

           Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new Maschinenkontrolle());
    }

        static void t_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
        {
            Application.Restart();
        }
    }


Viele Grüße, Oli

T
2.223 Beiträge seit 2008
vor 9 Jahren

Bin nicht sicher ob das klappt.
Aber kannst du ggf. mit Apllication.OnStartup deine Anwendung mit Hide() verstecken?

T-Virus

Developer, Developer, Developer, Developer....

99 little bugs in the code, 99 little bugs. Take one down, patch it around, 117 little bugs in the code.

16.830 Beiträge seit 2008
vor 9 Jahren

Mal abgesehen vom Funktionswunsch... Was soll der Restart bringen?
In 99% der Fälle wollen die Leute einen Restart weil die Anwendung an irgendeiner Stelle offensichtlich nicht gut umgesetzt wurde und such dadurch was erhoffen.

T
2.223 Beiträge seit 2008
vor 9 Jahren

@Abt
Die Frage stelle ich mir zwar auch, da ein Restart schon begründet sein muss.
Aber da der TO schon um die 400 Posts hat, gehe ich mal davon aus das er weiß was er tut 😮)

T-Virus

Developer, Developer, Developer, Developer....

99 little bugs in the code, 99 little bugs. Take one down, patch it around, 117 little bugs in the code.

O
oli001 Themenstarter:in
449 Beiträge seit 2005
vor 9 Jahren

Hi,
ja ich weiß was ich tue 😃
In diesem Fall ist ein Restart nötig, da sich bestimmte firmeninterne Gegebenheiten im Umfeld der Anwendung geändert haben. Und das kann ich nur über einen Restart des Programms erledigen...

Da die SW an viele Rechner ausgeliefert wird, ist ein Eintrag über die Aufgabenplanung eher kompliziert...

Grüße Oli

Viele Grüße, Oli

3.825 Beiträge seit 2006
vor 9 Jahren

Hallo Oli,

statt Application.Restart kannst Du auch Process.Start benutzen und die eigene Anwendung selbst schließen. Dort hast Du die Kontrolle ob Du minimierst startest oder nicht. Nicht-minimiert und nicht im Vordergrund geht glaube ich nicht.

Ich würde dennoch prüfen ob es ohne Restart geht. Packe das Laden des Umfeldes der Umgebung in eine eigene Methode und rufe die auf statt Restart.

Ändert sich die Exe ? Dann starte nur neu wenn es wirklich eine neue Exe gibt. Das funktioniert seit Windows 7 nicht mehr.

Grüße Bernd

Workshop : Datenbanken mit ADO.NET
Xamarin Mobile App : Finderwille Einsatz App
Unternehmenssoftware : Quasar-3