Jump to content


This is a ready-only archive of the InstallSite Forum. You cannot post any new content here. / Dies ist ein Archiv des InstallSite Forums. Hier können keine neuen Beiträge veröffentlicht werden.
Photo

UAC und benutzerdefinierte Aktion


6 replies to this topic

Tlorenzo

Tlorenzo
  • Full Members
  • 34 posts

Posted 23 July 2010 - 10:31

Guten Morgen,

ich führe in einer benutzerdefinierten Aktion ein Batch-Skript aus SUPPORTDIR aus.

Wird mein Basic-MSI unter einem OS mit aktivierter UAC ausgeführt, scheitert die Ausführung dieses Batch-Skripts. Starte ich die Installation im Kontext "Als Administrator ausführen", funktioniert das Skript fehlerfrei.

Besteht die Möglichkeit bei der Ausführung der benutzerdefinierten Aktion "erhöhte Rechte" anzufordern?

Habe etwas gegoogelt und bin auf folgenden Artikel aufmerksam geworden.

Ich habe es bereits mit der Option "In-Script-Ausführung: Verzögerte Ausführung im Systemkontext" getestet, aber erhalte dabei immer folgende Fehlermeldung:

CODE
Cannot write script record. Transaction not started. - OK


Hat jemand einen Tipp?

Gruß,
tlorenzo

Edited by Tlorenzo, 23 July 2010 - 10:31.


Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 23 July 2010 - 12:19

Das ist der richtige Weg. allerdings darf die Aktion dann nur zwischen InstallInitialize und InstallFinalize (in der Execute-Sequenz) liegen. Die Fehlermeldung deutet darauf hin, dass du sie irgenwo vor InstallInitialize eingefügt hast.

Tlorenzo

Tlorenzo
  • Full Members
  • 34 posts

Posted 23 July 2010 - 13:20

Hi Stefan,

danke für den Tipp.

Wo muss ich das den genau einstellen?

Die Optionen Installationsausführungssequenz, Angebotsausführungssequenz, Admin-UI-Sequenz und Admin-Ausführungssequenz sind aktuell als <Fehlt in Sequenz> konfiguriert.

Danke.

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 23 July 2010 - 13:27

Sorry, ich habe die deutsche Version nicht. Wahrscheinlich ist die Aktion derzeit in the Install-UI Sequenz ("Installations-UI" ?) eingetragen? Dort rausnehmen und stattdessen bei Installationsausführungssequenz einfügen. Wo genau (zwischen InstallInitialize und InstallFinalize) hängt davon ab, was die Aktion macht und ob sie dazu z.B. eine Datei braucht, die erst installiert wird. Im allgemeinen würde ich sie ziemlich am Ende, also direkt vor InstallFinalize, einfügen, damit sie nicht ausgeführt wird, wenn die Installation vorher abbricht.
Hast du dir auch Gedanken zum Rollback gemacht und ob die Aktion z.B. bei einem Update auch ausgeführt werden soll?

Tlorenzo

Tlorenzo
  • Full Members
  • 34 posts

Posted 23 July 2010 - 14:10

Nein, bisher nicht. Ich möchte es erst einmal am Laufen haben.

Das Batch-Skript editiert die ACL der installierten Dateien und muss somit nach der Installation ausgeführt werden.

Ich bekomm die einstellungen in der Benutzerdefinierten Sequenz nicht hin. Wie lautet die Option den im Englischen?

Ich erhalte immer die o.g. Fehlermeldung! huh.gif

Tlorenzo

Tlorenzo
  • Full Members
  • 34 posts

Posted 23 July 2010 - 15:17

Mich würde die Lösung weiterhin interessieren, aber ich habe einen Workaround gefunden.

Setup-Eigenschaften > Erforderliche Ausführungsstufe > Administrator

Durch diese Option wird vor dem Ausführen des IS bei aktivierter UAC zwingend die Admin-Kennung benötigt und diese wird auch für meine benutzerdefinierte Aktion gehalten.

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 26 July 2010 - 18:11

Du musst bei Installationsausführungssequenz eine geeignete Stelle zwischen InstallInitialize und InstallFinalize auswählen. In den anderen Sequenzen sollte <Fehlt in Sequenz> eingestellt sein, also insbesondere auch in der Install-UI-Sequenz.