Page 1 of 1
DotNet Framework Update Inventory Status bleibt auf Running
Posted: 27. Aug 2014, 10:51
by AlexanderS
Hallo,
wie verteilt ihr das .Net Framework (momentan 4.5.1)?
Ich habe ein einfaches Paket erstellt, mit dem Installationsaufruf:
Call "%Src%\NDP451-KB2858728-x86-x64-AllOS-ENU.exe" /q /norestart
Das .Net installiert sich auch erfolgreich, allerdings bleibt die Anzeige im Log und Status auf Running.
Das Setup Programm scheint keine SWDepot_Success.Log Datei zu generieren.
Code: Select all
27.08.2014 10:39:01 PCName Distribution Microsoft DotNet Framework 4.5.1 4.5.50938 0 Downloading
27.08.2014 10:39:02 PCName Distribution Microsoft DotNet Framework 4.5.1 4.5.50938 0 Downloaded Success
27.08.2014 10:40:39 PCName SYSTEM Microsoft DotNet Framework 4.5.1 4.5.50938 0 Install Running
Danach kommt nichts mehr.
Auch ein Neustart und das Inventory bringen keinerlei Veränderung.
Das Empirum Paket wird bei Neustart nicht nochmal neu installiert.
Hat jemand einen Tipp oder eine Idee?
Danke+Gruß
Alex
Re: DotNet Framework Update Inventory Status bleibt auf Runn
Posted: 27. Aug 2014, 13:36
by AlexanderS
Ok mein Lösungsvorschlag dafür:
Code: Select all
#Set:Product
#Set:Installation, DONTDELETE
#Set:Deinstallation, DELETE
#Reg:OnUninstallProduct, DELETE
[Set:Product]
eventcreate /L Application /T Warning /SO MyEvent /ID 666 /D "%DeveloperName% %ProductName% %Version% - Starte Installation"
[SET:Installation]
AddMeter -1
If DoesRegKeyExist ("HKLM,Software\Empirum\Custom\NetFramework451, Installed") == "1" Then "Set:Exit" EndIf
Call cmd /c net stop eris
Sleep 1000
Call "%Src%\NDP451-KB2858728-x86-x64-AllOS-ENU.exe" /q /norestart
If DoesRegKeyExist ("HKLM,SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{7DEBE4EB-6B40-3766-BB35-5CBBC385DA37}") == "0" & DoesRegKeyExist ("HKLM,SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{92FB6C44-E685-45AD-9B20-CADF4CABA132}") == "0" & DoesRegKeyExist ("HKLM,SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{92FB6C44-E685-45AD-9B20-CADF4CABA132} – 1031") == "0" & DoesRegKeyExist ("HKLM,SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{7DEBE4EB-6B40-3766-BB35-5CBBC385DA37}") == "0" Then "Set:InstallationError" EndIf
eventcreate /L Application /T Warning /SO MyEvent /ID 666 /D "%DeveloperName% %ProductName% %Version% - 1. Run finished - Exiting now"
#Reg:MakeKey
call cmd /c shutdown -r -f -t 10
abort
[Set:Exit]
eventcreate /L Application /T Warning /SO MyEvent /ID 666 /D "%DeveloperName% %ProductName% %Version% - Installation fertig"
exit
[Reg:MakeKey]
HKLM,Software\Empirum\Custom\NetFramework451, Installed, 0x00000001, "1"
[SET:Deinstallation]
-Call MsiExec.exe /X{7DEBE4EB-6B40-3766-BB35-5CBBC385DA37} /qb-!
-AddMeter -1
-abort
[Reg:OnUninstallProduct]
[Shell:Product]
[SET:InstallationError]
ErrorLogMsg %ErrorText% %ErrorLevel% %CallingText% dotnetfx45_full_x86_x64.exe
eventcreate /L Application /T Warning /SO MyEvent /ID 666 /D "%DeveloperName% %ProductName% %Version% - Install Error"
Abort
[SET:DeInstallationError]
-Abort
-ErrorLogMsg %ErrorText% %ErrorLevel% %CallingText% dotnetfx45_full_x86_x64.exe
Nicht schön, aber effektiv

Re: DotNet Framework Update Inventory Status bleibt auf Runn
Posted: 01. Sep 2014, 21:43
by Viper9000
Hi,
ich habe das mit einem kleinem Powershell Skript gelöst. Dies wird nach Abschluss der Installation (wenn erfolgreich) in der Inf ausgeführt. Dadurch wird eine Log Datei im lokalen Empirum Agent Ordner erzeugt, welche so aussieht, als wenn es vom Agent selbst kommt. Somit wird die Logdatei genau so auf den EmpirumServer hochgeladen, wie jede andere. Der Agent mag es nicht, wenn man z.B. Net 4.x Updates und Visual C++ Redist 2010 aktualisiert, weil er diese selbst für eine fehlerfreie Funktion benötigt. Deshalb der Workaround.
#######################
$NetBIOSDomain = $args[0]
$EmpirumLocalDepotPath = $args[1]
$DisplayName = $args[2]
$Version = $args[3]
$Revision = $args[4]
$InstallUser = "SYSTEM"
$InstallContext = $args[5]
#define log file
$LogFilePath = $EmpirumLocalDepotPath + "\Log\SwDepot_" + $NetBIOSDomain + "_" + $env:COMPUTERNAME + "_" + (Get-Date -Format g).Replace(".","-").Replace(" ","_").Replace(":","-") + "-00.log"
$LogDateTime = (Get-Date -Format g)
$LogDateTime = $LogDateTime.Split(" ")
# create logfile in local logfile path and write log file header
Set-Content -Path $LogFilePath -Value "Date Time DomainName ComputerName WindowsUser PackageName Version Revision Mode Result Error"
Add-Content -Path $LogFilePath -Value ($LogDateTime[0] + " " + ($LogDateTime[1] + ":59") + " " + $NetBIOSDomain + " " + $env:COMPUTERNAME + " " + $InstallUser + " " + $DisplayName + " " + $Version + " " + $Revision + " " + $InstallContext + " " + "Success")
Bsp Aufruf:
call powershell -executionpolicy unrestricted -file Logfile.ps1 "TestDom" "C:\EmpirumAgent" "Microsoft Visual C++ Redistributable 2010" "%Version%" "0" "Install"
Gruß Viper
PS: Die Zeilenumbrüche sind nicht gewollt.
Re: DotNet Framework Update Inventory Status bleibt auf Runn
Posted: 16. Sep 2014, 08:35
by AlexanderS
Hi,
elegant gelöst

Danke fürs teilen!
Gruß
Alex
Re: DotNet Framework Update Inventory Status bleibt auf Runn
Posted: 16. Sep 2014, 10:22
by Viper9000
Re: DotNet Framework Update Inventory Status bleibt auf Runn
Posted: 24. Sep 2014, 13:13
by melsen85
Eine Frage zu .Net Framework 4.5.2
Wenn ich das auf meinem Test-Client installiere, dann "findet" Empirum kein .Net-Paket mehr und verlang Version 4.0?
Ich habe die V15.1 Patch 06.
Re: DotNet Framework Update Inventory Status bleibt auf Runn
Posted: 24. Sep 2014, 21:46
by Viper9000
Hallo Melsen85,
es wäre schon hilfreich, wenn du dein Client OS erwähnst und deinen derzeitigen Kommandoaufruf für das .Net 4.5.2. Wo hast du das Update genau runtergeladen?
Was heißt Empirum findet kein .Net mehr? Der Agent funktioniert nicht mehr?
Wir rollen das 4.5.2 auf Win7 x64 SP1 direkt aus. (ohne Zwischenschritt 4.0, da es eigentlich inkludiert ist.
Gruß Viper
Re: DotNet Framework Update Inventory Status bleibt auf Runn
Posted: 25. Sep 2014, 06:36
by melsen85
Das Setup habe ich von computerbase.de gezogen: dotNetFx452_Full_x86_x64.exe
Install:
Code: Select all
[Set:Installation]
AddMeter -1
Call "%Src%\dotNetFx452_Full_x86_x64.exe" /q /norestart /log "%SRC%/log.htm"
;If %ErrorLevel% == "1641" | %ErrorLevel% == "3010" Then "RebootRequired" EndIf
If %ErrorLevel% <> "0" Then "SET:InstallationError" EndIf
;If %ErrorLevel% <> "0" & %ErrorLevel% <> "1641" & %ErrorLevel% <> "3010" Then "SET:InstallationError" EndIf
Ich habe die Fehlermeldung als Datei angehangen. Das Packaging Center startet auf dem Test-Client mit dem gleichen Fehler auch nicht mehr.
Tritt das Problem mit Patch 07 nicht mehr auf, oder habe ich etwas übersehen?
.Net 4.5.2 überbügelt ja die Version 4.0?
*EDIT:
Wenn ich das Setup per Hand durchklicke läuft alles wieder, das heißt meine Installation geht schief.
Re: DotNet Framework Update Inventory Status bleibt auf Runn
Posted: 25. Sep 2014, 10:44
by Viper9000
Hi,
wir haben die Exe entpackt und führen folgendes MSI in der Inf aus.
[InstallMSI]
AddMeter -1
Call MsiExec /I "%SRC%\netfx_Full_GDR_x64.msi" EXTUI=1 REBOOT=REALLYSUPPRESS ARPSYSTEMCOMPONENT=1 /qb-! /Li "%"
Bei uns klappt es auch so über dem Agent. Da der aktuelle Net 4.x benötigt, sollte es nicht während der Installation deinstalliert werden oder so.
Gruß