Status eines anderen Produkts aus Script heraus ändern
Status eines anderen Produkts aus Script heraus ändern
Hallo,
gibt es eine Möglichkeit außer dem eigenhändigen Patchen der %hostid%.ini Datei (wie in viewtopic.php?f=7&t=1085&start=0 angesprochen), um den Status (und nicht nur die Version) eines Produktes zu ändern?
Konkretes Beispiel:
Es gibt bei uns Anwendungen, die unbedingt die 9er Version des Flashplayers benötigen, aber aus Sicherheitsgründen sollten andere PCs die 10er Version bekommen. Soweit so gut und nicht aufwendig habe ich je ein Paket für den 9er und den 10er Flashplayer. Beide erkennen Installationen der anderen Version inklusive aller Unterversionen und deinstallieren alles sauber, bevor sie sich selber installieren. Nur würde ich gerne das 9er Paket auf "nicht installiert" setzen lassen, wenn der 10er installiert wird und umgedreht. Kann ich das aus einem Winst-Script heraus sauber bewerkstelligen, ohne auf das Patchen der %hostid%.ini Datei zurückgreifen zu müssen?
Ich dachte zuerst, daß ich das mit OpsiServiceCall hinkriegen kann, aber diese Funktion ist im Handbuch (Seite 103ff) leider nur sehr rudimentär beschrieben.
Gruß
Dirk
gibt es eine Möglichkeit außer dem eigenhändigen Patchen der %hostid%.ini Datei (wie in viewtopic.php?f=7&t=1085&start=0 angesprochen), um den Status (und nicht nur die Version) eines Produktes zu ändern?
Konkretes Beispiel:
Es gibt bei uns Anwendungen, die unbedingt die 9er Version des Flashplayers benötigen, aber aus Sicherheitsgründen sollten andere PCs die 10er Version bekommen. Soweit so gut und nicht aufwendig habe ich je ein Paket für den 9er und den 10er Flashplayer. Beide erkennen Installationen der anderen Version inklusive aller Unterversionen und deinstallieren alles sauber, bevor sie sich selber installieren. Nur würde ich gerne das 9er Paket auf "nicht installiert" setzen lassen, wenn der 10er installiert wird und umgedreht. Kann ich das aus einem Winst-Script heraus sauber bewerkstelligen, ohne auf das Patchen der %hostid%.ini Datei zurückgreifen zu müssen?
Ich dachte zuerst, daß ich das mit OpsiServiceCall hinkriegen kann, aber diese Funktion ist im Handbuch (Seite 103ff) leider nur sehr rudimentär beschrieben.
Gruß
Dirk
Re: Status eines anderen Produkts aus Script heraus ändern
Code: Alles auswählen
[opsiServiceCall_setProductInstallationStatus]
"method": "setProductInstallationStatus"
"params": [
"$UninstallProductId$",
"$ClientId$",
"$InstallationStatus$"
]
Re: Status eines anderen Produkts aus Script heraus ändern
Hallo Dirk,
ein etwas ausfuehrlicheres Beispiel:
Gruss
Bardo Wolf
ein etwas ausfuehrlicheres Beispiel:
Code: Alles auswählen
comment "Setting Office (older version) to not_installed"
DefVar $UninstallProductId$
DefVar $InstallationStatus$
DefVar $ActionRequest$
DefVar $ClientId$
DefVar $DnsDomainName$
DefStringList $ServiceResult$
Set $InstallationStatus$ = 'not_installed'
Set $ActionRequest$ = 'none'
Set $ServiceResult$ = getReturnListFromSection('opsiServiceCall_getDomain')
Set $DnsDomainName$ = takestring(0, $ServiceResult$)
Set $ClientId$ = lower(EnvVar("COMPUTERNAME")) + "." + $DnsDomainName$
Set $UninstallProductId$ = 'office2003'
opsiServiceCall_setProductInstallationStatus
opsiServiceCall_setActionRequestStatus
Code: Alles auswählen
[opsiServiceCall_getDomain]
"method": "getDomain"
"params": [
]
[opsiServiceCall_setProductInstallationStatus]
"method": "setProductInstallationStatus"
"params": [
"$UninstallProductId$",
"$ClientId$",
"$InstallationStatus$"
]
[opsiServiceCall_setActionRequestStatus]
"method": "setProductActionRequest"
"params": [
"$UninstallProductId$",
"$ClientId$",
"$ActionRequest$"
]
Bardo Wolf
Vielen Dank für die Nutzung von opsi. Im Forum ist unser Support begrenzt.
Für den professionellen Einsatz und individuelle Beratung empfehlen wir einen Support-Vertrag und eine Schulung.
Gerne informieren wir Sie zu unserem Angebot.
uib GmbH
Telefon: +49 6131 27561 0
E-Mail: sales@uib.de
Re: Status eines anderen Produkts aus Script heraus ändern
Ganz herzlichen Dank an beide! Dann lag ich ja eigentlich doch richtig.wolfbardo hat geschrieben:ein etwas ausfuehrlicheres Beispiel:
Code: Alles auswählen
comment "Setting Office (older version) to not_installed" [snip] "$ActionRequest$" ]

Ich mache mich gleich ans Einbauen.
Danke und Gruß
Dirk
Re: Status eines anderen Produkts aus Script heraus ändern
Kurze Rückmeldung: Damit funktioniert es einwandfrei exakt so, wie ich es wollte! Und wieder was gelernt. Herzlichen Dank nochmal.wolfbardo hat geschrieben:ein etwas ausfuehrlicheres Beispiel:
Code: Alles auswählen
comment "Setting Office (older version) to not_installed" [snip] "$ActionRequest$" ]

Gruß
Dirk