Autostart und Programme im Hintergrund

30/06/2008 - 09:10 von Adrian Stern | Report spam
Hallo zussammen

Viele Programme bieten ja die Möglichkeit im Hintergrund zu laufen oder
zu System tray minimiert zu werden.

Wie macht man so etwas?

Wenn ich ein neues Projekt starte, habe ich 3 Möglichkeiten offen.

1. Eine Konsolen-Applikation
2. Eine Windows-From-Applikation
3. Ein Windwos Service

1 und 2 sind ja beide Sichtbar und 3 scheint für mich nicht der richtige
Ansatz zu sein, zumal ich mich noch nie mit Windwos Services
auseindander gesetzt habe.

Wie kann ich ein Programm "verdeckt" starten? Und wie setze ich ein
System Tray icon?

Meine 2. Frage dreht sich um den Autostart.
Wie setze ich Registry eintràge und Speziell wie setze ich den Registry
eintrag um ein Programm auto zu starten?

mfg
Adrian Stern
 

Lesen sie die antworten

#1 Kerem Gümrükcü
30/06/2008 - 09:36 | Warnen spam
Hallo Adrian,

Viele Programme bieten ja die Möglichkeit im Hintergrund zu laufen oder
zu System tray minimiert zu werden.



das sind, aus meiner Ansich her zwei verschiedene Dinge:
Winmal das Programm was im Hintergrund làuft und dann
das Programm im Tray. Aus meiner Sicht zwei unterschiedliche
Singe, aber auch sehr stark davon abhàngig, was das Programm
genau macht.

Wie macht man so etwas?


Kommt gleich,...


Wenn ich ein neues Projekt starte, habe ich 3 Möglichkeiten offen.

1. Eine Konsolen-Applikation
2. Eine Windows-From-Applikation
3. Ein Windwos Service

1 und 2 sind ja beide Sichtbar und 3 scheint für mich nicht der richtige
Ansatz zu sein, zumal ich mich noch nie mit Windwos Services
auseindander gesetzt habe.



1 oder zwei hàngen davon ab, was dein Programm werden soll, wenn
es fertig ist. Eine Konsole làsst sich gut für kleine hilferiche Tools, oder
aber auch sehr màchtige Programme benutzen. Grafische Oberflàchen
nimmt man für "ausdruckstarke" Programme oder solche, die eine
grafischen Oberflàche benötigen um z.B. darauf zu zeichnen. Was Du
letztendlich nimmst, hàngst stark davon ab, was Du für ein Programm
schreiben willst. Das liegt bei Dir, hier gibt es keine generelle Vorgabe.

Wie kann ich ein Programm "verdeckt" starten? Und wie setze ich ein
System Tray icon?



Da gibt es viele Wege, aber bei einer Form kannst Du den Form.Visible
Wert auf false setzen, oder wenn Du ein externes Programm starten willst,
kannst Du es "hidden" starten. Hier müsste man nochmal fragen, ob Du
deine "eigenes" Programm starten willst, oder "ein" Programm, also ein
X-Beliebeiges,...

Meine 2. Frage dreht sich um den Autostart.



Alle Benutzer hier:
C:\Dokumente und Einstellungen\All Users\Startmenü\Programme\Autostart

Aktueller oder bestimmter Benutzer hier:
C:\Dokumente und Einstellungen\<BENUTZERNAME>\Startmenü\Programme\Autostart

Die Daten sind über Environment.GetFolderPath(...) zu bekommen:
http://msdn.microsoft.com/de-de/lib...folderpath(VS.80).aspx

Wie setze ich Registry eintràge und Speziell wie setze ich den Registry
eintrag um ein Programm auto zu starten?



Es gibt da generell zwei Pfade, einmal für alle Benutzer und
dann für nur den aktuellen oder einen bestimmten Benutzer:

Alle Benutzer:
Arbeitsplatz\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Ru
n

Aktueller oder bestimmter Benutzer:
Arbeitsplatz\HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

Dann gibts da nich den Schlüssel "Arbeitsplatz\HKEY_USERS", der
Unterschlüssel
mit allen interaktiven Benutzern enthàllt, die auch im Prinzip das gleiche
Layout
haben und beschreibar sind...

Um ein Programm anzulegen, das mit dem ganzen System, oder nur mit dem
Benutzer (je nach dem wo Du den EIntrag machst!) startet, musst Du einen
Eintrag vom Typ "String" machen und den ganzen Ppad unf ggf die Parameter
dazu angeben. Wenn Du Dir deine Schlüssel ansiehst, dann wirst Du das
schnell verstehen!

Ein Dienst ist etwas, das im Hintergrund làuft und mit tlw. speziellen
Rechten,
das absolut keine Oberflàche braucht und wirklich Dinge im Hintergrund
erledigt,...aber dazu findest Du in der MSDN mehr,...


Hoffe das ist ein erster Ansatz für dich, mehr dazu in der MSDN
oder einfach mal im Netz googeln,...

Beachte generell, das es große Sicherheitsunterschiede zischen
Windows 2000/XP und dem neunen Vista. Mehr dazu in der MSDN.
Suche einfach mal etwas,...Du wirst viel finden,...

Grüße

Kerem

Beste Grüsse / Best regards / Votre bien devoue
Kerem Gümrükcü
Microsoft Live Space: http://kerem-g.spaces.live.com/
Latest Open-Source Projects: http://entwicklung.junetz.de
"This reply is provided as is, without warranty express or implied."

Ähnliche fragen