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

Vista UAC


15 replies to this topic

PeKaWe

PeKaWe
  • Full Members
  • 98 posts

Posted 16 November 2006 - 14:05

Hi,

ich habe folgende Problem beim Setuptest auf WIndows Vista:

Ich habe ein Basic-MSI-Setup welches eine Installscript-CA aufruft.
Diese CA funktioniert nur wenn ich das Setup mit der Option "Run as Admin" starte.

So weit so gut. Ich lösche also in der Summary das entsprechende Bit, um dem Setup zu sagen 'Hey, Du könntest auch Adminrechte brauchen'.
Auch der Weiter-Button ist über das entsprechende Attribut mit dem schönen Shiled-Icon versehen.

Sowohl ausführen des MSI als auch der Setup.exe ändern nichts am Verhalten. Es kommt nicht die Abfrage nach Adminrechten.
Das Setup läuft durch, aber die CA wird nicht ausgeführt.

Nächster Gedanke: Klar, was in der CA passiert erkennt der WI oder Vista nicht. Das die CA Adminrechte braucht wissen beide auch nicht. Also trage ich in den Registry-Table einen Key unter HKLM ein. Spätestens jetzt sollte dem WI oder Vista klar sein, dass das Setup was tun will was nur mit Adminrechten zu machen ist.

Es kommt wie befürchtet: Keine Abfrage nach Adminrechten, das Setup läuft durch bis zum schreiben des Regkeys und bringt dann eine Fehlermeldung, dass es nicht genug Rechte hat.

Wie bekomme ich das Setup dazu die Adminrechte anzufordern?
Weiß jemand eine Lösung? Bin für jede Hilfe dankbar.

Gruß,
Peter
Ciao for Now[br]PeKaWe

Cybot

Cybot
  • Full Members
  • 29 posts

Posted 18 November 2006 - 12:15

Hi!

Ich schätze du wärst mit dem Post in InstallShield InstallScript Themen besser beraten.
Hast du ALLUSER gesetzt?

Du schreibst, das entsprechende Bit ist gesetzt, soll heißen Bit 3?
Das bedeutet doch aber, das keine Elevated privileges benötigt werden, oder irre ich mich?

Edited by Cybot, 18 November 2006 - 12:33.


Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 18 November 2006 - 20:52

Es gibt zwei Falgs: eins unter Releases (für die setup.exe) und eins unter Summary Information (für die .msi Datei)

PeKaWe

PeKaWe
  • Full Members
  • 98 posts

Posted 22 November 2006 - 18:13

Hi,

sorry für meine verspätete Antwort. Auch mich hat die Grippe erwischt und ich mußte ein wenig Auszeit nehmen.

Nun zum Problem. Natürlich habe ich Bit 3 gelöscht, hatte ich das nicht auch geschrieben?

ALLUSERS ist gesetzt. Hat aber auch keinen Einfulss auf das Verhalten.

Das mit der Einstellung im Release kannte ich nicht. Habe es erfolgreich probiert, natürlichnur so lange ich über die Setup.exe starte. Damit habe ich das nächste Problem: Was wenn ein Kunde das MSI startet. Vor allem aber wenn das installierte Setup über Systemsteuerung\Software im Maintenancemode aufgerufen wird? Hier wird ja immer die MSI-Datei gestartet.

Wie könnte Macrovision das in der Setup.exe gelöst haben? Wir verwenden eine eigenen Setup.exe und würden gerne zu mindest diese Funktionalität nachbauen.

Sollte es aber nicht meines Wissens so sein, dass über das Bit 3 der Windows Installer 4.0 selbst merkt und steuert, dass das Setup Adminrechte benötigt, oder habe ich hier etwas falsch verstanden?

Spielt hier ggf. die Signierung des Setups noch mit rein?

Gruß,
Peter
Ciao for Now[br]PeKaWe

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 22 November 2006 - 19:54

Das Flag in der Summary Info wirkt auf die MSI Datei und führt dazu, dass der Elevation Dialog beim Übergang von UI zu Execute Sequenz angezeigt wird.
Das Flag in den Release-Einstellungen wirkt auf die setup.exe und führt dazu dass der Elevation Dialog sofort kommt. Dazu musst du in einer eigenen seutp.exe übrigens nichts besonderes machen (man muss nur etwas machen wenn man den Dialog an der Stelle NICHT haben will), es genügt dass sie setup.exe heisst.

Ist deine InstallScript CA als "Deferred in system context" gekennzeichnet? Nur "deferred" reicht nicht.

PeKaWe

PeKaWe
  • Full Members
  • 98 posts

Posted 23 November 2006 - 10:16

Und genau das mit dem Elevation Dialog funktioniert nicht.
Das Vorschaltprogramm heißt Setup.exe, aber der Elevation Dialog kommt nicht.
Das Bit 3 in den Summary-Informationen ist nicht gesetzt, aber auch beim Übergang in die Execute-Sequenz kommt der Elevation Dialog nicht.

Die CA ist nicht als "Deferred in system context" angelegt. Es muß ja auch möglich sein IS-Script-CAs nicht verzögert auszuführen. Es ist ja so, dass ohne wirkiche Adminrechte bei mir keine IS-Script-CA ausgeführt wird. Nicht mal zum Beispiel eine Liznezprüfung in der UI-Sequenz oder ähnliches.

Es ist ein absolut unverändertes Vista-System des letzten Betastandes.

Ich werde die Tage mal mit dem Releasestand testen und mal ein signiertes Setup testen.

Gruß,
Peter

Ciao for Now[br]PeKaWe

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 23 November 2006 - 13:01

Das ist ja wirklich seltsam. Hast du UAC vielleicht abgeschaltet?

Mit InstallScript Aktionen könnte es Probleme geben, vielleicht kannst du erst mal was unverfängliches testen, ein VBScript vielleicht, oder besser eine DLL.

PeKaWe

PeKaWe
  • Full Members
  • 98 posts

Posted 24 November 2006 - 11:55

Ich habe den Rechner nochmal neu aufgebaut.

Das Verhalten ist nun wie es soll.
Mein Problem ist immer noch, dass ich gern volle Adminrechte schon in der UI-Sequenz hätte, auch wenn ich das MSI direkt starte.

Wie kann man das realisieren?

Danke und Gruß,
Peter
Ciao for Now[br]PeKaWe

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 24 November 2006 - 12:35

Gar nicht. Das geht nur wenn du über eine setup.exe startest.

PeKaWe

PeKaWe
  • Full Members
  • 98 posts

Posted 04 December 2006 - 16:16

Genau was ich befürchtete.

Kann ich z.B. über einen RegKey Windows irgendwie beibringen bei einer Reparatur, oder beim Start über Systemsteuerung\Software meine Setup.exe zu starten anstatt des MSI?

Danke und Gruß,
Peter
Ciao for Now[br]PeKaWe

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 04 December 2006 - 22:06

Für die Systemsteuerung: ja. Du könnest das Property ARPSYSTEMCOMPONENT setzen, dann schreibt Windows Installer keinen Uninstall-Eintrag in die Registry. Den kannst du dann selbst schreiben.

Aber wenn die Reparatur automatisch aufgerufen wird o.ä, dann hast du Probleme.

Wizu brauchst du eiogentlich in der UI Sequenz Admin-Rechte? Da liegt das eigentliche Problem.

PeKaWe

PeKaWe
  • Full Members
  • 98 posts

Posted 08 December 2006 - 10:55

Bei der Reparatur könnte ich evtl. noch damit leben. Da gibt es ja dann ohnehin keine UI-Sequenz.

Die Adminrechte brauche ich weil ohne keine einzige IS-Script-CA läuft. Und IS-Script wiederrum verwende ich fast überall im Setup. Unter anderem für Lizenzauswertung etc.

Wenn ich ARPSYSTEMCOMPONENT setze, habe ich dann auch noch beide Buttons (Ändern und Reparieren) in der Systemsteuerung? Wenn ja, gilt der Uninstall-Eintrag dann auch für 'Ändern'?


Ciao for Now[br]PeKaWe

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 08 December 2006 - 17:28

QUOTE
Wenn ich ARPSYSTEMCOMPONENT setze, habe ich dann auch noch beide Buttons (Ändern und Reparieren) in der Systemsteuerung? Wenn ja, gilt der Uninstall-Eintrag dann auch für 'Ändern'?

Nein, du bekommst, wie bei nicht-MSi Setups, einen kombinierten "Ändern/Entfernen" Button.

PeKaWe

PeKaWe
  • Full Members
  • 98 posts

Posted 11 December 2006 - 11:30

Hi,

das Problem, dass die IS-Script CAs nicht aufgerufen wurden ist nun von Macrovision gelöst worden.
Dem entsprechend sollte es, so lange ich nicht unanständiger weise versuche in der UI-Sequenz das Zielsystem zu verändern, keine Probleme mehr geben.

Danke und Gruß,
Peter
Ciao for Now[br]PeKaWe

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 12 December 2006 - 10:59

QUOTE (PeKaWe @ 2006-12-11 12:30)
das Problem, dass die IS-Script CAs nicht aufgerufen wurden ist nun von Macrovision gelöst worden.

Nicht aufegrufen wurden, oder Admin-Rechte erforderten? Wie wurde das Problem gelöst (Hotfix?)

PeKaWe

PeKaWe
  • Full Members
  • 98 posts

Posted 11 May 2007 - 12:21

Ups,

sorry. Hatte nicht mitbekommen, das noch wer geantwortet hatte.

IS hatte das fix ins SP mit aufgenommen, so dass es sich verbreitet haben sollte, weshalb ich hier nichts näheres gepostet habe.

Wer nochmal nachlesen möchte:
http://support.insta...ticleid=Q112500
bzw.: SupportIncident: SIOA-000069762

Gruß,
Peter
Ciao for Now[br]PeKaWe