Laden...

Autostart - Programm im Hintergrund

Erstellt von trib vor 14 Jahren Letzter Beitrag vor 14 Jahren 1.142 Views
T
trib Themenstarter:in
708 Beiträge seit 2008
vor 14 Jahren
Autostart - Programm im Hintergrund

Guten Morgen zusammen,

Wenn ich in meinem Programm einen Haken "Autostart" setzte, soll es natürlich nach dem nächsten Systemstart im Tray bleiben und nicht angezeigt werden.

Frage ich ab ob der Registryeintrag existiert, dann kann es sein das ich das Programm trotzdem per Hand gestartet habe und es wird nicht angezeigt.

Wie bekomme ich also nun mit, das mein Programm per Autostart und nicht vom Benutzer gestartet wurde?

if (cbAutostart.Checked && System.Environment.UserName == "System")
                this.WindowState = FormWindowState.Minimized;

Bring rein garnichts, da wie ich gelernt habe nur Dienste von System gestartet werden können...

Gruß,
TriB

1.549 Beiträge seit 2004
vor 14 Jahren

du könntest den autostart mit einem parameter versehen.

Wir Arbeiten eigendlich nicht wir nehmen nur das geld

T
trib Themenstarter:in
708 Beiträge seit 2008
vor 14 Jahren

du könntest den autostart mit einem parameter versehen.

Und wie/wann setzte ich diesen Parameter? Das kann sinnvoller Weise ja nur beim Beenden des Programmes geschehen.
Also prüfe ich ob das Programm vom Benutzer oder von Windows beendet wurde (Das geht so weit ich weiß über den Sender beim Closing),
dann hätte ich aber das selbe Problem, wenn das Programm per Hand beendet aber nicht wieder gestartet wird...

IMHO gibt es nur eine eindeutige Lösung wenn ich weiß "wer" mein Programm gestartet hat.

T
trib Themenstarter:in
708 Beiträge seit 2008
vor 14 Jahren

Hmmpf, logisch. Ich hatte das jetzt ganz verkehrt verstanden.
Mit Parametern meintest du natürlich

static void Main(string[] args)

Nun geht es wohl. Konnte den PC noch nicht neustarten, aber eine Verknüpfung hilft Wunder 😃

1.549 Beiträge seit 2004
vor 14 Jahren

ja du hast mich zuerst flasch verstanden. aber genau dadrauf wollte ich hinaus.

Wir Arbeiten eigendlich nicht wir nehmen nur das geld