Wo ist hier der Fehler?

  • hi leute ich war grad dabei eine autostart funktion für mein programm zu schreiben aber ich habe das problemm das der reg eintrag nicht erstellt wird aber ich hab kp warum

    Spoiler anzeigen
    [autoit]


    Func _autostart()
    If $Autostart = "off" Then
    IniWriteSection(@ScriptDir & "\Config.ini", "AutoStart", "Autorun=on")
    RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run", "TrayHelper", "REG_SZ", @ScriptDir & "\TrayHelper.exe")
    GUICtrlSetState($about2,"Autostart (on)")
    Else
    IniWriteSection(@ScriptDir & "\Config.ini", "AutoStart", "Autorun=off")
    RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\TrayHelper", @ScriptDir & "\TrayHelper.exe")
    GUICtrlSetState($about2,"Autostart (off)")
    EndIf
    EndFunc

    [/autoit]


    hoffe ihr könnt mir helfen
    MFG Masterfreak0815

  • Habe selbst schon mehrfach mit Registry-Einträgen gearbeitet.
    Ging bei mir auch immer glatt.

    Wie sieht's denn mit den Userberechtigungen dafür aus?
    Schreibst Du als Administrator? Oder bist Du nur einfacher Benutzer?
    Ich glaube, in den HKLM-Bereich kannst Du nicht ohne weiteres als einfacher Nutzer schreiben.

    Vielleicht liegt hier ein Problem?!

    Rasta

  • arg ich habe grade mal versucht den schlüßel von hand an zu legen und bekomm ne fehlermeldung das ich das nicht darf XD
    die ini ist für was anderes
    //€dit:
    Rasta
    jop daran liegt es

  • Dann musst du wohl HKCU nehmen.

    [autoit]

    If RegRead("HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run","TrayHelper") = @ScriptDir & "\TrayHelper.exe" Then
    RegDelete("HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run", "TrayHelper")
    Else
    RegWrite("HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run", "TrayHelper", "REG_SZ", @ScriptDir & "\TrayHelper.exe")
    EndIf

    [/autoit]