1 2 Previous Next 29 Replies Latest reply on Oct 21, 2011 3:37 AM by ChristophSteckelberg

    Autoinstaller Fenster

    nvandre Apprentice
      Hallo,
      wie kann man eigentlich erreichen das der Autoinstaller aufgeht sobald ein Projekt installiert wird, sodaß der User sieht das etwas installiert wird.
      Gibt es da ne Möglichkeit?
        • 1. Re: Autoinstaller Fenster
          AlexanderDechent Apprentice
          Hi nvandre,

          du kannst in der Konfiguration unter AutoInstall-Einstellungen die Eigenschaft "Statusfenster bei Autoinstall anzeigen" auf Ja setzen (Expertenmodus). Das ist eigentlich auch der Default, wurde also vermutlich mal abgestellt.

          Grüße,
          Alex
          • 2. Re: Autoinstaller Fenster
            nvandre Apprentice
            Danke für die Info
            • 3. Re: Autoinstaller Fenster
              nvandre Apprentice
              Dann zeigt es mir das Fenster aber nur an, wenn mit niinst32.exe /ai der Autoinstaller am PC von Hand gestartet wird. Gibt es keine Möglichkeit dem User das Fenster anzuzeigen, wenn Projekte vom Server verteilt werden?
              • 4. Re: Autoinstaller Fenster
                Frank.Scholer Master
                Was meinst du mit

                Gibt es keine Möglichkeit dem User das Fenster anzuzeigen, wenn Projekte vom Server verteilt werden?


                Meinst du den Service-Installer? Wenn ja, dann lautet die Antwort "nein, das kannst du nicht anzeigen, weil der Service-Installer gar kein Statusfenster hat"

                Grüße Frank
                • 5. Re: Autoinstaller Fenster
                  NicoS1 Master
                  Hallo Andre,

                  die Informationsfreudigkeit des Installers, war seit der v6.0 ein Thema bei uns, und unseren Kunden. Es hat sich bis zur v7 schon verbessert, aber gerade was den Serviceinstaller an geht gibt es hier, soweit ich weiß recht wenig Fortschritte.

                  Wir haben damals auch viel hin und her überlegt, wie wir es machen, dass der User über Installationen informiert wird. Der Grundstein des Ganzen war im Endeffekt auf den Serviceinstaller komplett zu verzichten, was sich in der v6.2 stark etabliert hatte, als ein Bug auftrag, dass Paket ständig installiert und wieder deinstalliert worden sind. Bei uns und den meisten unserer Kunden ist die Methode (für Clients!) kein Problem, und hat für uns keine Nachteile. Für Server hingegen, nutzen wir weiterhin den Serviceinstaller.

                  Was das Problem an der Sache (in meinen Augen) ist, dass der Serviceinstaller auch läuft, während ein User angemeldet ist. Man kann zwar über die Ausführungseigenschaften das ganze etwas einschränken:

                  Nur wenn Benutzer angemeldet ist = Paket wird nur vom Autoinstaller ausgeführt.
                  Nur wenn kein Benutzer angemeldet ist = Paket wird nur vom Serviceinstaller ausgeführt (und wenn kein User angemeldet)
                  Egal ob... = Wird von beiden Installern ausgeführt.

                  ... aber ich finde, man hätte das ganze schon etwas besser "designen" können... sinnvoller fände ich, dass im abgemeldeten Zustand der Serviceinstaller loslegen kann, aber im angemeldeten Zustand nur der AutoInstaller.

                  Theoretisch, lässt sich das aber einfach über ein paar Zeilen im Paket bewerkstelligen. Ich hab das vor einiger Zeit mal im Kopf zusammengeschustert, aber bisher noch nicht praktisch getestet. Ich schreibs mal nieder, hoffe man kann meine Gedanken nachvollziehen.

                  Erstmal müssen wir rausfinden, ob wir als Service, oder als Autoinstaller laufen, das kannst du mit einer if Abfrage machen. Dazu fragst du %_PARAMS% (DSM Interne Variable)  ab, ob es entweder "/SERVICE" oder "/SERVICE /Login" entspricht. Es gibt auch eine IF Abfrage nach dem InstallMode, aber ich erinnere mich, dass dies ein er v6 bei einem gewissen Patchstand mal nicht sauber funktioniert hatte. In der v7 hab ichs noch nicht getestet.

                  Falls ja, prüft man als nächstes via WMI Query ab, ob der Prozess "niagnt32.exe" läuft. Der ist ja für den Start des Autoinstallers zuständig.

                  Hier eine Anmerkung: Korrekterweise müsste man die explorer.exe abprüfen, um rauszufinden ob ein User eingeloggt ist oder oder nicht. Aber, da es meiner Erfahrung nach dazu kommen kann, dass die niagnt32.exe unter auch durchaus mal nicht gestartet sein könnte (Problem mit Loginscript o.Ä.), ist es mir lieber, dass anstatt dem Autoinstaller, dann der Serviceinstaller läuft, bevor gar kein Installer laufen würde. Aber das bleibt jedem selbst überlassen, welche Strategie er fährt. Auf jeden Fall wird die niagnt32.exe auch nur gestartet, wenn ein User angemeldet ist.

                  Also... wenn wir im Serviceinstaller Modus sind, und die niagnt32.exe laufen sollte, dann wird das Paket mit "exitproc(undone)" abgebrochen.

                  Das hat dann den Effekt, dass ein Paket nur vom Serviceinstaller installiert wird, wenn kein User angemeldet ist, oder der Autoinstaller aufgrund fehlendem niagnt32.exe nicht laufen könnte. Und wenn ein Paket mit dem Autoinstaller läuft, kann man den User schön informieren, was gerade auf seinem PC passiert.

                  ------------

                  Und im übrigen: Meiner Erfahrung nach ist es leider nicht so gut, wenn man in der Infrastructure das Autoinstaller Fenster so einstellt, dass es immer angezeigt wird, da es bei jedem Intervall hochkommt, egal ob etwas installiert wird, oder nicht. Zumindest bei uns stößt das manchen Usern unangenehm auf. Zwar stellt man nach der aktuellen best practice den AI Intervall recht hoch ein (> 8 Stunden), aber gerade bei den Notebook Usern, die gerne mit Standby oder Ruhezustand arbeiten, kann es irgendwann dazu kommen, dass während einer Präsentation oder so das AI Fenster aufgeht. Ok, in der v7 ist es zugegebenermaßen sehr schnell wieder weg, aber manche User reagieren irgendwie allergisch auf sowas

                  Aber, um auch die höchstmöglichste Akzeptanz zu erreichen, kann man auch mit den Befehlen "ShowUI" und "HideUI" arbeiten. Grundsätzlich lässt du das AI Fenster über die Infrastruktur Konfig versteckt, und bei Paketen, wo du möchtest, dass der User informiert wird, dass etwas installiert wird, baust du einfach den ShowUI Befehl ein. Dann kommt der Autoinstaller hoch, sobald das Paket ausgeführt wird. Das verringert auch die möglicherweise störende Anzeigedauer, da es wirklich erst angezeigt wird, wenn das Paket ausgeführt wird, und er bei dem Scriptbefehl ankommt. Alles was davor geschieht (Paketdownload, Suche nach Paketen zum Installieren) geschieht im Hintergrund.

                  Sorry für den vielen Text. Manch einer mag meine "Bastellösungen" leider nicht so... aber ich hoffe die Informationen helfen dir in irgend einer weise, oder jemand anderem der an ähnlichen Problemen hängt oder geben den Entwicklern ein paar kleine Ideen für künftige Features

                  Gruß
                  • 6. Re: Autoinstaller Fenster
                    nvandre Apprentice
                    Hallo,

                    Problem ist das diese WMI Abfrage unter Windows 7 nicht mehr funktioniert :

                    http:/
                    wc-services.de/de/service/blog/viewtag/70
                    • 7. Re: Autoinstaller Fenster
                      Frank.Scholer Master
                      Hallo nvandre,

                      ich denke, das hast du was falsch verstanden.

                      Also die WMI-Abfragen funktionieren auch unter Windows 7 (hab's gerade nochmal ausprobiert).

                      Die Session-0-Isolation sorgt nur dafür, dass unter Vista und höher, Dienste keine (beliebigen) Fenster mehr auf dem User-Desktop anzeigen können (von der Möglichkeit von einfachen Messagebox-Fenstern über die auch von unserem Tool genutzte API mal abgesehen)...

                      Aber du kannst definitiv in deinem Script per WMI prüfen, ob z.B. eine Instanz von Explorer.exe läuft, um zu entscheiden, ob gerade ein User angemeldet ist oder nicht.

                      HTH, Gruß Frank
                      • 8. Re: Autoinstaller Fenster
                        nvandre Apprentice
                        hallo,
                        über das Msgbox Toll habe ich nun eine Fensterabfrage, wie kann ich im weiteren Verlauf des Scripts diese beiden Werte abfragen. Z.B.:
                        Soll mit der Installation begonnen werden? Ja / Nein
                        • 9. Re: Autoinstaller Fenster
                          Frank.Scholer Master
                          Einfach per "ExecuteEx" ausführen. Je nachdem welcher Button gedrückt wurde, landet folgender Wert in der Returncode-Variablen:

                              0 - der Timeout ist eingetreten, das heißt, es wurde keine Taste gedrückt
                              1 - der "OK"-Button wurde gedrückt
                              2 - der "Abbrechen"-Button wurde gedrückt
                              3 - der "Abbrechen"-Button (Abort) wurde gedrückt
                              4 - der "Wiederholen"-Button wurde gedrückt
                              5 - der "Ignorieren"-Button wurde gedrückt
                              6 - der "Ja"-Button wurde gedrückt
                              7 - der "Nein"-Button wurde gedrückt

                          HTH, Gruß Frank
                          • 10. Re: Autoinstaller Fenster
                            nvandre Apprentice
                            Was mir nicht so richtig einleuchten will: der unterschied zwischen dem serviceinstaller und dem autoinstaller. welche verzögerungs-intervalle für den start wären da den am sinnvollsten?
                            • 11. Re: Autoinstaller Fenster
                              CalumField1 Expert
                              Serviceinstaller kann nur Machineparts installieren. Wird gestartet beim PC Hochfahren.

                              Autoinstaller kann Machine und User Parts installieren, wird gestartet durch Registry Einträge oder Logonscript.


                              Wie oft soll gepollt werden ? Die meste Firmen benötigen kein höhes Polling Interval und kann hoch gestellt werden (>10Std).

                              Wenn man software installieren will, kann man sich immer ab und wieder anmelden und den AI starten.
                              • 12. Re: Autoinstaller Fenster
                                NicoS1 Master
                                Hallo Andre,

                                was die Verzögerung beim Starten angeht, musst du dir überlegen, was bei EUCH sinnvoll wäre.

                                Da wo wir den Serviceinstaller einsetzen, haben wir die Verzögerung irgendwo bei 15-30 Sekunden glaube ich.

                                Der Autoinstaller hingegen, da bedeutet die Startverzögerung: Zeit in Sekunden, nach dem Start des niagent32.exe (bin ich der Meinung zumindest, hoffe ich erzähl da gerade keinen Mist).

                                Dort nutzen wir als Startverzögerung meistens:
                                - Für Büro-Sites = 180 - 300 Sekunden (hat sich bei uns gut bewährt, vor allem aufgrund von WLAN Nutzern, wo der Verbindungsaufbau u.U. etwas länger dauern kann)
                                - Für Sites die nur für Installationen genutzt werden = 0 Sekunden
                                - Für Offline / Remote Sites = 10 Minuten
                                (Mit dem Hintergrund, dass Homeoffice / Remote User, ja erstmal den Rechner hochfahren, sich anmelden, ggf. UMTS Verbindung aufbauen, dann noch hinterher erstmal den VPN Client starten, und sich da erstmal authentifizieren... da gehen schon mal ein paar Minuten ins Land, und es sollte ja eine Netzwerkverbindung da sein, wenn der AI startet )
                                • 13. Re: Autoinstaller Fenster
                                  NVUser Specialist
                                  ^^ ... und bei uns ist es eben eher umgekehrt... , wie NicoS es schon erwähnte, mußt Du Dich nach Euren Bedürfnissen richten.

                                  Bei uns startet der AI mit ca. 30 Sekunden Verzögerung und der ServiceInstaller nach, glaube ich, 5 Minuten. Das hat (für uns) den Vorteil, daß wir "meistens" mit dem AI installieren, um eben ggf. MsgBoxen aktivieren zu können, wovon wir allerdings mittlerweile weg kommen... Und wenn sich eben kein User angemeldet hat, und man dann nicht ewig warten muß, bis was installiert wird, zieht dann nach 5 Minuten der Service seine Kreise und installiert z.B. große Pakete (wie Office oder SAPGUI)...
                                  • 14. Re: Autoinstaller Fenster
                                    NicoS1 Master
                                    Stimmt, kleine Korrektur. So in der Art, wie bei NVUser haben wir es auch bei uns.

                                    Der Serviceinstaller ist bei uns nicht abgeschalten, auch wenn das im einen oder anderen Post so rüber kommt bei mir wir haben bei einigen Paketen abgeschalten, dass die mit dem Serviceinstaller installiert werden können.

                                    Auf der Client Seite haben wir den Serviceinstaller von der Startverzögerung sehr hoch gedreht (ich glaub um die 20 Minuten), und den AutoInstaller vor den Serviceinstaller gesetzt.

                                    Bei der Rechnung muß man nur aufpassen:

                                    Rechner fährt hoch => Enteo Services Starten => Countdown für Service Installer beginnt => User meldet sich an => niagnt32.exe wird gestartet => Jetzt erst beginnt der Countdown für Autoinstaller.

                                    Wenn man z.B. den Serviceinstaller mit 6 Minuten verzögert, und den Autoinstaller mit 5 Minuten, kann es durchaus öfters vorkommen, dass der Service for dem AI startet, da zwischen Dienst Start und niagnt32.exe start doch schon mal mehr als eine Minuten vergehen kann ;-)
                                    1 2 Previous Next