Eure Anwendungen mit Windows starten

    • VB.NET

    Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von DrVisualBasic.

      Eure Anwendungen mit Windows starten

      Hallo Zusammen,


      ich bin neu in diesem Forum, habe allerdings viel gutes gehört! Ich möchte meinen ersten Beitrag hier in Form eines Tutorial's leisten.
      Per Source Code werde ich euch eine Möglichkeit zeigen eure Anwendungen in den Autostart des Computers ein zu schreiben.
      Ich wähle diese Methode da sie nebenbei noch erklärt wie man Schlüssel in der Registry bearbeiten kann und dies durchaus hilfreich sein kann. Ich Hoffe das mein Beitrag verständlich ist und auf Gefallen stoßen wird.


      Für dieses Beispiel wird eine Windows Forms Anwendung mit einer CheckBox benötigt, dessen Name Ihr standertsgemäß auf "CheckBox1" lasst!
      Als erstes setzen wir die Verweise und deklarieren den RegKeySchlüssel zum Autostart(Run)


      VB.NET-Quellcode

      1. Option Explicit On
      2. Imports Microsoft.Win32
      3. Public Class Form1
      4. Dim RegKey As RegistryKey = Registry.LocalMachine.OpenSubKey("Software\\Microsoft\\Windows\\CurrentVersion\\Run\\", True)



      Um Beim laden der Anwendung den Checked-Status der CheckBox zu setzen benötigen wir folgenden Form_Load Code:

      VB.NET-Quellcode

      1. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
      2. 'Im Autostart aktiv? Wenn ja Häkchen setzen
      3. If CType(RegKey.GetValue(Application.ProductName), String) = (Application.ExecutablePath & " /Win") Then
      4. CheckBox1.Checked = True
      5. Else
      6. CheckBox1.Checked = False
      7. End If
      8. End Sub



      Zum Abschluss legen wir fest was passiert wenn sich der Checked Status ändert:


      VB.NET-Quellcode

      1. Private Sub CheckBox1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles CheckBox1.Click
      2. If CheckBox1.Checked = True Then
      3. 'Mit Windows starten falls Haken gesetzt
      4. Try
      5. RegKey.SetValue(Application.ProductName, Application.ExecutablePath & " /Win")
      6. Catch ex As Exception
      7. MsgBox("Konnte Autostart leider nicht hinzufügen", CType(MsgBoxStyle.MsgBoxSetForeground + MsgBoxStyle.Critical, MsgBoxStyle), "Fehler")
      8. End Try
      9. Else
      10. 'Autostart wieder deaktivieren wenn kein Haken gesetzt
      11. Try
      12. If CType(RegKey.GetValue(Application.ProductName), String) <> "" Then RegKey.DeleteValue(Application.ProductName)
      13. Catch ex As Exception
      14. MsgBox("Konnte Autostart leider nicht entfernen", CType(MsgBoxStyle.MsgBoxSetForeground + MsgBoxStyle.Critical, MsgBoxStyle), "Fehler")
      15. End Try
      16. End If
      17. End Sub



      Falls Ihr allgemein Fragen habt antworte ich euch gerne.
      Ich hoffe ich kontte zumindest einigen von euch weiter helfen :thumbsup:


      Liebe Grüße
      DrVisualBasic


      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „mikeb69“ ()

      Hallo DrVisualBasic,

      du solltest noch erwähnen, dass dein Code ab Vista aufwärts nicht mehr funktioniert.
      Denn du greifst auf Local_Machine zu.

      Besser wäre es, meiner Meinung nach, das Ganze unter Current_User laufen zu lassen.

      Gruss

      mikeb69
      Hey Mike.
      Stimmt das habe ich gar nicht in betracht gezogen! Ich arbeite seit Jahren mit XP Pro, wenn man so ein bisschen am Design schraubt kann man eig. sehr gut mit XP arbeiten. Weitere Systeme habe ich eig. nur in einer VM behandelt. Werde sobald ich weitere Infos habe das Tutorial ergänzen!

      LG Max