I’ve identified and applied a fixlet to change an outdated KMS server in the Windows Registry. While some are returning completed, or fixed, others show exit code 0 or exit code -1073418124
None are actually reactivating Windows-- instead requiring an in-person visit to apply the change manually via CMD prompt script. Further we notice that the KMS server remains unchanged in these instances, still pointing to our old KMS server address.
Here is the fixlet:
Relevance
Show collapsed relevance
(
(
windows of operating system
)
AND
(
exists value “KeyManagementServiceName” of keys “HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\SoftwareProtectionPlatform” of
(
x32 registries ; x64 registries
)
)
)
AND
(
/* not exists
(
it
whose
(
it contains “[kms.subdomain.domain.edu]”
)
of
(
if
exists key “HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\SoftwareProtectionPlatform” of native registry
and
exists value “KeyManagementServiceName” of key “HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\SoftwareProtectionPlatform” of native registry
then
value “KeyManagementServiceName” of key “HKEY_LOCAL_MACHINE\Software \Microsoft\Windows NT\CurrentVersion\SoftwareProtectionPlatform” of native registry as string as lowercase
else
nothing
)
)
*/ not exists value "KeyManagementServiceName"
whose
(
it as string as lowercase = “[kms.subdomain.domain.edu]”
)
of keys “HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\SoftwareProtectionPlatform” of
(
x32 registries ; x64 registries
)
)
Show indented relevance
((windows of operating system) AND (exists value “KeyManagementServiceName” of keys “HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\SoftwareProtectionPlatform” of (x32 registries ; x64 registries))) AND (/* not exists (it whose (it contains “kms.subdomain.domain.edu”) of (if exists key “HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\SoftwareProtectionPlatform” of native registry and exists value “KeyManagementServiceName” of key “HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\SoftwareProtectionPlatform” of native registry then value “KeyManagementServiceName” of key “HKEY_LOCAL_MACHINE\Software \Microsoft\Windows NT\CurrentVersion\SoftwareProtectionPlatform” of native registry as string as lowercase else nothing)) */ not exists value “KeyManagementServiceName” whose (it as string as lowercase = “kms.subdomain.domain.edu”) of keys “HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\SoftwareProtectionPlatform” of (x32 registries ; x64 registries))
Action Script
Script Type BigFix Action Script
//x32 Operating System
if {not x64 of operating system and exists folder “c:\Program Files\Microsoft Office\Office14”}
waithidden cmd.exe /C cscript “c:\Program Files\Microsoft Office\Office14\OSPP.VBS” /sethst:kms.subdomain.domain.edu
waithidden cmd.exe /C cscript “c:\Program Files\Microsoft Office\Office14\OSPP.VBS” /act
endif
if {not x64 of operating system and exists folder “c:\Program Files\Microsoft Office\Office15” }
waithidden cmd.exe /C cscript “c:\Program Files\Microsoft Office\Office15\OSPP.VBS” /sethst:kms.subdomain.domain.edu
waithidden cmd.exe /C cscript “c:\Program Files\Microsoft Office\Office15\OSPP.VBS” /act
endif
//x64 Operating System
//64-bit Office
if {x64 of operating system and exists folder “c:\Program Files\Microsoft Office\Office14”}
waithidden cmd.exe /C cscript “C:\Program Files\Microsoft Office\Office14\OSPP.VBS” /sethst:kms.subdomain.domain.edu
waithidden cmd.exe /C cscript “C:\Program Files\Microsoft Office\Office14\OSPP.VBS” /act
endif
if {x64 of operating system and exists folder “c:\Program Files\Microsoft Office\Office15”}
waithidden cmd.exe /C cscript “C:\Program Files\Microsoft Office\Office15\OSPP.VBS” /sethst:kms.subdomain.domain.edu
waithidden cmd.exe /C cscript “C:\Program Files\Microsoft Office\Office15\OSPP.VBS” /act
endif
//32-bit Office
if {x64 of operating system and exists folder “C:\Program Files (x86)\Microsoft Office\Office14” }
waithidden cmd.exe /C cscript “C:\Program Files (x86)\Microsoft Office\Office14\OSPP.VBS” /sethst:kms.subdomain.domain.edu
waithidden cmd.exe /C cscript “C:\Program Files (x86)\Microsoft Office\Office14\OSPP.VBS” /act
endif
if {x64 of operating system and exists folder “C:\Program Files (x86)\Microsoft Office\Office15” }
waithidden cmd.exe /C cscript “C:\Program Files (x86)\Microsoft Office\Office15\OSPP.VBS” /sethst:kms.subdomain.domain.edu
waithidden cmd.exe /C cscript “C:\Program Files (x86)\Microsoft Office\Office15\OSPP.VBS” /act
endif
//Windows 7 and 8 and 2012
// Win Vista and 2008 require /ipk codes
if { (name of it contains “Win7” OR name of it contains “Win8” OR name of it contains “Win2012” OR name of it contains “Win2008R2” OR name of it contains “Win10”) of operating system }
waithidden cmd.exe /C cscript “c:\windows\system32\slmgr.vbs” -skms kms.subdomain.domain.edu:PORT
waithidden cmd.exe /C cscript “c:\windows\system32\slmgr.vbs” -ato
endif
//Windows 7 and 8 and 2012
// Win Vista and 2008 require /ipk codes
if { (name of it contains “Win7” OR name of it contains “Win8” OR name of it contains “Win2012” OR name of it contains “Win2008R2” OR name of it contains “Win10”) of operating system }
waithidden cmd.exe /C cscript “c:\windows\system32\slmgr.vbs” -skms kms.subdomain.domain.edu:PORT
waithidden cmd.exe /C cscript “c:\windows\system32\slmgr.vbs” -ato
endif
=======
I also ran a custom Task to simply run the last portion:
if { (name of it contains “Win7” OR name of it contains “Win8” OR name of it contains “Win2012” OR name of it contains “Win2008R2” OR name of it contains “Win10”) of operating system }
waithidden cmd.exe /C cscript “c:\windows\system32\slmgr.vbs” -skms kms.subdomain.domain.edu:PORT
waithidden cmd.exe /C cscript “c:\windows\system32\slmgr.vbs” -ato
endif
Again, Exit Code -1073418124 : KMS Server unchanged.
Any ideas what might be going on here?