Installation von Microsoft Office 2019 – Gibt es eine Möglichkeit, Produktschlüssel von COA-Aufklebern zu scannen?

Installation von Microsoft Office 2019 – Gibt es eine Möglichkeit, Produktschlüssel von COA-Aufklebern zu scannen?

Ich habe ungefähr 450 ASUS Chromebooks mit Windows 10, auf denen Microsoft Office 2019 installiert sein muss. Ich habe für jeden Computer einen eigenen Produktschlüsselaufkleber, um Microsoft Office 2019 zu registrieren. Wenn ich mir den COA-Aufkleber anschaue, sehe ich zwei Barcodes.

Microsoft Office 2019 COA-Aufkleber

Der obere Barcode entspricht dem Wert W2F-00188 und der andere Barcode entspricht dem Wert 04053000035198. Dies ist offensichtlich nicht der Produktschlüssel für Office 2019. Gibt es eine Möglichkeit für mich, eine der beiden Zahlen in einen scannbaren Wert für den Produktschlüssel für Office 2019 zu übersetzen? Gibt es eine Möglichkeit, diesen Vorgang der Eingabe eines Barcodes für jeden Laptop zu automatisieren, oder erwartet Microsoft von den Endbenutzern, dass sie den vollständigen Produktschlüssel manuell eingeben? Ich würde gerne glauben, dass es im Jahr 2021 eine Möglichkeit geben wird, nicht 450 einzelne Produktschlüssel manuell auf jedem Gerät eingeben zu müssen, aber ich dachte, ich sollte hier fragen, bevor ich Annahmen mache.

Antwort1

function Get-WindowsKey {
    ## function to retrieve the Windows Product Key from any PC
    param ($targets = "$env:COMPUTERNAME")
    $hklm = 2147483650
    $regPath = "Software\Microsoft\Windows NT\CurrentVersion"
    $regValue = "DigitalProductId"
    Foreach ($target in $targets) {
        $productKey = $null
        $win32os = $null
        $wmi = [WMIClass]"\\$target\root\default:stdRegProv"
        $data = $wmi.GetBinaryValue($hklm,$regPath,$regValue)
        $binArray = ($data.uValue)[52..66]
        $charsArray = "B","C","D","E","F","G","H","J","K","M","P","Q","­R","T","V","W","X","Y","2","3","4","5","6","7","8","9"
        ## decrypt base24 encoded binary data
        For ($i = 24; $i -ge 0; $i--) {
            $k = 0
            For ($j = 14; $j -ge 0; $j--) {
                $k = $k * 256 -bxor $binArray[$j]
                $binArray[$j] = [math]::truncate($k / 24)
                $k = $k % 24
            }
            $productKey = $charsArray[$k] + $productKey
            If (($i % 5 -eq 0) -and ($i -ne 0)) {
                $productKey = "-" + $productKey
            }
        }
        $win32os = Get-WmiObject Win32_OperatingSystem -computer $target
        $obj = New-Object Object
        $obj | Add-Member Noteproperty Computer -value $target
        $obj | Add-Member Noteproperty Caption -value $win32os.Caption
        $obj | Add-Member Noteproperty CSDVersion -value $win32os.CSDVersion
        $obj | Add-Member Noteproperty OSArch -value $win32os.OSArchitecture
        $obj | Add-Member Noteproperty BuildNumber -value $win32os.BuildNumber
        $obj | Add-Member Noteproperty RegisteredTo -value $win32os.RegisteredUser
        $obj | Add-Member Noteproperty ProductID -value $win32os.SerialNumber
        $obj | Add-Member Noteproperty ProductKey -value $productkey
        $obj
    }
}

verwandte Informationen