Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Abbruch nach Installation von WinFuture Pack
2007-10-14, 10:55 AM,
#21
RE: Abbruch nach Installation von WinFuture Pack
Erste Frage, hast du dieses Bild ( bei erstem reboot eventuell mit anderem Text) gesehen? Hast du dann OK oder CANCEL gedrückt oder timer ablaufen lassen?


Attached Files Thumbnail(s)
   
Vitali

[Image: wucdcreator.png]
[Image: winfuture.png]
[Image: mysoft.gif]
Reply
2007-10-14, 08:18 PM, (This post was last modified: 2007-10-14, 08:25 PM by BinCZ.)
#22
RE: Abbruch nach Installation von WinFuture Pack
Vitali Wrote:Erste Frage, hast du dieses Bild ( bei erstem reboot eventuell mit anderem Text) gesehen? Hast du dann OK oder CANCEL gedrückt oder timer ablaufen lassen?



Hallo Vitali,


nach der Installation des ersten Teils des Update-Packs erschien wie gewohnt das von Dir gezeigte AutoIt-Reboot-Script, nur eben mit deutschem Text.

Das hab' ich alles sich selbst überlassen, und nach Ablauf der Zeit hat der Rechner neu gebootet.

Anschließend wurde nicht erst mein zweiter Teil des Update-Packs gestartet, sondern gleich wieder Dein danach nochmal unter Software eingetragener AutoIt-Rebooter.


Irgendwas läuft da verkehrt; ich weiß nur nicht was. Fällt Dir dazu vielleicht 'was ein?


Mit freundlichen Grüßen

                                 BinCZ
Reply
2007-10-16, 09:23 AM,
#23
RE: Abbruch nach Installation von WinFuture Pack
Also... Der Installationprozess von WUCD-Creator ist etwas kompliziert! Ich vermute, dass der winfuture-setup in den Bereich "Runonce" bzw. "RunOneEx" eingreft, und damit den unsere runonceex.js stört.. Heute Abend versuche ich komplette Ablauf hier darzustellen. Mal gucken wo der Winfuture-Setup alles durcheinander bringt.
Vitali

[Image: wucdcreator.png]
[Image: winfuture.png]
[Image: mysoft.gif]
Reply
2007-10-18, 06:43 PM,
#24
RE: Abbruch nach Installation von WinFuture Pack
Hat sich leider etwas verzögert..

Also, damit wir nach Windows-Installation noch ein paar andere Programme installiert bekommen muss folgendes in winnt.sif eingetragen werden:
Code:
[GuiRunOnce]
wucdcreator="wscript.exe %systemroot%\RunOnceEx.js"
Das ist eine Anweisung an Windows ein Schlüssel HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce\wucdcreator mit dem Wert wscript.exe %systemroot%\RunOnceEx.js in Windows-Registry zu erstellen.

Dieser RunOnce Schlüssel wird ein einzige mal ausgeführt, nämlich bei nächstem anmelden eines x-belibigen Users nach neustart des Rechners.
In unserem Fall wird Befehl wscript.exe %systemroot%\RunOnceEx.js ausgeführt. RunOnceEx.js beinhaltet die Befehle, die wir bei Integration von Software im unterem Fenster im Creator eintragen haben. RunOnceEx.js führt diese Befehle aber aber nicht aus! Alle Befehle werden wieder in Registry geschrieben dieses mal aber in HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx\*. Diese RunOnceEx ist ip Prinzip das selbe wie RunOnce, sieht nur besser aus Wink Die RunOnceEx-Befehle werden normalerweise nach neustart ausgeführt, lässen sich aber mit einem Befehl rundll32.exe iernonce.dll,RunOnceExProcess sofort starten, was von RunOnceEx.js auch gemacht wird.

So sieht der normale Installation-Prozess bei WUCD-Creator aus. Und jetzt in der Liste zuinstallierenden Programmen taucht -= REBOOT =- auf, was nun?

RunOnceEx.js schreibt wie gewöhnt RunOnceEx-Befehle ins Regystry, dieses mal aber nicht alle, sonder nur die Befehle die vor -= REBOOT =- ausgeführt werden sollen plus der Reboot-Befehl selbst. Der sieht so aus reboot.exe /t 60 /m \"{message}\" /r {runat}. Dabei wird {message} durch "PC aufräumen und neustarten" ersetzt und {runat} durch eine Zahl, z.B. 3. Die reboot.exe ist ein AutoIt-Scrip. Was macht er? Zuerst startet er ein Countdown mit 60 Sec und schreibt den Text "PC aufräumen und neustarten" im Fenster. Nach Ablauf des Countdown werden wieder ein Paar Registry-Schlüssel geschrieben. Erste ist HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce\guirunonce0 mit dem Wert wscript.exe %systemroot%\runonceex.js. Somit nach neustart wirt RunonceEx.js wieder gestartet. Der andere Schlüssel ist HKLM\SOFTWARE\RunOnceEx.js\runat mit Wert 3. Das ist Anweisung an RunOnceEx.js nicht wieder mit erstem Programm anzufangen, sondern glich mit der dritten!!

Das war alles. Das Problem mit Winfuture-Updatepack, dass er auch nach neustart des Rechners weiter Updates installieren will. Und es gibt nur zwei Wege es zu machen RunOnce oder RunOnceEx...

Ich würde gern wissen welche Schlüssel Winfuture-Updatepack eigentlich schreibt!

Kannst du folgendes tun?
Zuerst die erste teil des Packs installieren lassen, danach die Reboot.exe abbrechen, und anschliessend mit regedit.exe Schlüssel HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce und HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx exportieren und hier posten.

Danach können wir weiter denken was wir dagegen tun wollen.
Vitali

[Image: wucdcreator.png]
[Image: winfuture.png]
[Image: mysoft.gif]
Reply
2007-10-19, 04:33 PM, (This post was last modified: 2007-10-19, 05:48 PM by BinCZ.)
#25
RE: Abbruch nach Installation von WinFuture Pack
Vitali Wrote:Hat sich leider etwas verzögert..

Also, damit wir nach Windows-Installation noch ein paar andere Programme installiert bekommen muss folgendes in winnt.sif eingetragen werden:
Code:
[GuiRunOnce]
wucdcreator="wscript.exe %systemroot%\RunOnceEx.js"
Das ist eine Anweisung an Windows ein Schlüssel HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce\wucdcreator mit dem Wert wscript.exe %systemroot%\RunOnceEx.js in Windows-Registry zu erstellen.

Dieser RunOnce Schlüssel wird ein einzige mal ausgeführt, nämlich bei nächstem anmelden eines x-belibigen Users nach neustart des Rechners.
In unserem Fall wird Befehl wscript.exe %systemroot%\RunOnceEx.js ausgeführt. RunOnceEx.js beinhaltet die Befehle, die wir bei Integration von Software im unterem Fenster im Creator eintragen haben. RunOnceEx.js führt diese Befehle aber aber nicht aus! Alle Befehle werden wieder in Registry geschrieben dieses mal aber in HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx\*. Diese RunOnceEx ist ip Prinzip das selbe wie RunOnce, sieht nur besser aus Wink Die RunOnceEx-Befehle werden normalerweise nach neustart ausgeführt, lässen sich aber mit einem Befehl rundll32.exe iernonce.dll,RunOnceExProcess sofort starten, was von RunOnceEx.js auch gemacht wird.

So sieht der normale Installation-Prozess bei WUCD-Creator aus. Und jetzt in der Liste zuinstallierenden Programmen taucht -= REBOOT =- auf, was nun?

RunOnceEx.js schreibt wie gewöhnt RunOnceEx-Befehle ins Regystry, dieses mal aber nicht alle, sonder nur die Befehle die vor -= REBOOT =- ausgeführt werden sollen plus der Reboot-Befehl selbst. Der sieht so aus reboot.exe /t 60 /m \"{message}\" /r {runat}. Dabei wird {message} durch "PC aufräumen und neustarten" ersetzt und {runat} durch eine Zahl, z.B. 3. Die reboot.exe ist ein AutoIt-Scrip. Was macht er? Zuerst startet er ein Countdown mit 60 Sec und schreibt den Text "PC aufräumen und neustarten" im Fenster. Nach Ablauf des Countdown werden wieder ein Paar Registry-Schlüssel geschrieben. Erste ist HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce\guirunonce0 mit dem Wert wscript.exe %systemroot%\runonceex.js. Somit nach neustart wirt RunonceEx.js wieder gestartet. Der andere Schlüssel ist HKLM\SOFTWARE\RunOnceEx.js\runat mit Wert 3. Das ist Anweisung an RunOnceEx.js nicht wieder mit erstem Programm anzufangen, sondern glich mit der dritten!!

Das war alles. Das Problem mit Winfuture-Updatepack, dass er auch nach neustart des Rechners weiter Updates installieren will. Und es gibt nur zwei Wege es zu machen RunOnce oder RunOnceEx...

Ich würde gern wissen welche Schlüssel Winfuture-Updatepack eigentlich schreibt!

Kannst du folgendes tun?
Zuerst die erste teil des Packs installieren lassen, danach die Reboot.exe abbrechen, und anschliessend mit regedit.exe Schlüssel HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce und HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx exportieren und hier posten.

Danach können wir weiter denken was wir dagegen tun wollen.



Hallo Vitali,



vielen Dank für Deine Ausführungen.

Was es mit den 'RunOnce[Ex]'-Einträgen in der Registry auf sich hat, ist mir allerdings schon bekannt.


Ich hab' bei diesen Einträgen schon früher mal nachgeschaut, nämlich bei der Ermittlung, ob der Reboot nach der IE7-Installation wirklich notwendig ist.

Seinerzeit war mir nur aufgefallen, daß der IE7-Installer darüber nach dem Reboot noch 'mal gestartet wird.

Sobald ich dazu komme, werde ich mir die 'RunOnce[Ex]'-Einträge noch 'mal näher ansehen.


Es läuft nämlich absolut nichts mehr im Anschluß an den -=REBOOT=- nach der Installation des ersten Teils des Update-Packs. Auch nicht mein Protokoll-Script, das ich geschrieben habe, um dahinterzukommen, was da wirklich abläuft. Auch in diesem Fall wird der anstehende Software-Installations-Punkt übersprungen und sofort der nächste eingetragene -=REBOOT=- ausgeführt.


D. h., ich werde mir die RunOnceEx.js und die settings.txt auch noch 'mal genauer ansehen.

Dazu brauche ich aber noch folgende wichtige Information:

Legst Du die 'runat'-Parameter beim Speichern des Projektes bereits fest und hinterlegst sie irgendwo, z. B. in der settings.txt, oder ermittelst Du sie dynamisch vor dem jeweils nächsten
-=REBOOT=- während der laufenden Installation?


Und dann bräuchte ich noch einen Tipp: Laut Beschreibung sollen Daten zwischen einer VM und dem Host per Drag and Drop austauschbar sein. Aber irgendwie krieg' ich das nich' hin.

Bei meiner Installations-Test-VM handelt es sich um eine BareMetal-VM mit einer non-persistant HDD. Die Tools werden nicht installiert, obwohl ich der VM gesagt habe, sie soll sie automatisch installieren.

Hast Du vielleicht einen Tipp auf Lager, wie ich die Registry-Exporte auf den Host 'rüberbekomme, ohne der VM den Zugriff auf mein Host-D: Laufwerk zu erlauben?



Gruß

        BinCZ
Reply
2007-10-20, 10:02 AM,
#26
RE: Abbruch nach Installation von WinFuture Pack
BinCZ Wrote:Dazu brauche ich aber noch folgende wichtige Information:

Legst Du die 'runat'-Parameter beim Speichern des Projektes bereits fest und hinterlegst sie irgendwo, z. B. in der settings.txt, oder ermittelst Du sie dynamisch vor dem jeweils nächsten
-=REBOOT=- während der laufenden Installation?
Es wird dynamisch ermittelt..

BinCZ Wrote:Und dann bräuchte ich noch einen Tipp: Laut Beschreibung sollen Daten zwischen einer VM und dem Host per Drag and Drop austauschbar sein. Aber irgendwie krieg' ich das nich' hin.

Bei meiner Installations-Test-VM handelt es sich um eine BareMetal-VM mit einer non-persistant HDD. Die Tools werden nicht installiert, obwohl ich der VM gesagt habe, sie soll sie automatisch installieren.

Hast Du vielleicht einen Tipp auf Lager, wie ich die Registry-Exporte auf den Host 'rüberbekomme, ohne der VM den Zugriff auf mein Host-D: Laufwerk zu erlauben?
Ich verwende VirtualBox. Wenn auf Gastsystem Gasterweiterung installiert ist funktionier sogar gemeinsame Zwischenablage !! Sonst gibst sogenannte Gemeinsame Ordner der auf Gastsystem als eine Netzwerk-Freigabe zugreifbar, sogar ohne einer Netzwerkkarte im Gastsystem!!! Also sehr empfehlenswert.
Vitali

[Image: wucdcreator.png]
[Image: winfuture.png]
[Image: mysoft.gif]
Reply
2007-10-26, 03:51 PM,
#27
RE: Abbruch nach Installation von WinFuture Pack
Hallo Vitali,



Arrow das wird mir alles viel zu kompliziert!


Question Außerdem hat der IE7 das Problem, daß auch nach Schließen immer noch sein Prozess im Taskmanager angezeigt wird, und das genauso oft, wie ich ihn geöffnet, bzw. geschlossen habe.

Das habe ich immer beim Neustarten gemerkt; es kam immer die Meldung "iexplore kann nicht beendet werden" mit der Option "Sofort abbrechen".

Ich vermute mal, da ist durch den Abbruch des WF Update-Packs und Ersetzen seines eigenen Reboots durch unseren Reboot irgendetwas nicht richtig initialisiert worden.


Idea Ich werde jetzt also die "Macken" des SPBuilder Installer von WF für meine Zwecke nutzen:

Die XBlöd-Updates werden das letzte sein, was ich mit WUCD installiere, weitere Software werde ich dann über den WF-Installer selbst installieren.

Das bietet zudem den Vorteil, die zu installierenden Software-Pakete individuell über das Menü des WF-Installers auswählen zu können.


Sad Es tut mir leid, daß ich da nicht schon viel früher drauf gekommen bin und Dich erst mal um Unterstützung für die weitere Installation mit WUCD gebeten habe.

Exclamation Ich möchte mich an dieser Stelle ausdücklich für Deine diesbezüglichen bisherigen Bemühungen bei Dir bedanken.



Wink Mit freundlichen Grüßen

                                 BinCZ
Reply
2007-10-26, 10:39 PM, (This post was last modified: 2007-10-26, 10:45 PM by BinCZ.)
#28
RE: Abbruch nach Installation von WinFuture Pack
Hallo Vitali,



ich hab' mich bei der Verfolgung des oben erwähnten neuen Ziels gefragt, wie der WF-Installer seine Installation nach dem Reboot wohl folgerichtig fortsetzt.

Dazu habe ich ihn inmitten von hundert gefakten Testfiles (die machen gar nichts) seinen automatischen Restart ausführen lassen. Dann habe ich den Boot im abgesicherten Modus gestartet und mal genauer geguckt.


In RunOnce startet er nur sich selbst wieder, ohne Parameter. In RunOnceEx steht nix. Wo also nimmt er seine Startinformation her, die ihn zudem noch unattended neustarten lässt? Das muß doch auch beim ersten Start möglich sein!

Ganz einfach: Er legt dazu in seinem Startverzeichnis eine versteckte Datei namens "wfupack" an, die er nach dem Reboot ausliest und anschließend sofort löscht. In dieser "wfupack" stehen zeilenweise ein paar Zahlen, die einfach zu entschlüsseln sind:


Zeile 1: Gesamtanzahl Files
Zeile 2: [0/1] Automatisch neu starten
Zeile 3: [0/1] Während der Installation minimieren
Zeile 4: [0/1] Anfallende Log-Dateien löschen
Zeile 5: [0/1] Niedrige Prozesspriorität
Zeile 6: Nummer des Startfiles -1
    |
Zeile n: Nummer des letzten Files -1

Die Zeilen 2-5 sind in exakt der selben Reihenfolge angeordnet, wie sie unter "Optionen" bei benutzerdefinierter Installation vorzufinden sind. Bei der File-Nummerierung ist darauf zu achten, daß hier von Null und nicht von Eins an gezählt wird. Diese Nummerierung muß analog zur Auswahl bei der benutzerdefinierten Installation nicht zwingend durchgängig fortlaufend sein.


Mit diesen Informationen läßt sich ohne AutoIt-Script alle weitere Software auswählbar über den SPBuilder Installer unattended installieren. Dabei hab' ich mir solche Mühe gegeben, ein für diese Zwecke universelles .au3-Script zu schreiben. Hat ja auch wunnebar geklappt, is' jetz' aber überflüssig.

Na ja, bleibt ja immer noch das Scripten für die einzelnen Software-Packs.


Vielleicht kann Du oder der ein oder andere ja mit diesen Informationen etwas anfangen.



Mit freundlichen Grüßen

                                 BinCZ
Reply
2007-10-29, 02:15 AM, (This post was last modified: 2007-10-29, 02:49 AM by BinCZ.)
#29
RE: Abbruch nach Installation von WinFuture Pack
Hallo Vitali,



ich bin's schon wieder.


Das ist alles nicht das Gelbe vom Ei.

Es ist einfach sinnvoller, den Hauptprozess doch über WUCD ablaufen zu lassen und den WinFuture Installer lediglich die "Sklavenarbeit" erledigen zu lassen.

Dazu muß ich latürnich im WF-Installer als letztes Paket eine Mimik integrieren, die die entsprechenden Registryschlüssel schreibt, um die RunOnceEx.js wieder zu starten.


Das müsste dann genauso aussehen, wie Du es beschrieben hast:

Erst einmal müsste

"HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce\guirunonce0"

mit dem Wert

"wscript.exe %systemroot%\runonceex.js"

geschrieben werden, um nach Neustart "RunonceEx.js" wieder zu starten.

Zum zweiten müsste noch

"HKLM\SOFTWARE\RunOnceEx.js\runat"

mit dem Wert des Punktes, an dem er die Installation weiterführen soll, geschrieben werden.


Ich wäre Dir sehr dankbar, gäbest Du mir dazu noch einige Zusatzinformationen:

Sind ...\guirunonce0 und ...\runat eigenständige Schlüssel, die über die Zeichenfolge "Standard" definiert werden, oder sind sie Werte in ...\RunOnce, bzw. ...\RunOnceEx.js. Wenn letzteres der Fall sein sollte, ist dann ...\runat ein REG_SZ oder ein anderer Wert?


Kann das funktionieren, oder existiert die RunOnceEx.js zu diesem Zeitpunkt schon gar nicht mehr in %SYSTEMROOT% oder hat vielleicht schon ihre %CDROM%-Information verloren?



Ich war ja in der Zwischenzeit auch nicht untätig:

Daher verfüge ich mittlerweilen über eine vollkommen "entWinFuturerisierte" Version des SPBuilder Installers, der ja über die schon beschriebene Methode mit der Initialisierungsdatei unattended laufen kann. Diese Version ist bei automatischen Reboots und ohne benutzerdefinierten Modus (Softwareauswahl) vorzuziehen.

Ein .au3-Script zum wahlweisen Start im benutzerdefinierten Modus (Softwareauswahl) oder direkt im Komplett-Installationsmodus mit Verhinderung des Reboots am Ende ist zusätzlich vorhanden. Werden hier jedoch automatische Reboots integriert, muß der aus der .au3.exe entpackte Installer anschließend manuell gelöscht werden. Da aber am Ende der kompletten Installation sowieso Schrott weggeräumt werden muß, dürfte das das kleinste Problem darstellen.


Solltest Du Verwendung dafür haben, schicke ich Dir die Sachen gerne zu.



Mit freundlichen Grüßen

                                 BinCZ
Reply
2007-10-29, 08:07 PM,
#30
RE: Abbruch nach Installation von WinFuture Pack
BinCZ Wrote:Das müsste dann genauso aussehen, wie Du es beschrieben hast:

Erst einmal müsste

"HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce\guirunonce0"

mit dem Wert

"wscript.exe %systemroot%\runonceex.js"

geschrieben werden, um nach Neustart "RunonceEx.js" wieder zu starten.

Zum zweiten müsste noch

"HKLM\SOFTWARE\RunOnceEx.js\runat"

mit dem Wert des Punktes, an dem er die Installation weiterführen soll, geschrieben werden.


Ich wäre Dir sehr dankbar, gäbest Du mir dazu noch einige Zusatzinformationen:

Sind ...\guirunonce0 und ...\runat eigenständige Schlüssel, die über die Zeichenfolge "Standard" definiert werden, oder sind sie Werte in ...\RunOnce, bzw. ...\RunOnceEx.js. Wenn letzteres der Fall sein sollte, ist dann ...\runat ein REG_SZ oder ein anderer Wert?
guirunonce0 ist REG_EXPAND_SZ, auf deutsch Wert der erweiterberen Zeichenfolge
HKLM\SOFTWARE\RunOnceEx.js\runat ist ein DWORD (Ganzzahl)

BinCZ Wrote:Kann das funktionieren, oder existiert die RunOnceEx.js zu diesem Zeitpunkt schon gar nicht mehr in %SYSTEMROOT% oder hat vielleicht schon ihre %CDROM%-Information verloren?
RunOnceEx.js befindet sich immer in C:\Windows und wird auch nie gelöscht. Die %CDROM% wird bei jedem Start von RunOnceEX.js auf neu ermittelt.
Vitali

[Image: wucdcreator.png]
[Image: winfuture.png]
[Image: mysoft.gif]
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)