2012-11-27 13 views
5

Ich entwickle eine Forms-Anwendung, die entweder beim Windows-Start (durch Registrierung eines Schlüssels in der Registrierung) oder beim tatsächlichen Benutzer gestartet werden soll.Wurde meine Bewerbung von Hand gestartet?

Wenn der Benutzer es manuell startet (d. H. Auf die ausführbare Datei klickt), möchte ich, dass das Formular angezeigt wird. Falls Windows das Ereignis ausgelöst hat, möchte ich, dass die Anwendung ausgeblendet wird (in die Taskleiste).

Gibt es eine Möglichkeit, programmgesteuert festzustellen, welche dieser Fälle aufgetreten sind?

+7

Einfache Lösung gibt einige Argument übergeben, wenn es von Autostart gestartet wird. Etwas wie 'myapp.exe/hide' – CodesInChaos

Antwort

7

Ich würde vorschlagen, einen Befehlszeilenparameter, etwa -minimized hinzufügen und übergeben, wenn es beim Booten gestartet wird.

Siehe this thread, wenn Sie suchen, wie Sie die Argumente lesen.

+0

Danke für Ihren Hinweis! Ich habe diese Idee völlig vermisst. – fjdumont

3

Sie können Ihre Anwendung beim Start von Windows mit einem bestimmten Parameter starten, während ein Benutzer sie ohne diesen Parameter startet.

1

Der einfachste Weg, das zu tun, dass ich denken kann, ist:

Wenn Sie in Windows Booten registrieren laufen, einen parameter (einige Standards parameter), für den Fall passieren, wenn der Benutzer es laufen wird, Parameter wird abwesend sein.

Auf diese Weise können Sie, je nach Vorhandensein oder Fehlen eines Parameters, die Startoption Ihres Programms bestimmen.

Verwandte Themen