Hilfe bei Lizenzmanagement
Verfasst: 20 Apr 2015, 12:34
Hallo zusammen,
im Rahmen einer Projektarbeit beschäftige ich mich momentan mit der Installation und Integration eines opsi-servers in meinem Betrieb. Ich habe mir das vorgefertigte Skript zur Installation und Deinstallation von TeamViewer 8 aus den Templates gesucht und ein wenig angepasst bis es mit TeamViewer 10 auf den TestClients funktionierte. Anschließend habe ich mich mit dem Lizenzmanagement beschäftigt und ein entsprechendes Lizenzpool für den TeamViewer als concurrent-Lizenz angelegt.
Da ich nicht der Beste im Umgang mit Skripten bin, möchte ich nun wissen wie genau ich Das im setup-Skript hinterlege, dass eine Lizenz im Lizenzmanagement "blockiert" wird und was ich anfügen muss damit die Lizenz auch auf dem TestClient in der Konfiguration des TeamViewers, nach einer Installation via opsi, eingebunden wird. Außerdem wäre es hilfreich wenn mir jemand zeigt was ich im uninstall-Skript abändern muss um die Lizenz nach einer Deinstallation wieder frei zu geben.
Hier die Inhalte der Skripte:
setup.ins:
[Actions]
requiredWinstVersion >= "4.11.3.6"
setLogLevel = 6
TraceMode = off
DefVar $OS$
DefVar $NTVersion$
DefVar $SystemType$
DefVar $ProductName$
DefVar $ProductNameFull$
DefVar $ProductPicture$
DefVar $Executable32$
DefVar $Executable64$
DefVar $ExitCode$
DefVar $MsiId32$
DefVar $MsiId64$
DefVar $TempDir$
set $OS$ = GetOS
set $NTVersion$ = GetNTVersion
Set $SystemType$ = GetSystemType
Set $TempDir$ = "C:\tmp"
; ----------------------------------------------------------------
; - Please edit the following values -
; ----------------------------------------------------------------
set $ProductNameFull$ = "TeamViewer 10"
Set $ProductPicture$ = "logo.png"
Set $Executable32$ = "TeamViewer.msi"
Set $Executable64$ = "TeamViewer.msi"
Set $MsiId32$ = '{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}'
Set $MsiId64$ = '{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}'
; ----------------------------------------------------------------
; Show $ProductPicture$ and $ProductNameFull$
ShowBitmap /3 "%scriptpath%\" + $ProductPicture$ $ProductNameFull$
Message "Installiere "+$ProductNameFull$
if not (HasMinimumSpace ("%SYSTEMDRIVE%", "50 MB"))
LogError "Nicht genügend Platz auf %SYSTEMDRIVE%"
isFatalError
endif
; Deinstall old Version
Sub "%ScriptPath%\delsub.ins"
Message "Installiere " + $ProductNameFull$ + " ..."
if ( $NTVersion$ = "Win2K" OR $NTVersion$ = "WinXP" OR $NTVersion$ = "Win NT 5.2" OR $NTVersion$ = "Windows Vista" OR $NTVersion$ = "Win NT 6.1" OR $NTVersion$ = "Win NT 6.2" )
if $SystemType$ = "x86 System"
Files_copy_local
Winbatch_Install_32-Bit
sub "%ScriptDrive%\install\check_exitcode\check_msi-exitcode.ins"
Files_del
endif
if $SystemType$ = "64 Bit System"
Files_copy_local
Winbatch_Install_64-Bit
sub "%ScriptDrive%\install\check_exitcode\check_msi-exitcode.ins"
Files_del
endif
else
LogError "Kein kompatibles Betriebssystem installiert"
isFatalError
endif
[Files_copy_local]
copy "%scriptpath%\$Executable64$" "$TempDir$\."
copy "%scriptpath%\TeamViewer_Settings.reg" "$TempDir$\."
[Winbatch_Install_32-Bit]
msiexec /i "$TempDir$\$Executable32$" /quiet /norestart
[Winbatch_Install_64-Bit]
msiexec /i "$TempDir$\$Executable64$" /quiet /norestart
[Files_del]
delete "$TempDir$\$Executable64$"
delete "$TempDir$\TeamViewer_Settings.reg"
uninstall.ins:
[Actions]
requiredWinstVersion >= "4.11"
setLogLevel = 6
TraceMode = off
DefVar $MsiId32$
DefVar $MsiId64$
DefVar $LogDir$
DefVar $ExitCode$
DefVar $ProductNameFull$
DefVar $ProductPicture$
DefVar $OS$
DefVar $NTVersion$
DefVar $SystemType$
DefVar $TempDir$
DefVar $Executable32$
DefVar $Executable64$
set $OS$ = GetOS
set $NTVersion$ = GetNTVersion
Set $SystemType$ = GetSystemType
Set $TempDir$ = "C:\tmp"
; ----------------------------------------------------------------
; - Please edit the following values -
; ----------------------------------------------------------------
Set $ProductNameFull$ = "TeamViewer 10"
Set $ProductPicture$ = "logo.png"
Set $Executable32$ = "TeamViewer.msi"
Set $Executable64$ = "TeamViewer.msi"
Set $MsiId32$ = '{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}'
Set $MsiId64$ = '{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}'
; ----------------------------------------------------------------
comment "Display product logo"
ShowBitmap /3 "%scriptpath%\" + $ProductPicture$ $ProductNameFull$
Message "Deinstalliere " + $ProductNameFull$ + " ..."
if FileExists("%ScriptPath%\delsub.ins")
comment "Start uninstall sub section"
Sub "%ScriptPath%\delsub.ins"
endif
delsub.ins:
Message "Deinstalliere " + $ProductNameFull$ + " ..."
;OS-Version ermitteln
if ( $NTVersion$ = "Win2K" OR $NTVersion$ = "WinXP" OR $NTVersion$ = "Win NT 5.2" OR $NTVersion$ = "Windows Vista" OR $NTVersion$ = "Win NT 6.1" OR $NTVersion$ = "Win NT 6.2" )
comment "checking for old installation (32bit)"
if not (GetRegistryStringValue32("[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\TeamViewer] DisplayName") = "")
comment "MSI id " + $MsiId32$ + " found in registry, starting msiexec to uninstall"
Files_copy_local
Winbatch_uninstall_msi32
sub "%ScriptDrive%\install\check_exitcode\check_msi-exitcode.ins"
endif
if $SystemType$ = "64 Bit System"
comment "checking for old installation (64bit)"
if not (GetRegistryStringValue64("[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\TeamViewer] DisplayName") = "")
comment "MSI id " + $MsiId64$ + " found in registry, starting msiexec to uninstall"
Files_copy_local
Winbatch_uninstall_msi64
sub "%ScriptDrive%\install\check_exitcode\check_msi-exitcode.ins"
endif
endif
else
LogError "Kein kompatibles Betriebssystem installiert"
isFatalError
endif
[Winbatch_uninstall_msi32]
msiexec /x "$TempDir$\$Executable32$" /quiet REBOOT=ReallySuppress
;delete "$TempDir$\$Executable32$"
;msiexec /x $MsiId32$ /quiet REBOOT=ReallySuppress
[Winbatch_uninstall_msi64]
msiexec /x "$TempDir$\$Executable64$" /quiet REBOOT=ReallySuppress
;delete "$TempDir$\$Executable64$"
;msiexec /x $MsiId64$ /quiet REBOOT=ReallySuppress
[Files_copy_local]
copy "%scriptpath%\$Executable64$" "$TempDir$\."
copy "%scriptpath%\TeamViewer_Settings.reg" "$TempDir$\."
Danke & Gruß
SES
im Rahmen einer Projektarbeit beschäftige ich mich momentan mit der Installation und Integration eines opsi-servers in meinem Betrieb. Ich habe mir das vorgefertigte Skript zur Installation und Deinstallation von TeamViewer 8 aus den Templates gesucht und ein wenig angepasst bis es mit TeamViewer 10 auf den TestClients funktionierte. Anschließend habe ich mich mit dem Lizenzmanagement beschäftigt und ein entsprechendes Lizenzpool für den TeamViewer als concurrent-Lizenz angelegt.
Da ich nicht der Beste im Umgang mit Skripten bin, möchte ich nun wissen wie genau ich Das im setup-Skript hinterlege, dass eine Lizenz im Lizenzmanagement "blockiert" wird und was ich anfügen muss damit die Lizenz auch auf dem TestClient in der Konfiguration des TeamViewers, nach einer Installation via opsi, eingebunden wird. Außerdem wäre es hilfreich wenn mir jemand zeigt was ich im uninstall-Skript abändern muss um die Lizenz nach einer Deinstallation wieder frei zu geben.
Hier die Inhalte der Skripte:
setup.ins:
[Actions]
requiredWinstVersion >= "4.11.3.6"
setLogLevel = 6
TraceMode = off
DefVar $OS$
DefVar $NTVersion$
DefVar $SystemType$
DefVar $ProductName$
DefVar $ProductNameFull$
DefVar $ProductPicture$
DefVar $Executable32$
DefVar $Executable64$
DefVar $ExitCode$
DefVar $MsiId32$
DefVar $MsiId64$
DefVar $TempDir$
set $OS$ = GetOS
set $NTVersion$ = GetNTVersion
Set $SystemType$ = GetSystemType
Set $TempDir$ = "C:\tmp"
; ----------------------------------------------------------------
; - Please edit the following values -
; ----------------------------------------------------------------
set $ProductNameFull$ = "TeamViewer 10"
Set $ProductPicture$ = "logo.png"
Set $Executable32$ = "TeamViewer.msi"
Set $Executable64$ = "TeamViewer.msi"
Set $MsiId32$ = '{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}'
Set $MsiId64$ = '{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}'
; ----------------------------------------------------------------
; Show $ProductPicture$ and $ProductNameFull$
ShowBitmap /3 "%scriptpath%\" + $ProductPicture$ $ProductNameFull$
Message "Installiere "+$ProductNameFull$
if not (HasMinimumSpace ("%SYSTEMDRIVE%", "50 MB"))
LogError "Nicht genügend Platz auf %SYSTEMDRIVE%"
isFatalError
endif
; Deinstall old Version
Sub "%ScriptPath%\delsub.ins"
Message "Installiere " + $ProductNameFull$ + " ..."
if ( $NTVersion$ = "Win2K" OR $NTVersion$ = "WinXP" OR $NTVersion$ = "Win NT 5.2" OR $NTVersion$ = "Windows Vista" OR $NTVersion$ = "Win NT 6.1" OR $NTVersion$ = "Win NT 6.2" )
if $SystemType$ = "x86 System"
Files_copy_local
Winbatch_Install_32-Bit
sub "%ScriptDrive%\install\check_exitcode\check_msi-exitcode.ins"
Files_del
endif
if $SystemType$ = "64 Bit System"
Files_copy_local
Winbatch_Install_64-Bit
sub "%ScriptDrive%\install\check_exitcode\check_msi-exitcode.ins"
Files_del
endif
else
LogError "Kein kompatibles Betriebssystem installiert"
isFatalError
endif
[Files_copy_local]
copy "%scriptpath%\$Executable64$" "$TempDir$\."
copy "%scriptpath%\TeamViewer_Settings.reg" "$TempDir$\."
[Winbatch_Install_32-Bit]
msiexec /i "$TempDir$\$Executable32$" /quiet /norestart
[Winbatch_Install_64-Bit]
msiexec /i "$TempDir$\$Executable64$" /quiet /norestart
[Files_del]
delete "$TempDir$\$Executable64$"
delete "$TempDir$\TeamViewer_Settings.reg"
uninstall.ins:
[Actions]
requiredWinstVersion >= "4.11"
setLogLevel = 6
TraceMode = off
DefVar $MsiId32$
DefVar $MsiId64$
DefVar $LogDir$
DefVar $ExitCode$
DefVar $ProductNameFull$
DefVar $ProductPicture$
DefVar $OS$
DefVar $NTVersion$
DefVar $SystemType$
DefVar $TempDir$
DefVar $Executable32$
DefVar $Executable64$
set $OS$ = GetOS
set $NTVersion$ = GetNTVersion
Set $SystemType$ = GetSystemType
Set $TempDir$ = "C:\tmp"
; ----------------------------------------------------------------
; - Please edit the following values -
; ----------------------------------------------------------------
Set $ProductNameFull$ = "TeamViewer 10"
Set $ProductPicture$ = "logo.png"
Set $Executable32$ = "TeamViewer.msi"
Set $Executable64$ = "TeamViewer.msi"
Set $MsiId32$ = '{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}'
Set $MsiId64$ = '{xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx}'
; ----------------------------------------------------------------
comment "Display product logo"
ShowBitmap /3 "%scriptpath%\" + $ProductPicture$ $ProductNameFull$
Message "Deinstalliere " + $ProductNameFull$ + " ..."
if FileExists("%ScriptPath%\delsub.ins")
comment "Start uninstall sub section"
Sub "%ScriptPath%\delsub.ins"
endif
delsub.ins:
Message "Deinstalliere " + $ProductNameFull$ + " ..."
;OS-Version ermitteln
if ( $NTVersion$ = "Win2K" OR $NTVersion$ = "WinXP" OR $NTVersion$ = "Win NT 5.2" OR $NTVersion$ = "Windows Vista" OR $NTVersion$ = "Win NT 6.1" OR $NTVersion$ = "Win NT 6.2" )
comment "checking for old installation (32bit)"
if not (GetRegistryStringValue32("[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\TeamViewer] DisplayName") = "")
comment "MSI id " + $MsiId32$ + " found in registry, starting msiexec to uninstall"
Files_copy_local
Winbatch_uninstall_msi32
sub "%ScriptDrive%\install\check_exitcode\check_msi-exitcode.ins"
endif
if $SystemType$ = "64 Bit System"
comment "checking for old installation (64bit)"
if not (GetRegistryStringValue64("[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\TeamViewer] DisplayName") = "")
comment "MSI id " + $MsiId64$ + " found in registry, starting msiexec to uninstall"
Files_copy_local
Winbatch_uninstall_msi64
sub "%ScriptDrive%\install\check_exitcode\check_msi-exitcode.ins"
endif
endif
else
LogError "Kein kompatibles Betriebssystem installiert"
isFatalError
endif
[Winbatch_uninstall_msi32]
msiexec /x "$TempDir$\$Executable32$" /quiet REBOOT=ReallySuppress
;delete "$TempDir$\$Executable32$"
;msiexec /x $MsiId32$ /quiet REBOOT=ReallySuppress
[Winbatch_uninstall_msi64]
msiexec /x "$TempDir$\$Executable64$" /quiet REBOOT=ReallySuppress
;delete "$TempDir$\$Executable64$"
;msiexec /x $MsiId64$ /quiet REBOOT=ReallySuppress
[Files_copy_local]
copy "%scriptpath%\$Executable64$" "$TempDir$\."
copy "%scriptpath%\TeamViewer_Settings.reg" "$TempDir$\."
Danke & Gruß
SES