Kennt sich wer mit NSIS aus?

  • Dank FAUST, nutze ich für Hybrid ja seit geraumer Zeit (unicode) NSIS mit folgendem Skript:

    Leider wird jedoch (zumindest bei Win7&8) wenn man eine Desktopverknüpfung anlegt nicht nur eine Verknüpfung für den aktuellen user, sondern für alle User angelegt, obwohl "SetShellVarContext current" ja eigentlich gesetzt ist.

    Sieht jemand den Fehler?

    Cu Selur

  • Was passiert wenn Du testweise folgendes probierst:

    Code
    Section "Desktop" Desktop
        SetShellVarContext current
        MessageBox MB_OK 
        SetOutPath $INSTDIR "Desktop: $DESKTOP"
        CreateShortCut "$DESKTOP\Hybrid.lnk" "$INSTDIR\Hybrid.exe"
    SectionEnd

    Ansonsten: Kann es sein, dass einfach noch ein Shortcut aus einer früheren Installation im Context für "all" existiert?

  • Könnte ebenfalls relevant sein:
    http://nsis.sourceforge.net/Shortcuts_remo…n_Windows_Vista

    Quote

    Windows Vista and Windows 7 automatically identify installer executables, including NSIS installers, and ask the user permission to run them with elevated privileges. Automatic detection, however, comes with the price of automatic backward compatibility tricks. One of which is automatic relocation of shortcuts created in the Start Menu to the All Users' Start Menu.

    To workaround this, use the new RequestExecutionLevel command [...]

    Hier wird zwar nur von Startmenü-Einträgen gesprochen, aber vllt passiert das selbe auch mit Desktop-Verknüpfungen. So oder so ist es besser RequestExecutionLevel admin zu benutzen damit dein Installer ein richtiges Manifest bekommt, anstatt sich auf Kompatibilitätstricks zu verlassen...

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!