DotNet Framework Update Inventory Status bleibt auf Running

Post Reply
AlexanderS
Posts: 138
Joined: 30. May 2011, 11:24
Contact:

DotNet Framework Update Inventory Status bleibt auf Running

Post by AlexanderS » 27. Aug 2014, 10:51

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

AlexanderS
Posts: 138
Joined: 30. May 2011, 11:24
Contact:

Re: DotNet Framework Update Inventory Status bleibt auf Runn

Post by AlexanderS » 27. Aug 2014, 13:36

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 :)

Viper9000
Posts: 307
Joined: 13. Oct 2005, 20:44
Contact:

Re: DotNet Framework Update Inventory Status bleibt auf Runn

Post by Viper9000 » 01. Sep 2014, 21:43

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.

AlexanderS
Posts: 138
Joined: 30. May 2011, 11:24
Contact:

Re: DotNet Framework Update Inventory Status bleibt auf Runn

Post by AlexanderS » 16. Sep 2014, 08:35

Hi,

elegant gelöst :)
Danke fürs teilen!

Gruß
Alex


melsen85
Posts: 51
Joined: 01. Nov 2012, 15:25
Contact:

Re: DotNet Framework Update Inventory Status bleibt auf Runn

Post by melsen85 » 24. Sep 2014, 13:13

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.

Viper9000
Posts: 307
Joined: 13. Oct 2005, 20:44
Contact:

Re: DotNet Framework Update Inventory Status bleibt auf Runn

Post by Viper9000 » 24. Sep 2014, 21:46

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

melsen85
Posts: 51
Joined: 01. Nov 2012, 15:25
Contact:

Re: DotNet Framework Update Inventory Status bleibt auf Runn

Post by melsen85 » 25. Sep 2014, 06:36

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.
Attachments
Empirum_ERIS_UI_DotNet_4.5.2.png
(67.99 KiB) Downloaded 477 times

Viper9000
Posts: 307
Joined: 13. Oct 2005, 20:44
Contact:

Re: DotNet Framework Update Inventory Status bleibt auf Runn

Post by Viper9000 » 25. Sep 2014, 10:44

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ß

Post Reply

Return to “Paketierung”

Who is online

Users browsing this forum: No registered users and 13 guests