1 2 Previous Next 18 Replies Latest reply on May 29, 2013 6:06 AM by _Mel_

    Installation .Net 3.5 unter Windows 8

    Polymer Apprentice
      Hallo zusammen,

      wir haben seit letzter Woche DSM 7.2 im Einsatz und ich bin daran Win8 und die dazugehörigen Programme zu paketieren.
      Nun möchte ich .Net 3.5 installieren bzw. aktivieren.

      Ich führe ein Execute 'dism.exe /online /enable-feature /featurename:NetFX3 /Source:.\extern$\sxs /LimitAccess' aus. Im extern$ habe ich die benötigten Dateien von der Windows DVD.
      Wenn ich das Script auf dem Client ausführe, dann steht im Log:

      16:31:33.124 2        ---->Starting installation of "DotNet Framework 3.5"

      16:31:33.124 2        -> Execute('dism.exe /online /enable-feature /featurename:NetFX3 /Source:C:\Program Files (x86)\Common Files\enteo\RepositoryCache\1421\rev\1\extern$\sxs /LimitAccess')/?/TL
      16:31:33.124 1         Skipping user-cmd.
      16:31:33.124 2        xniFPS: '{DB4C73B3-4EF2-4C5F-9B1D-F78205F05582}' is installed

      16:31:33.124 2        ---->Installation of DotNet Framework 3.5 complete.

      Leider ist dann kein .Net aktiviert.
      Wenn ich mir den Execute Befehl aus dem Log in die Kommandozeile (als Admin) kopiere und ausführe, dann funktioniert es.....

      Ich werde noch verrückt, wo ist mein (Anfänger-)Fehler?


      Schönen Gruß
      Matthias
        • 1. Re: Installation .Net 3.5 unter Windows 8
          Klaus Salger Expert
          Hallo Matthias,

          der Execute-Befehl ist benutzerbezogen geflaggt. Daher wird er ausgelassen wenn das Paket per Service installiert wird.
          Er würde ausgeführt werden wenn ein Benutzer den Agent startet und zwar einmal für jeden Benutzer.
          Also einfach auf computerbezogen flaggen, dann wird der Befehl auch per Service und einmal pro Computer ausgeführt.

          Ciao
            Klaus
          • 2. Re: Installation .Net 3.5 unter Windows 8
            Michi Expert
            Hallo,

            installierst Du ein 64Bit Windows 8?
            Wenn ja, musst Du noch die 64Bit Redirection bei Deinem Execute abschalten.
            Und am besten auch den Aufruf mit voller Pfadangabge.
            Also %winsysdir%\dism.exe .....

            Gruß
            Michi
            • 3. Re: Installation .Net 3.5 unter Windows 8
              Polymer Apprentice
              Moin,

              vielen Dank für die schnelle Rückmeldung!

              Ich habe den Befehl jetzt als computerbezogen markiert.

              Das Log sieht nun so aus:

              10:35:56.607 2        ---->Starting installation of "DotNet Framework 3.5"

              10:35:56.623 2        -> Execute('dism.exe /online /enable-feature /featurename:NetFX3 /Source:C:\Program Files (x86)\Common Files\enteo\RepositoryCache\1421\rev\1\extern$\sxs /LimitAccess')/?/TW
              10:35:56.623 2         Command line logging has been enabled.
              10:35:56.623 2         To disable it, enable the flag 'Do not log command line parameters' of the command
              10:35:56.623 2         Execute: 'dism.exe /online /enable-feature /featurename:NetFX3 /Source:C:\Program Files (x86)\Common Files\enteo\RepositoryCache\1421\rev\1\extern$\sxs /LimitAccess'
              10:35:56.654 2         Waiting for process...
              10:35:56.873 2        xniFPS: '{DB4C73B3-4EF2-4C5F-9B1D-F78205F05582}' is installed

              10:35:56.873 2        ---->Installation of DotNet Framework 3.5 complete.


              Aber .Net ist nicht da......habe auch die UAC abgeschaltet.

              Ja es ist ein Win8 64Bit System und ich habe kein Häkchen bei der Umleitung auf 64Bit Systemen.
              Teste es jetzt aber noch bei einem 32Bit PC.


              Schönen Gruß
              Matthias
              • 4. Re: Installation .Net 3.5 unter Windows 8
                _Mel_ Master
                da sollte man echt mal den output des aufgerufenen programmes ins logfile schreiben...

                da der befehl nicht als "über service ausführen" geflaggt ist hat er keine adminrechte, wenn der installer nicht elevated gestartet wird.
                • 5. Re: Installation .Net 3.5 unter Windows 8
                  Polymer Apprentice

                  da sollte man echt mal den output des aufgerufenen programmes ins logfile schreiben...

                  da der befehl nicht als "über service ausführen" geflaggt ist hat er keine adminrechte, wenn der installer nicht elevated gestartet wird.



                  Wie kann ich den output ins Logfile schreiben lassen?

                  Ich habe jetzt alle Flags durch und es funktioniert nicht.


                  Schönen Gruß
                  Matthias
                  • 6. Re: Installation .Net 3.5 unter Windows 8
                    _Mel_ Master

                    Wie kann ich den output ins Logfile schreiben lassen?

                    eben garnicht... darum meinte ich ja, daß man das mal machen sollte

                    also wenn "computerrelated als service" nicht funktioniert...
                    leg ein batch file ins paket, das den befehl ausführt und gleich die ausgabe in eine datei umleitet (normale ausgabe + fehler).

                    hat's auf dem 32 bit rechner funktioniert ? denn die filesystemredirection kann da schon ein problem sein.

                    und setz mal die source in anführungszeichen, da ist ein leerzeichen drin und damit kommen die wenigsten programme zurecht.
                    • 7. Re: Installation .Net 3.5 unter Windows 8
                      JSHAY Apprentice
                      Hallo Matthias,

                      keine Lösung aber vielleicht ein Workaround: auch wenn man dotnet über die Komponenten aktivieren kann ist eine klassische Installation über das Download Paket (dotnet 3.51) meist trotzdem möglich, meistens kann man die Exe mit /q Silent ausführen (ohne Gewähr, bei WIN 8 noch nicht getestet).

                      viele Grüße

                      Jochen Schwarz (HAY)

                      Hallo zusammen,

                      wir haben seit letzter Woche DSM 7.2 im Einsatz und ich bin daran Win8 und die dazugehörigen Programme zu paketieren.
                      Nun möchte ich .Net 3.5 installieren bzw. aktivieren.

                      Ich führe ein Execute 'dism.exe /online /enable-feature /featurename:NetFX3 /Source:.\extern$\sxs /LimitAccess' aus. Im extern$ habe ich die benötigten Dateien von der Windows DVD.
                      Wenn ich das Script auf dem Client ausführe, dann steht im Log:

                      16:31:33.124 2        ---->Starting installation of "DotNet Framework 3.5"

                      16:31:33.124 2        -> Execute('dism.exe /online /enable-feature /featurename:NetFX3 /Source:C:\Program Files (x86)\Common Files\enteo\RepositoryCache\1421\rev\1\extern$\sxs /LimitAccess')/?/TL
                      16:31:33.124 1         Skipping user-cmd.
                      16:31:33.124 2        xniFPS: '{DB4C73B3-4EF2-4C5F-9B1D-F78205F05582}' is installed

                      16:31:33.124 2        ---->Installation of DotNet Framework 3.5 complete.

                      Leider ist dann kein .Net aktiviert.
                      Wenn ich mir den Execute Befehl aus dem Log in die Kommandozeile (als Admin) kopiere und ausführe, dann funktioniert es.....

                      Ich werde noch verrückt, wo ist mein (Anfänger-)Fehler?


                      Schönen Gruß
                      Matthias

                      • 8. Re: Installation .Net 3.5 unter Windows 8
                        SitzRieSe Expert

                        Moin,

                        vielen Dank für die schnelle Rückmeldung!

                        Ich habe den Befehl jetzt als computerbezogen markiert.

                        Das Log sieht nun so aus:

                        10:35:56.607 2        ---->Starting installation of "DotNet Framework 3.5"

                        10:35:56.623 2        -> Execute('dism.exe /online /enable-feature /featurename:NetFX3 /Source:C:\Program Files (x86)\Common Files\enteo\RepositoryCache\1421\rev\1\extern$\sxs /LimitAccess')/?/TW
                        10:35:56.623 2         Command line logging has been enabled.
                        10:35:56.623 2         To disable it, enable the flag 'Do not log command line parameters' of the command
                        10:35:56.623 2         Execute: 'dism.exe /online /enable-feature /featurename:NetFX3 /Source:C:\Program Files (x86)\Common Files\enteo\RepositoryCache\1421\rev\1\extern$\sxs /LimitAccess'
                        10:35:56.654 2         Waiting for process...
                        10:35:56.873 2        xniFPS: '{DB4C73B3-4EF2-4C5F-9B1D-F78205F05582}' is installed

                        10:35:56.873 2        ---->Installation of DotNet Framework 3.5 complete.


                        Aber .Net ist nicht da......habe auch die UAC abgeschaltet.

                        Ja es ist ein Win8 64Bit System und ich habe kein Häkchen bei der Umleitung auf 64Bit Systemen.
                        Teste es jetzt aber noch bei einem 32Bit PC.


                        Schönen Gruß
                        Matthias



                        Hi Matthias,

                        versuch mal den Pfad der DISM.exe mit anzugeben... also %windir%\system32\dism.exe

                        das wirkt hin und wieder wunder. Mit dem .NET 3.5 hab ich mich auch schon auf win8 rumgeschlagen. Wir haben es jetzt einfach in das .WIM File mit reingepatched, da wir eh noch Windows Updates mit eingebaut haben, haben wir gleichzeitig auf dem Weg .NET 3.5 aktiviert und ich finde das irgendwie als die sauberste Lösung.

                        EDIT:

                        Ok Blödsinn, er scheint ja den Befehl auszuführen und direkt wieder zu beenden... Vielleicht ist der Leerschritt bei Program Files das Problem, Setzt das mal in "".

                        Gruß

                        SitzRieSe
                        • 9. Re: Installation .Net 3.5 unter Windows 8
                          derniwi Master
                          Hallo,

                          ohne das ich mich jetzt mit Win 8 näher befasst habe:
                          Ich würde eine Variable "returncode" auf "0" setzen und anstelle von "Execute" den Befehl "ExecuteEx" verwenden, und dabei die Variable "returncode" setzen lassen. Diese kann man auswerten und sehen, ob schon von dism.exe ein Fehler gemeldet wird.

                          Gruß
                          Nils
                          • 10. Re: Installation .Net 3.5 unter Windows 8
                            Polymer Apprentice
                            Hallo zusammen,

                            vielen Dank für die vielen Antworten!

                            Ich habe jetzt soviel getestet und umgestrickt, dass er die Source Files nicht findet...also nochmal von Anfang.
                            Ansonsten werde ich mir mal anschauen, ob ich das Aktivieren des .net nicht in die unattend.xml bauen kann.
                            Ansonsten bliebe auch noch ein PowerSehll Script, das müsste ich mir aber genauer anschauen.

                            Es ist doch etwas nervend, wenn man an einer Grundfunktion Tage verbringt

                            Schönen Gruß
                            Matthias
                            • 11. Re: Installation .Net 3.5 unter Windows 8
                              Andy74 Expert
                              Also bei uns funktioniert das wunderbar

                              Hier das Script:


                              !Als Source wird das SXS Verzeichnis vom englischen Datenträger benötigt.
                              !
                              !Wenn zusätzliche Language Packs installiert sind, müssen noch die Inhalte der SXS Ordner von diesen Installationsquellen
                              !in den englischen SXS Ordner kopiert werden (bestehende Dateien überschreiben)
                              !
                              !
                              If not IsRunningOnX64
                              ExecuteEx('Dism /online /enable-feature /featurename:NetFx3 /All /Source:".\extern$\x86" /LimitAccess','','60')/?/TS
                              !
                              If IsRunningOnX64
                              Execute('%windir%\Sysnative\Dism.exe /online /enable-feature /featurename:NetFx3 /All /Source:".\extern$\x64" /LimitAccess')/?/TS
                              !
                              !
                              ClearRestartFlags


                              Bitte wegen den Sourcen noch meinen Blog-Beitrag beachten.
                              http://www.winpage.info/windows8/win8-net-framework-3-5-installieren/
                              • 12. Re: Installation .Net 3.5 unter Windows 8
                                luckydevil Specialist
                                Hallo,

                                auf o.g. Probleme bin ich vor längerer Zeit ebenfalls gestoßen. (LangPacks-Probs, WSUS-Reg.-Probs etc. ...)
                                ... War mir aber zu blöd ... Zu fehlerträchtig ... Zu viele Finger ...etc. ... etc.

                                Um z.B. "W8 x64 Enterprise" so früh wie möglich (ohne Imaging-Lsg. zu nutzen) mit z.B. "NetFx3" zu beglücken,
                                nutze ich zusätzlich die Microsoft-eigene "SetupComplete.cmd"-Logik (hierzu mal www durchwühlen).

                                ( auf die schnelle - auch wenn es Vista ist )
                                http://technet.microsoft.com/de-de/library/cc766314(v=ws.10).aspx

                                1. "OS Setup Sources" (hier also die "W8 x64 Enterprise" -Installationsdateien) unter Extern$ ...

                                  [*] Pfad anlegen sources\$OEM$\$$\Setup\Scripts
                                  [*] im Ordner Scripts eine "SetupComplete.cmd" platzieren (... die muss zu genannt werden, sonst passiert nix)
                                  [*] Inhalt von "SetupComplete.cmd" könnte sein "%systemdrive%\osd\costomcmd.cmd"

                                2. Im entspr. "OS Configuration Package" von W8 ...

                                  [*] unter "Quelldateien" eine "costomcmd.cmd" hinzufügen (Dynamisch; Ziel: c:\osd\costomcmd.cmd). Kurze Beschreibung --> siehe 3.
                                  [*] im Extern$-Verzeichnis des "OS Configuration Packages" prüfen, ob costcmd.cmd vorhanden

                                3."costomcmd.cmd"
                                Mit dem Inhalt von "costomcmd.cmd" ist es nun möglich verschiedenste Aktionen (quasi außerhalb der unattend.xml-Konfiguration) mit auf dem Weg zugeben.
                                Damit habe ich eine flexible CostomCMD-Aktionsplattform, mit der ich, was auch immer, irgendwas zeitnah mit erhöhten Rechten starten kann (... und hoffentlich problemloser endet).

                                Um nun zum Beispiel nur die Installation von Windows Feature Netfx3 in dieser Phase zu starten, könnte der Inhalt von "costomcmd.cmd" so aussehen:

                                hierbei nutze ich die DSM-OSD-Variablen:
                                %OSD.OSSetupFilePackageShare%
                                %OSD.OSSetupFilePackageSubDir%

                                (... erspart mir die 280 MB an sxs/*.*, die man sonst evtl. als Projekt-Paketverzeichnis nochmals distribuieren müsste)

                                start /wait DISM.exe /Online /Enable-Feature /FeatureName:NetFx3 /all /limitaccess /source:%OSD.OSSetupFilePackageShare%\%OSD.OSSetupFilePackageSubDir%\extern$\sources\sxs



                                Bisher läuft es tadellos ...
                                (... und immer schön "Distribution vorbereiten" nicht vergessen)

                                Wer möchte kann ja mal eine Rückmeldung geben...

                                Viel Grüße
                                lucky devil
                                • 13. Re: Installation .Net 3.5 unter Windows 8
                                  Polymer Apprentice
                                  @Lucky Devil
                                  Das ist ein guter Ansatz! Ich weiß nur noch nicht, ob der mir passt :-) Es ist dann eine weiter Stelle (ausser DSM und GPO) an der gegebenenfalls  Anpassungen nötig sind.....

                                  So ein bißchen Ehrgeiz habe ich ja doch, aber .net bringt mich an den Rand der Verzweiflung...
                                  Ich habe das Script von Andy74 kopiert -> ohne Erfolg.
                                  Nun habe ich etwas angepasst und ich bin wieder auf dem Stand, dass das Logfile sauber aussieht und wenn ich den Execute Befehl aus dem Logfile in die Eingabeaufforderung (als Administrator) kopiere, dann läuft die Installation, d.h. die Source und der Befehl passen.
                                  Die UAC habe ich auch mal abgeschaltet.....


                                  Schönen Gruß
                                  Matthias
                                  • 14. Re: Installation .Net 3.5 unter Windows 8
                                    derniwi Master
                                    Ich habe irgendwo gelesen, dass bei Win 8 das .NET Framework 3.5 vor der Installation von Language Packs freigeschalten werden muss. Vielleicht hilft dir das?
                                    1 2 Previous Next