Das werde ich so auch nicht einsetzten, es war ein schneller test ob hier überhaupt etwas passiert.
Ich habe mal die swaudit4.ins mit angehängt.
Hier habe ich zwei weitere Variablen deklariert, eine Variable mit den zusätzlichen Pfad in der Reg befüllt, die beiden Subs "sub_getswdetails4_32" und "sub_getswdetails4_64" angepasst, die zweite Variable mit in die comment aufgenommen und in die beiden Hashlists "softwareHashlist" und "softwareOnClientHashlist" meinen neuen Wert mit aufgenommen.
Im Log des Configed sehe ich die comment mit korrektem inhalt der Variable, nach umstellen des Loglevels wird der Hash ebenfalls im Log angezeigt, dort taucht ebenfalls alles korrekt auf. Ich sehe diese werte nur nicht unter "Software-Inventarisierung" im configed, warum?
Code: Alles auswählen
; Copyright (c) uib GmbH (www.uib.de)
; This sourcecode is owned by uib
; and published under the Terms of the General Public License.
[actions]
requiredWinstVersion >= "4.11.3.11"
ScriptErrorMessages = off
DefVar $Highloglevel$
DefVar $Midloglevel$
DefVar $Lowloglevel$
DefVar $ProductId$
DefVar $OpsiRegKey$
DefVar $uninstkey$
DefVar $extendedkey$
defVar $winSoftwareId$
defVar $displayVersion$
defVar $displayName$
defVar $uninstallString$
defVar $Language$
defVar $user$
defVar $pass$
defVar $serviceUrl$
DefVar $swAuditInfoStr$
DefVar $clientId$
DefVar $ident$
DefVar $name$
DefVar $version$
DefVar $subversion$
DefVar $architecture$
;DefVar $opsiVer$
DefVar $SysArchitecture$
DefVar $binaryName$
DefVar $Teamviewer$
DefVar $TVID$
DefVar $lastUsed$
DefVar $installSize$
DefVar $usageFrequency$
DefVar $langCodeHex$
DefVar $licenseKey$
DefVar $tmp$
DefVar $aktkey$
DefVar $extended_search$
DefVar $write2file$
DefVar $readfromfile$
DefVar $usefilebuffer$
DefVar $usekeyfinder$
DefVar $line$
DefVar $element$
DefVar $aktKeyVar$
DefStringlist $uninstKeys$
DefStringlist $resultlist$
DefStringList $singleHash$
DefStringList $softwareHashlist$
DefStringList $softwareOnClientHashlist$
DefStringList $SlowInfoMap$
DefStringList $VerInfoMap$
DefStringList $LicenseSections$
set $ProductId$ = "swaudit"
Set $OpsiRegKey$ = "HKLM\SOFTWARE\opsi.org"
Set $uninstkey$="HKEY_LOCAL_MACHINE\software\microsoft\windows\currentversion\uninstall"
Set $Teamviewer$="HKEY_LOCAL_MACHINE\software\wow6432node"
Set $extendedkey$="HKEY_LOCAL_MACHINE\software\microsoft\windows\currentversion\app management\arpcache"
set $clientId$="%HostID%"
set $extended_search$ = GetProductProperty("extended_search","off")
set $usefilebuffer$ = GetProductProperty("usefilebuffer","off")
set $usekeyfinder$ = GetProductProperty("usekeyfinder","on")
set $readfromfile$ = GetProductProperty("readfromfile","off")
set $Highloglevel$ = "6"
set $Midloglevel$ = "5"
set $Lowloglevel$ = "5"
;set $Highloglevel$ = "5"
;set $Midloglevel$ = "5"
;set $Lowloglevel$ = "6"
setloglevel = $Highloglevel$
Message "Running software audit..."
ShowBitmap "%SCRIPTPATH%\swaudit.png" "Software Inventarisierung"
if GetMsVersionInfo < "5.0"
logError "Installation aborted: wrong OS version: only win2k and above alowed"
isFatalError
endif
comment "detect if we run in opsi service mode"
if "%installingProdName%" = ""
comment " we running standalone"
set $write2file$ = "on"
else
comment " we run in opsi service mode"
set $write2file$ = "off"
endif
setloglevel = $Highloglevel$
if $readfromfile$ = "off"
if $usekeyfinder$ = "on"
message "collecting license keys ..."
Files_del_temp
Winbatch_start_keyfinder
set $LicenseSections$ = GetSectionNames("c:\opsi.org\tmp\swaudit_keys.ini")
endif
if GetSystemType = "64 Bit System"
message "collecting 64 Bit products ..."
set $uninstKeys$ = getRegistryKeyList64($uninstKey$)
message "collecting 64 Bit product details ..."
set $architecture$ = "x64"
set $subversion$ = ""
set $Language$ = ""
for %aktkey% in $uninstKeys$ do sub_getswdetails4_64
endif
message "collecting 32 Bit products ..."
set $uninstKeys$ = getRegistryKeyList32($uninstKey$)
setloglevel = $Highloglevel$
message "collecting 32 Bit product details ..."
set $architecture$ = "x86"
set $subversion$ = ""
set $Language$ = ""
for %aktkey% in $uninstKeys$ do sub_getswdetails4_32
setloglevel=$Highloglevel$
message "collecting os details ..."
sub_get_windows_info
sub_create_hash4
setloglevel=$Highloglevel$
if GetMsVersionInfo >= "6"
message "collecting hotfixes ..."
sub_get_nt6_hotfix_info
setloglevel = $Highloglevel$
endif
else
comment "read from file - only for debugging"
setloglevel=7
set $softwareHashlist$ = loadUnicodeTextFile("c:\opsi.org\tmp\auditsoftware_%PCName%.txt")
set $softwareOnClientHashlist$ = loadUnicodeTextFile("c:\opsi.org\tmp\auditsoftwareOnClient_%PCName%.txt")
endif
if $write2file$ = "on"
message "writing results back to file ..."
Files_del_old
for %s% in $softwareHashlist$ do sub_build_auditsoftware
for %s% in $softwareOnClientHashlist$ do sub_build_auditSoftwareOnClient
else
message "writing results back to service ..."
if $usefilebuffer$ = "on"
Files_del_old
for %s% in $softwareHashlist$ do sub_build_auditsoftware
for %s% in $softwareOnClientHashlist$ do sub_build_auditSoftwareOnClient
set $softwareHashlist$ = loadTextFile("c:\opsi.org\tmp\auditsoftware_%PCName%.txt")
set $softwareOnClientHashlist$ = loadTextFile("c:\opsi.org\tmp\auditsoftwareOnClient_%PCName%.txt")
endif
setloglevel = 8
markErrorNumber
opsiservicecall_auditSoftwareOnClient_setObsolete
if errorsOccuredSinceMark > 0
isFatalError
endif
OpsiServiceHashList_auditSoftware_createObjects
if errorsOccuredSinceMark > 0
isFatalError
endif
OpsiServiceHashList_auditSoftwareOnClient_createObjects
if errorsOccuredSinceMark > 0
isFatalError
endif
endif
Files_del_temp
[sub_getswdetails4_32]
setloglevel=$Midloglevel$
comment "handling if key contains quotation marks"
set $aktKeyVar$ = EscapeString: %aktkey%
if not ($aktKeyVar$ = "")
set $installSize$ = "-1"
set $usageFrequency$ = "-1"
set $binaryName$ = ""
set $TVID$ = ""
set $lastUsed$ = ""
set $Language$ = ""
set $winSoftwareId$ = $aktKeyVar$
if not ($winSoftwareId$ = "")
set $displayVersion$ = GetRegistrystringvalue32("["+$uninstKey$+"\"+$aktKeyVar$+"] DisplayVersion")
set $displayName$ = GetRegistrystringvalue32("["+$uninstKey$+"\"+$aktKeyVar$+"] displayName")
set $binaryName$ = GetRegistrystringvalue32("["+$uninstKey$+"\"+$aktKeyVar$+"] binaryName")
set $TVID$ = GetRegistrystringvalue32("["+$Teamviewer$+"\"+$aktKeyVar$+"] ClientID")
set $uninstallString$ = GetRegistrystringvalue32("["+$uninstKey$+"\"+$aktKeyVar$+"] uninstallString")
set $licenseKey$ = GetValueFromInifile("c:\opsi.org\tmp\swaudit_keys.ini",$winSoftwareId$,"License key","")
set $binaryName$ = GetRegistrystringvalue ("["+$uninstKey$+"\"+$aktKeyVar$+"] binaryName")
if not($binaryName$ = "")
if FileExists($binaryName$)
set $VerInfoMap$ = getFileInfoMap($binaryName$)
set $langCodeHex$ = DecStrToHexStr(getValue("Language ID 0",$VerInfoMap$),"4")
set $Language$ = LangCodeByHex($langCodeHex$)
endif
endif
if $extended_search$ = "on"
set $SlowInfoMap$ = GetSlowInfoMap($winSoftwareId$,"on")
if count($SlowInfoMap$) > "0"
set $binaryName$ = getValue("binaryName",$SlowInfoMap$)
if ($binaryName$ = "") or ($binaryName$ = "NULL")
set $binaryName$ = ""
endif
set $installSize$ = getValue("installSize",$SlowInfoMap$)
if ($installSize$ = "") or ($installSize$ = "NULL")
set $installSize$ = "0"
endif
set $lastUsed$ = getValue("lastUsed",$SlowInfoMap$)
if ($lastUsed$ = "") or ($lastUsed$ = "NULL")
set $lastUsed$ = ""
endif
set $usageFrequency$ = getValue("usageFrequency",$SlowInfoMap$)
if ($usageFrequency$ = "") or ($usageFrequency$ = "NULL")
set $usageFrequency$ = "0"
endif
if not(($binaryName$ = "") or ($binaryName$ = "NULL"))
if FileExists($binaryName$)
set $VerInfoMap$ = getFileInfoMap($binaryName$)
set $langCodeHex$ = DecStrToHexStr(getValue("Language ID 0",$VerInfoMap$),"4")
set $Language$ = LangCodeByHex($langCodeHex$)
endif
endif
endif
endif
sub_create_hash4
endif
endif
[sub_getswdetails4_64]
setloglevel=$Midloglevel$
comment "handling if key contains quotation marks"
set $aktKeyVar$ = EscapeString: %aktkey%
if not ($aktKeyVar$ = "")
set $installSize$ = "-1"
set $usageFrequency$ = "-1"
set $lastUsed$ = ""
set $binaryName$ = ""
set $Language$ = ""
set $winSoftwareId$ = $aktKeyVar$
if not ($winSoftwareId$ = "")
set $Language$ = ""
set $binaryName$ = ""
set $displayVersion$ = GetRegistrystringvalue64 ("["+$uninstKey$+"\"+$aktKeyVar$+"] DisplayVersion")
set $displayName$ = GetRegistrystringvalue64 ("["+$uninstKey$+"\"+$aktKeyVar$+"] displayName")
set $TVID$ = GetRegistrystringvalue64 ("["+$Teamviewer$+"\"+$aktKeyVar$+"] ClientID")
set $uninstallString$ = GetRegistrystringvalue64 ("["+$uninstKey$+"\"+$aktKeyVar$+"] uninstallString")
set $licenseKey$ = GetValueFromInifile("c:\opsi.org\tmp\swaudit_keys.ini",$winSoftwareId$,"License key","")
set $binaryName$ = GetRegistrystringvalue64 ("["+$uninstKey$+"\"+$aktKeyVar$+"] binaryName")
if not($binaryName$ = "")
if FileExists($binaryName$)
set $VerInfoMap$ = getFileInfoMap($binaryName$)
set $langCodeHex$ = DecStrToHexStr(getValue("Language ID 0",$VerInfoMap$),"4")
set $Language$ = LangCodeByHex($langCodeHex$)
endif
endif
if $extended_search$ = "on"
set $SlowInfoMap$ = GetSlowInfoMap($winSoftwareId$,"off")
if count($SlowInfoMap$) > "0"
set $binaryName$ = getValue("binaryName",$SlowInfoMap$)
if ($binaryName$ = "") or ($binaryName$ = "NULL")
set $binaryName$ = ""
endif
set $installSize$ = getValue("installSize",$SlowInfoMap$)
if ($installSize$ = "") or ($installSize$ = "NULL")
set $installSize$ = "-1"
endif
set $lastUsed$ = getValue("lastUsed",$SlowInfoMap$)
if ($lastUsed$ = "") or ($lastUsed$ = "NULL")
set $lastUsed$ = ""
endif
set $usageFrequency$ = getValue("usageFrequency",$SlowInfoMap$)
if ($usageFrequency$ = "") or ($usageFrequency$ = "NULL")
set $usageFrequency$ = "-1"
endif
if not(($binaryName$ = "") or ($binaryName$ = "NULL"))
if FileExists($binaryName$)
set $VerInfoMap$ = getFileInfoMap($binaryName$)
set $langCodeHex$ = DecStrToHexStr(getValue("Language ID 0",$VerInfoMap$),"4")
set $Language$ = LangCodeByHex($langCodeHex$)
endif
endif
endif
endif
sub_create_hash4
endif
endif
[sub_get_windows_info]
DefVar $CurrentVersionProductName$
DefVar $CurrentVersionCSDVersion$
DefVar $CurrentVersionProductId$
DefVar $CurrentVersionCurrentVersion$
DefStringList $localeMap$
set $installSize$ = "-1"
set $usageFrequency$ = "-1"
set $binaryName$ = ""
set $lastUsed$ = ""
if GetMsVersionInfo < "5.1"
; GetRegistryStringValueSysNative does not work at win2k
; i.e. Windows 2000
Set $CurrentVersionProductName$ = GetRegistryStringValue("[HKLM\Software\Microsoft\Windows NT\CurrentVersion] ProductName")
; i.e. ServicePack 1
Set $CurrentVersionCSDVersion$ = GetRegistryStringValue("[HKLM\Software\Microsoft\Windows NT\CurrentVersion] CSDVersion")
; i.e. 00376-165-5790905-86892
; http://wiki.lunarsoft.net/wiki/Product_IDs
; xxxxx-yyy-zzzzzzz-zzzzz
; xxxxx: microsoft product code (platform, build, language, and version of windows)
; yyy: channel id (OEM, Volume License, Retail, bundle/Not For Resale)
Set $CurrentVersionProductId$ = GetRegistryStringValue("[HKLM\Software\Microsoft\Windows NT\CurrentVersion] ProductId")
; i.e. 6.1
Set $CurrentVersionCurrentVersion$ = GetRegistryStringValue("[HKLM\Software\Microsoft\Windows NT\CurrentVersion] CurrentVersion")
else
; i.e. Windows 7 professional N
Set $CurrentVersionProductName$ = GetRegistryStringValueSysNative("[HKLM\Software\Microsoft\Windows NT\CurrentVersion] ProductName")
; i.e. ServicePack 1
Set $CurrentVersionCSDVersion$ = GetRegistryStringValueSysNative("[HKLM\Software\Microsoft\Windows NT\CurrentVersion] CSDVersion")
; i.e. 00376-165-5790905-86892
; http://wiki.lunarsoft.net/wiki/Product_IDs
; xxxxx-yyy-zzzzzzz-zzzzz
; xxxxx: microsoft product code (platform, build, language, and version of windows)
; yyy: channel id (OEM, Volume License, Retail, bundle/Not For Resale)
Set $CurrentVersionProductId$ = GetRegistryStringValueSysNative("[HKLM\Software\Microsoft\Windows NT\CurrentVersion] ProductId")
; i.e. 6.1
Set $CurrentVersionCurrentVersion$ = GetRegistryStringValueSysNative("[HKLM\Software\Microsoft\Windows NT\CurrentVersion] CurrentVersion")
endif
Set $winSoftwareId$ = "ms_windows_" + takeString(0, splitString($CurrentVersionProductId$, "-")) + "-" + takeString(1, splitString($CurrentVersionProductId$, "-"))
Set $displayVersion$ = $CurrentVersionCurrentVersion$
Set $displayName$ = $CurrentVersionProductName$
if not ($CurrentVersionCSDVersion$ = "")
Set $displayName$ = $displayName$ + " (" + $CurrentVersionCSDVersion$ + ")"
endif
Set $uninstallString$ = ""
Set $name$ = $displayName$
Set $version$ = $CurrentVersionCurrentVersion$
Set $subversion$ = takeString(0, splitString($CurrentVersionProductId$, "-")) + "-" + takeString(1, splitString($CurrentVersionProductId$, "-"))
set $licenseKey$ = GetValueFromInifile("c:\opsi.org\tmp\swaudit_keys.ini",$winSoftwareId$,"License key","")
Set $localeMap$ = getLocaleInfoMap
;(string 19)system_default_lang_region=de-DE
;Set $Language$ = takeString(1, splitString(takeString(19, $localeMap$), "=") )
Set $Language$ = getValue("system_default_lang_region",$localeMap$)
if (GetSystemType = "64 Bit System")
Set $architecture$ = "x64"
else
Set $architecture$ = "x86"
endif
[sub_get_nt6_hotfix_info]
setloglevel = $Highloglevel$
Set $displayVersion$ = ""
Set $uninstallString$ = ""
Set $version$ = ""
Set $subversion$ = ""
set $licenseKey$ = ""
set $installSize$ = "-1"
set $usageFrequency$ = "-1"
set $binaryName$ = ""
set $lastUsed$ = ""
set $Language$ = LangCodeByHex("0x0000")
set $resultlist$ = GetOutstreamFromSection('DosInAnIcon_get_nt6_hofixes')
set $resultlist$ = getListContaining($resultlist$, "KB")
for %akthotfix% in $resultlist$ do sub_process_nt6_hotfix_info
[sub_process_nt6_hotfix_info]
setloglevel=$Midloglevel$
Set $winSoftwareId$ = trim("%akthotfix%")
Set $displayName$ = trim("%akthotfix%")
Set $name$ = $displayName$
if (GetSystemType = "64 Bit System")
Set $architecture$ = "x64"
else
Set $architecture$ = "x86"
endif
sub_create_hash4
[DosInAnIcon_get_nt6_hofixes]
@echo off
wmic qfe get hotfixid
[sub_create_hash4]
if $displayName$ = ""
set $name$ = $winSoftwareId$
else
set $name$ = $displayName$
endif
set $version$ = $displayVersion$
setloglevel = $Highloglevel$
comment ""
comment "next product is...."
comment "$name$ --------------= "+$name$
;comment "corrected name ---------
comment "$version$ ------------= "+$version$
comment "$TVID$ --------------= "+$TVID$
comment "$subVersion$ ---------= "+$subVersion$
comment "$language$ -----------= "+$language$
comment "$architecture$ -------= "+$architecture$
comment "$windowsSoftwareId$ --= "+$winSoftwareId$
comment "$windowsDisplayName$ -= "+$displayName$
comment "$windowsDisplayVersion$ = "+$displayVersion$
comment "$uninstallString$ ----= "+$uninstallString$
comment "$installSize$ --------= "+$installSize$
comment "$displayVersion$ -----= "+$displayVersion$
comment "$binaryName$ ---------= "+$binaryName$
comment "$licenseKey$ ---------= "+$licenseKey$
setloglevel = $Lowloglevel$
; auditSoftware
; name, version, subVersion, language, architecture, windowsSoftwareId=None, windowsDisplayName=None, windowsDisplayVersion=None, installSize=None
; auditSoftwareOnClient
; name, version, subVersion, language, architecture, clientId, uninstallString=None, binaryName=None, firstseen=None, lastseen=None, state=None, usageFrequency=None, lastUsed=None
; collecting the 'usage frequence' and 'last used' may be illegal according to the laws about employee data privacy
set $lastUsed$ = ""
set $usageFrequency$ = "-1"
;set $ident$ = $name$+";"+$version$+";"+$subversion$+";"+$language$+";"+$architecture$
set $softwareHashlist$ = addtolist($softwareHashlist$, "[newmap]")
set $softwareHashlist$ = addtolist($softwareHashlist$, "type=AuditSoftware")
set $softwareHashlist$ = addtolist($softwareHashlist$, "name="+strPart($name$,"1","99"))
set $softwareHashlist$ = addtolist($softwareHashlist$, "version="+strPart($version$,"1","99"))
set $softwareHashlist$ = addtolist($softwareHashlist$, "subVersion="+strPart($subversion$,"1","99"))
set $softwareHashlist$ = addtolist($softwareHashlist$, "language="+strPart($Language$,"1","9"))
set $softwareHashlist$ = addtolist($softwareHashlist$, "architecture="+strPart($architecture$,"1","3"))
set $softwareHashlist$ = addtolist($softwareHashlist$, "windowsSoftwareId="+strPart($winSoftwareId$,"1","99"))
set $softwareHashlist$ = addtolist($softwareHashlist$, "windowsDisplayName="+strPart($displayName$,"1","99"))
set $softwareHashlist$ = addtolist($softwareHashlist$, "windowsDisplayVersion="+strPart($displayVersion$,"1","99"))
set $softwareHashlist$ = addtolist($softwareHashlist$, "installSize="+$installSize$)
set $softwareHashlist$ = addtolist($softwareHashlist$, "teamviewerId="+strPart($TVID$,"1","9"))
set $softwareOnClientHashlist$ = addtolist($softwareOnClientHashlist$, "[newmap]")
set $softwareOnClientHashlist$ = addtolist($softwareOnClientHashlist$, "type=AuditSoftwareOnClient")
set $softwareOnClientHashlist$ = addtolist($softwareOnClientHashlist$, "name="+strPart($name$,"1","99"))
set $softwareOnClientHashlist$ = addtolist($softwareOnClientHashlist$, "version="+strPart($version$,"1","99"))
set $softwareOnClientHashlist$ = addtolist($softwareOnClientHashlist$, "subVersion="+strPart($subversion$,"1","99"))
set $softwareOnClientHashlist$ = addtolist($softwareOnClientHashlist$, "language="+strPart($Language$,"1","9"))
set $softwareOnClientHashlist$ = addtolist($softwareOnClientHashlist$, "architecture="+strPart($architecture$,"1","3"))
set $softwareOnClientHashlist$ = addtolist($softwareOnClientHashlist$, "clientId="+strPart($clientId$,"1","254"))
set $softwareOnClientHashlist$ = addtolist($softwareOnClientHashlist$, "uninstallString="+strPart($uninstallString$,"1","199"))
set $softwareOnClientHashlist$ = addtolist($softwareOnClientHashlist$, "binaryName="+strPart($binaryName$,"1","99"))
set $softwareOnClientHashlist$ = addtolist($softwareOnClientHashlist$, "usageFrequency="+$usageFrequency$)
set $softwareOnClientHashlist$ = addtolist($softwareOnClientHashlist$, "licenseKey="+strPart($licenseKey$,"1","254"))
set $softwareOnClientHashlist$ = addtolist($softwareOnClientHashlist$, "teamviewerId="+strPart($TVID$,"1","9"))
if not($lastUsed$ = "")
set $softwareOnClientHashlist$ = addtolist($softwareOnClientHashlist$, "lastUsed="+$lastUsed$)
endif
[execWith_getuninstallkeys]
@echo off
reg query $uninstkey$
[DosInAnIcon_getuninstallkeys]
@echo off
regedit /e "c:\opsi.org\tmp\myreg.reg" $uninstkey$
[sub_remove_brackets]
set $tmp$ = takeFirstStringContaining(splitstring($aktKeyVar$,"["), $uninstkey$)
set $tmp$ = takeFirstStringContaining(splitstring($tmp$,"]"), $uninstkey$)
set $uninstkeys$ = addtolist($uninstkeys$, $tmp$)
[Winbatch_start_keyfinder]
"%SCRIPTPATH%\keyfinder\keyfinder.exe" /close /saveini "c:\opsi.org\tmp\" /file "swaudit_keys.ini"
[Files_del_temp]
del "c:\opsi.org\tmp\swaudit_keys.ini"
[opsiservicecall_authenticated]
"method": "authenticated"
"params": [
]
[opsiservicecall_setSoftwareInformation]
"method": "setSoftwareInformation"
"params": [
"$clientId$"
'$swAuditInfoStr$'
]
[opsiservicecall_getPossibleMethods_listOfHashes]
"method": "getPossibleMethods_listOfHashes"
"params": [
]
[opsiservicecall_auditSoftwareOnClient_setObsolete]
"method": "auditSoftwareOnClient_setObsolete"
"params": [
"$clientId$"
]
; name, version, subVersion, language, architecture, clientId, teamviewerId, uninstallString=None, binaryName=None, firstseen=None, lastseen=None, state=None, usageFrequency=None, lastUsed=None
[OpsiServiceHashList_auditSoftware_createObjects]
"method": "auditSoftware_createObjects"
"HashList": "$softwareHashlist$"
"params": [
]
; name, version, subVersion, language, architecture, windowsSoftwareId=None, windowsDisplayName=None, windowsDisplayVersion=None, installSize=None
[OpsiServiceHashList_auditSoftwareOnClient_createObjects]
"method": "auditSoftwareOnClient_createObjects"
"HashList": "$softwareOnClientHashlist$"
"params": [
]
[sub_build_auditsoftware]
set $element$ = EscapeString:%s%
set $line$ = composeString(splitstring($element$, "'"), "''")
Patchtextfile_auditsoftware "c:\opsi.org\tmp\auditsoftware_%PCName%.txt"
[Patchtextfile_auditsoftware]
AppendLine '$line$'
[sub_build_auditSoftwareOnClient]
set $element$ = EscapeString:%s%
set $line$ = composeString(splitstring($element$, "'"), "''")
Patchtextfile_auditSoftwareOnClient "c:\opsi.org\tmp\auditsoftwareOnClient_%PCName%.txt"
[Patchtextfile_auditSoftwareOnClient]
AppendLine '$line$'
[Files_del_old]
del -f "c:\opsi.org\tmp\auditsoftware_%PCName%.txt"
del -f "c:\opsi.org\tmp\auditsoftwareOnClient_%PCName%.txt"