Autostart Eintrag mit Parameter

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 1 Antwort in diesem Thema. Der letzte Beitrag () ist von RodFromGermany.

    Autostart Eintrag mit Parameter

    Hi,

    ich habe eine Anwendung, die ich bei Bedarf in die Registry als "Autorun" eintragen möchte.

    So funktioniert das:

    VB.NET-Quellcode

    1. Try
    2. My.Computer.Registry.LocalMachine.OpenSubKey("SOFTWARE\Microsoft\Windows\CurrentVersion\Run",
    3. True).SetValue(Application.ProductName,
    4. Application.ExecutablePath)


    Nun würde ich gern noch unterscheiden, ob das Programm via "Autorun" oder anderweitig, etwa via "Doppelclick" im Explorer gestartet wurde. Dazu würde ich gern in den Autostart den Parameter "-i" aufnehmen, den ich dann in der Load Prozedur abfrage. So habe ich das versucht:

    VB.NET-Quellcode

    1. Try
    2. My.Computer.Registry.LocalMachine.OpenSubKey("SOFTWARE\Microsoft\Windows\CurrentVersion\Run",
    3. True).SetValue(Application.ProductName,
    4. Application.ExecutablePath & " -i")


    Aber die Properties des Eintrags bleiben unverändert. So einfach geht das also wohl nicht !

    Wie kriege ich denn das vermaledeite "-i" als Start Parameter in die Registry ?

    Ich bin sicher, irgend jemand weiß das ! :)

    LG
    Peter
    @Peter329 Dieser Dein Code läuft sofort und korrekt, Win10 und Administrator:
    Code

    VB.NET-Quellcode

    1. Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    2. My.Computer.Registry.LocalMachine.OpenSubKey("SOFTWARE\Microsoft\Windows\CurrentVersion\Run",
    3. True).SetValue("AutoTest1",
    4. Application.ExecutablePath)
    5. End Sub
    6. Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
    7. My.Computer.Registry.LocalMachine.OpenSubKey("SOFTWARE\Microsoft\Windows\CurrentVersion\Run",
    8. True).SetValue("AutoTest2",
    9. Application.ExecutablePath & " -i")
    10. End Sub

    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!