精华内容
下载资源
问答
  • 许多用户在win1064位系统中安装Office2013之后, 发现是没有激活的,第一次使用会提示输入激活码,但是有用户却遇到了Office2013无法激活没显示输入激活码选项的情况,这该怎么办呢,本文就给大家带来win10系统下...

    许多用户在win1064位系统中安装Office2013之后, 发现是没有激活的,第一次使用会提示输入激活码,但是有用户却遇到了Office2013无法激活没显示输入激活码选项的情况,这该怎么办呢,本文就给大家带来win10系统下Office2013无法激活没显示输入激活码选项的解决方法。

    具体方法如下:

    1、win10下同时按下键盘的win+x组合键进入控制面板,其它版本直接点击控制面板进入;

    win10系统下Office2013无法激活没显示输入激活码选项怎么解决

    2、在控制面板界面选择程序下面的卸载程序;

    win10系统下Office2013无法激活没显示输入激活码选项怎么解决

    3、找到office2013安装程序,点击鼠标右键选择更改;

    win10系统下Office2013无法激活没显示输入激活码选项怎么解决

    4、更改程序启动界面如下图所示,此画面需要10秒左右,等待启动完;

    win10系统下Office2013无法激活没显示输入激活码选项怎么解决

    5、进入修改界面,选择输入产品秘钥选项,点击继续按钮;

    win10系统下Office2013无法激活没显示输入激活码选项怎么解决

    6、输入产品秘钥,点击继续按钮;

    win10系统下Office2013无法激活没显示输入激活码选项怎么解决

    7、选择需要安装的类型,点击继续按钮;

    win10系统下Office2013无法激活没显示输入激活码选项怎么解决

    8、等待程序配置完成,此过程需要20秒左右;

    win10系统下Office2013无法激活没显示输入激活码选项怎么解决

    9、出现配置成功界面,关闭后重新启动即可完成新秘钥激活程序。

    win10系统下Office2013无法激活没显示输入激活码选项怎么解决

    以上就是win10系统下Office2013无法激活没显示输入激活码选项的详细解决方法,如果你有遇到一样情况的话,可以采取上面的方法来进行操作吧。

    本文来源于win10专业版,转载请注明来源于出处。

    展开全文
  • win10下office2013命令激活参考

    千次阅读 2021-02-20 22:47:36
    Windows PowerShell 版权所有 (C) Microsoft Corporation。... cd "C:\Program Files (x86)\Microsoft Office\Office15" PS C:\Program Files (x86)\Microsoft Office\Office15> cscript ospp....

    Windows PowerShell
    版权所有 (C) Microsoft Corporation。保留所有权利。

    尝试新的跨平台 PowerShell https://aka.ms/pscore6

    PS C:\WINDOWS\system32> cd "C:\Program Files (x86)\Microsoft Office\Office15"
    PS C:\Program Files (x86)\Microsoft Office\Office15> cscript ospp.vbs /inpkey:YC7DK-G2NP3-2QQC3-J6H88-GVGXT
    Microsoft (R) Windows Script Host Version 5.812
    版权所有(C) Microsoft Corporation。保留所有权利。

    输入错误: 无法找到脚本文件“C:\Program Files (x86)\Microsoft Office\Office15\ospp.vbs”。
    PS C:\Program Files (x86)\Microsoft Office\Office15> cscript ospp.vbs /inpkey:YC7DK-G2NP3-2QQC3-J6H88-GVGXT
    Microsoft (R) Windows Script Host Version 5.812
    版权所有(C) Microsoft Corporation。保留所有权利。

    ---Processing--------------------------
    ---------------------------------------
    <Product key installation successful>
    ---------------------------------------
    ---Exiting-----------------------------
    PS C:\Program Files (x86)\Microsoft Office\Office15> cscript ospp.vbs /sethst:kms.03k.org
    Microsoft (R) Windows Script Host Version 5.812
    版权所有(C) Microsoft Corporation。保留所有权利。

    ---Processing--------------------------
    ---------------------------------------
    Successfully applied setting.
    ---------------------------------------
    ---Exiting-----------------------------
    PS C:\Program Files (x86)\Microsoft Office\Office15> cscript ospp.vbs /act
    Microsoft (R) Windows Script Host Version 5.812
    版权所有(C) Microsoft Corporation。保留所有权利。

    ---Processing--------------------------
    ---------------------------------------
    Installed product key detected - attempting to activate the following product:
    SKU ID: 41499869-4103-4d3b-9da6-d07df41b6e39
    LICENSE NAME: Office 15, OfficeProPlusMSDNR_Retail edition
    LICENSE DESCRIPTION: Office 15, RETAIL channel
    Last 5 characters of installed product key: 628P9
    [File not found: C:\Program Files (x86)\Microsoft Office\Office15\slerror.xml  Unable to display error description.]
    ERROR CODE: 0xC004C003
    ERROR DESCRIPTION: Run the following: cscript ospp.vbs /ddescr:0xC004C003
    ---------------------------------------
    Installed product key detected - attempting to activate the following product:
    SKU ID: b322da9c-a2e2-4058-9e4e-f59a6970bd69
    LICENSE NAME: Office 15, OfficeProPlusVL_KMS_Client edition
    LICENSE DESCRIPTION: Office 15, VOLUME_KMSCLIENT channel
    Last 5 characters of installed product key: GVGXT
    <Product activation successful>
    ---------------------------------------
    Installed product key detected - attempting to activate the following product:
    SKU ID: e13ac10e-75d0-4aff-a0cd-764982cf541c
    LICENSE NAME: Office 15, OfficeVisioProVL_KMS_Client edition
    LICENSE DESCRIPTION: Office 15, VOLUME_KMSCLIENT channel
    Last 5 characters of installed product key: RM3B3
    <Product activation successful>
    ---------------------------------------
    ---------------------------------------
    ---Exiting-----------------------------

    以下报错可忽略


    PS C:\Program Files (x86)\Microsoft Office\Office15> cscript ospp.vbs /dstatus
    Microsoft (R) Windows Script Host Version 5.812
    版权所有(C) Microsoft Corporation。保留所有权利。

    ---Processing--------------------------
    ---------------------------------------
    [File not found: C:\Program Files (x86)\Microsoft Office\Office15\slerror.xml  Unable to display error description.]
    [File not found: C:\Program Files (x86)\Microsoft Office\Office15\slerror.xml  Unable to display error description.]
    [File not found: C:\Program Files (x86)\Microsoft Office\Office15\slerror.xml  Unable to display error description.]
    [File not found: C:\Program Files (x86)\Microsoft Office\Office15\slerror.xml  Unable to display error description.]
    [File not found: C:\Program Files (x86)\Microsoft Office\Office15\slerror.xml  Unable to display error description.]
    [File not found: C:\Program Files (x86)\Microsoft Office\Office15\slerror.xml  Unable to display error description.]
    [File not found: C:\Program Files (x86)\Microsoft Office\Office15\slerror.xml  Unable to display error description.]
    [File not found: C:\Program Files (x86)\Microsoft Office\Office15\slerror.xml  Unable to display error description.]
    [File not found: C:\Program Files (x86)\Microsoft Office\Office15\slerror.xml  Unable to display error description.]
    [File not found: C:\Program Files (x86)\Microsoft Office\Office15\slerror.xml  Unable to display error description.]
    [File not found: C:\Program Files (x86)\Microsoft Office\Office15\slerror.xml  Unable to display error description.]
    [File not found: C:\Program Files (x86)\Microsoft Office\Office15\slerror.xml  Unable to display error description.]
    [File not found: C:\Program Files (x86)\Microsoft Office\Office15\slerror.xml  Unable to display error description.]
    [File not found: C:\Program Files (x86)\Microsoft Office\Office15\slerror.xml  Unable to display error description.]
    [File not found: C:\Program Files (x86)\Microsoft Office\Office15\slerror.xml  Unable to display error description.]
    [File not found: C:\Program Files (x86)\Microsoft Office\Office15\slerror.xml  Unable to display error description.]
    SKU ID: 41499869-4103-4d3b-9da6-d07df41b6e39
    LICENSE NAME: Office 15, OfficeProPlusMSDNR_Retail edition
    LICENSE DESCRIPTION: Office 15, RETAIL channel
    BETA EXPIRATION: 1601/1/1
    LICENSE STATUS:  ---NOTIFICATIONS---
    ERROR CODE: 0xC004F009
    ERROR DESCRIPTION: Run the following: cscript ospp.vbs /ddescr:0xC004F009
    Last 5 characters of installed product key: 628P9
    ---------------------------------------
    [File not found: C:\Program Files (x86)\Microsoft Office\Office15\slerror.xml  Unable to display error description.]
    ERROR DESCRIPTION: An unknown error occurred.
    ---------------------------------------
    ---Exiting-----------------------------
    PS C:\Program Files (x86)\Microsoft Office\Office15>

     

    OSPP.VBS代码:

    'Copyright (c) Microsoft Corporation. All rights reserved.
    '
    '
    CONST wshOK                             =0
    CONST VALUE_ICON_WARNING                =16
    CONST wshYesNoDialog                    =4
    CONST VALUE_ICON_QUESTIONMARK           =32
    CONST VALUE_ICON_INFORMATION            =64
    CONST HKEY_LOCAL_MACHINE                =&H80000002
    CONST KEY_SET_VALUE                     =&H0002
    CONST KEY_QUERY_VALUE                   =&H0001
    CONST REG_SZ                            =1
    CONST OfficeAppId                       = "0ff1ce15-a989-479d-af46-f275c6370663"
    CONST STR_SYS32PATH                     = ":\Windows\System32\"
    CONST STR_OSPPREARMPATH                 = "\Microsoft Office\Office15\OSPPREARM.EXE"
    CONST STR_OSPPREARMPATH_DEBUG           = "\Microsoft Office Debug\Office15\OSPPREARM.EXE"
    CONST REG_OSPP                          = "SOFTWARE\Microsoft\OfficeSoftwareProtectionPlatform"
    CONST REG_SPP                           = "SOFTWARE\Microsoft\Windows NT\CurrentVersion\SoftwareProtectionPlatform"
    CONST VER_INFO                          = "Version Info: 2013 1.0 (RTM)"
    '
    CONST MSG_NOREGRIGHTS                   = "Insufficient rights to perform operation."
    CONST MSG_ISCMD_ELEVATED                = "Ensure cmd.exe is elevated (right click > run as administrator)."
    CONST MSG_CREDENTIALFAILURE             = "Connection failed with passed credentials."
    CONST MSG_FILENOTFOUND                  = "File not found: "
    CONST MSG_SEPERATE                      = "---------------------------------------"
    CONST MSG_PROCESSING                    = "---Processing--------------------------"
    CONST MSG_EXIT                          = "---Exiting-----------------------------"
    CONST MSG_UNSUPPORTED                   = "Unsupported command passed."
    CONST MSG_UNSUPPORTEDOPEROS7            = "The following command is supported on Windows 7 only: "
    CONST MSG_UNSUPPORTEDOPEROS8            = "The following command is supported on Windows 8 and above only: "
    CONST MSG_UNSUPPORTEDLOCAL              = "The following command is supported on local machine only: "
    CONST MSG_CREDENTIALERR                 = "Passing credentials is not supported for this command."
    CONST MSG_SUCCESS                       = "Successfully applied setting."
    CONST MSG_NOKMSLICS                     = "No Office KMS licenses were found on the system."
    CONST MSG_ACTATTEMPT                    = "Installed product key detected - attempting to activate the following product:"
    CONST MSG_TOKACTATTEMPT                 = "Installed product key detected - attempting to token activate the following product:"
    CONST MSG_NOKEYSINSTALLED               = "<No installed product keys detected>"
    CONST MSG_UNINSTALLKEYSUCCESS           = "<Product key uninstall successful>"
    CONST MSG_ACTSUCCESS                    = "<Product activation successful>"
    CONST MSG_OFFLINEACTSUCCESS             = "<Offline product activation successful>"
    CONST MSG_KEYINSTALLSUCCESS             = "<Product key installation successful>"
    CONST MSG_PARTIALKEY                    = "Last 5 characters of installed product key: "
    CONST MSG_UNINSTALLKEY                  = "Uninstalling product key for: "
    CONST MSG_UNRECOGFILE                   = "Unrecognized file. Office licenses have an .xrm-ms file extension."
    CONST MSG_INSTALLLICENSE                = "Installing Office license: "
    CONST MSG_INSTALLLICSUCCESS             = "Office license installed successfully."
    CONST MSG_SEARCHEVENTSKMS               = "Searching for KMS activation events on machine: "
    CONST MSG_SEARCHEVENTSRET               = "Searching for Internet activation failure events on machine: "
    CONST MSG_NOEVENTSSKMS                  = "No KMS activation events found on machine: "
    CONST MSG_NOEVENTSRET                   = "No failure events found on machine: "
    CONST MSG_OSPPSVC_NOINSTALL             = "Error: The Software Protection Platform service is not installed."
    CONST MSG_OSPPSVC_NORUN                 = "Error: The Software Protection Platform service is not running."
    CONST MSG_ERRPARTIALKEY                 = "The last 5 characters of an installed product key are required to run this option. Run the /dstatus option to display the partial product key."
    CONST MSG_KEYNOTFOUND                   = "<Product key not found>"
    CONST MSG_CMID                          = "Client Machine ID (CMID): "
    CONST MSG_NOLICENSEFOUND                = "<No licenses found>"
    CONST MSG_AUTHERR                       = "Authorization Error: 0x"
    CONST MSG_REMILID                       = "Removed Token-based Activation License with License ID (ILID): "
    CONST MSG_NOTFOUNDILID                  = "License not found with License ID (ILID): "
    CONST MSG_KMSLOOKUP                     = "KMS Lookup Domain: "
    CONST MSG_INFO_ONLY                     = " (for information purposes only as the status is licensed)"
    '
    CONST MSG_VLActivationType              = "Activation Type Configuration: "
    '
    CONST MSG_Act_Recent                    = "Most recent successful activation client information: "
    CONST MSG_KMS_DNS                       = "KMS machine name from DNS: "
    CONST MSG_KMS_DNS_ERR                   = "DNS auto-discovery: KMS name not available"
    CONST MSG_ADInfoAOName                  = "Activation Object name: "
    CONST MSG_ADInfoAODN                    = "AO DN: "
    CONST MSG_ADInfoExtendedPid             = "AO extended PID: "
    CONST MSG_ADInfoActID                   = "AO activation ID: "
    CONST MSG_ACTIVATION_INTERVAL           = "Activation Interval: "
    CONST MSG_RENEWAL_INTERVAL              = "Renewal Interval: "
    CONST MSG_HOST_CACHING                  = "KMS host caching: "
    CONST MSG_HOST_REG_OVERRIDE             = "KMS machine registry override defined: "
    CONST MSG_DEFAULT_PORT                  = "1688"
    '
    CONST MSG_SKUID                         = "SKU ID: "
    CONST MSG_LICENSENAME                   = "LICENSE NAME: "
    CONST MSG_DESCRIPTION                   = "LICENSE DESCRIPTION: "
    CONST MSG_LICSTATUS                     = "LICENSE STATUS: "
    CONST MSG_LICENSED                      = " ---LICENSED--- "
    CONST MSG_UNLICENSED                    = " ---UNLICENSED--- "
    CONST MSG_OOBGRACE                      = " ---OOB_GRACE--- "
    CONST MSG_OOTGRACE                      = " ---OOT_GRACE--- "
    CONST MSG_NONGENGRACE                   = " ---NON_GENUINE_GRACE--- "
    CONST MSG_NOTIFICATION                  = " ---NOTIFICATIONS--- "
    CONST MSG_EXTENDEDGRACE                 = " ---EXTENDED GRACE--- "
    CONST MSG_LICUNKNOWN                    = " ---UNKNOWN--- "
    CONST MSG_REMAINGRACE                   = "REMAINING GRACE: "
    CONST MSG_LICEXPIRY                     = "BETA EXPIRATION: "
    CONST MSG_ERRCODE                       = "ERROR CODE: "
    CONST MSG_ERRDESC                       = "ERROR DESCRIPTION: "
    CONST MSG_ERRUNKNOWN                    = "An unknown error occurred."
    CONST MSG_ERRCODEVALUE                  = "An error code must start with '0x'. Example: 0xC004F009"
    '
    '
    On Error Resume Next
    
    Set WshShell = WSCript.CreateObject("WSCript.Shell")
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    Set objNetwork = WSCript.CreateObject("WSCript.Network")
    
    Dim globalResource, globalErr, foundSlUi, strSluiPath, strLocal, objWMI, objWMI1, wmiErr, productinstances, strValue, Win7, productClass, tokenClass, intIsKms, kmsCounter, isAdActivated
    globalResource = ""
    globalErr = ""
    foundSlUi = False
    Win7 = False
    kmsCounter = 0
    isAdActivated = False
    
    currentDir = Left(WScript.ScriptFullName, InStrRev(WScript.ScriptFullName, "\"))
    
    Select Case WSCript.Arguments.Count
        Case 0
            verifyFileExists currentDir & "ospp.htm"
            showIePopUp currentDir & "ospp.htm"
            WScript.Quit
        Case 1
            var1 = WSCript.Arguments(0)
        Case 2
            var1 = WSCript.Arguments(0)
            var2 = WSCript.Arguments(1)
        Case 3
            var1 = WSCript.Arguments(0)
            var2 = WSCript.Arguments(1)
            var3 = WSCript.Arguments(2)
        Case 4
            var1 = WSCript.Arguments(0)
            var2 = WSCript.Arguments(1)
            var3 = WSCript.Arguments(2)
            var4 = WSCript.Arguments(3)
        Case Else
    End Select
    '
    '
    Call Main(var1,var2,var3,var4)
    '
    '
    Sub Main(strCommand,strMachine,strUser,strPassword)
    
    On Error Resume Next
    
    getEngine()
    pProcessing()
    getSlui()
    strLocal = objNetwork.ComputerName 
    strCommand = LCase(strCommand)
    
    Select Case strCommand
        Case "/act", "/dstatus", "/dstatusall", "/dinstid", "/dtokils", _
            "/remhst", "/stokflag", "/ctokflag", "/dcmid", "/dtokcerts", "/ckms-domain"
            connectWMI strMachine,strUser,strPassword,""
            performLicAction strCommand,"",""
        Case "/dhistoryacterr", "/dhistorykms"
            connectWMI strMachine,strUser,strPassword,""
            performLicAction strCommand,"",strMachine
        Case "/puserops", "/duserops"
            connectWMI strMachine,strUser,strPassword,"reg"
            performRegAction strCommand
        Case "/osppsvcrestart", "/osppsvcauto"
            connectWMI strMachine,strUser,strPassword,""
            performServiceAction strCommand
        Case "/help", "help", "?", "/?", "/?"
            verifyFileExists currentDir & "ospp.htm"
            showIePopUp currentDir & "ospp.htm"
            quitExit()
        Case "/regmof"
            registerMof "osppwmi.mof"
        Case "/rearm"
            If strMachine = "" Then
                reARM ""
            Else
                globalPopFailure MSG_UNSUPPORTEDLOCAL & vbCr & strCommand,True
            End If
            quitExit()
        Case "/version"
            globalPopSuccess VER_INFO,True
        Case Else
            pos = InStr(strCommand,":")
            
            Select Case pos
                Case 7
                    getCommand = Left(strCommand,6)
                Case 8
                    getCommand = Left(strCommand,7)
                Case 13
                    getCommand = Left(strCommand,12)
                Case Else
                    globalPopFailure MSG_UNSUPPORTED,True
            End Select
            
            Select Case getCommand    
                Case "/skms-domain", "/actype", "/inpkey", "/unpkey", "/inslic", "/actcid", "/sethst", "/setprt", "/ddescr", "/rtokil", "/tokact", "/cachst", "/rearm"
                    strValue = Replace(strCommand,getCommand & ":","")
                    If strValue = "" Then
                        globalPopFailure MSG_UNSUPPORTED & " A value is required for: " & strCommand,True
                    End If
                    
                    If getCommand = "/ddescr" Then
                        If Left(strValue,2) = "0x" Then
                            getDescription strValue,""
                        Else
                            WScript.Echo MSG_ERRCODEVALUE
                            quitExit()
                        End If
                    ElseIf getCommand = "/rearm" Then
                        If strMachine = "" Then
                            reARM strValue
                    Else
                        globalPopFailure MSG_UNSUPPORTEDLOCAL & vbCr & strCommand,True
                    End If
                    quitExit()
                    Else
                        connectWMI strMachine,strUser,strPassword,""
                        performLicAction getCommand,strValue,""
                    End If
                Case Else
                    globalPopFailure MSG_UNSUPPORTED,True
            End Select
    End Select
    
    End Sub
    '
    '
    Function showIePopUp(strPath)
    
    On Error Resume Next
    
    Set objExplorer = CreateObject("InternetExplorer.Application")
        With objExplorer
                .Navigate strPath
                .ToolBar = 0
                .StatusBar = 0
                .Width = 1000
                .Height = 593 
                .Left = 1
                .Top = 1
                .Visible = 1
        End With
            
    End Function
    '
    '
    Function getEngine()
    
    strEngine = LCase(Right(WScript.FullName,12))
    If strEngine <> "\cscript.exe" Then
        WshShell.Popup "Unable to perform operation. " & WSCript.ScriptName & " requires the cscript engine." & _
         vbCr & "Command line example: cscript ospp.vbs ?", _
        ,WSCript.ScriptName, VALUE_ICON_WARNING
        WScript.Quit
    End If
    
    End Function
    '
    '
    Function WMIDateStringToDate(dtmEventDate)
    
    WMIDateStringToDate = CDate(Mid(dtmEventDate, 5, 2) & "/" & _
    Mid(dtmEventDate, 7, 2) & "/" & Left(dtmEventDate, 4) _
    & " " & Mid (dtmEventDate, 9, 2) & ":" & _
    Mid(dtmEventDate, 11, 2) & ":" & Mid(dtmEventDate, _
    13, 2))
    
    End Function
    '
    '
    Function getDescription(strSearch,cType)
    
    If foundSlUi <> True Then
        If cType <> "wmi" Then
            globalPopFailure "slui.exe not found.",True
            quitExit()
        End If
    Else
        Set objScriptExec = WshShell.Exec (strSluiPath & " 0x2a " & strSearch)
        readOut = objScriptExec.StdOut.ReadAll
        quitExit()
    End If
    
    End Function
    '
    '
    Function checkRegRights(wmiObject,strKeyPath)
    
    On Error Resume next
    
    wmiObject.CheckAccess HKEY_LOCAL_MACHINE, strKeyPath, KEY_SET_VALUE, _
        bHasAccessRight
    
    If bHasAccessRight = True Then
        'Success
    Else
        globalPopFailure MSG_NOREGRIGHTS & vbCr & MSG_ISCMD_ELEVATED,True
    End If   
    
    End Function
    '
    '
    Function quitExit()
    
    Set WshShell = Nothing
    Set objFSO = Nothing
    Set objNetwork = Nothing
    Set objWMI = Nothing
    
    WScript.Echo MSG_SEPERATE
    WScript.Echo MSG_EXIT
    WSCript.Quit
    
    End Function
    '
    '
    Function verifyFileExists(file)
    
    If Not objFSO.FileExists(file) Then
        If file = currentDir & "slerror.xml" Then
            WScript.Echo "[" & MSG_FILENOTFOUND & file &  "  Unable to display error description.]"
        ElseIf file = currentDir & "ospp.htm" Then
            globalPopFailure MSG_FILENOTFOUND & vbCr & file,False
            quitExit()
        Else
            globalPopFailure MSG_FILENOTFOUND & vbCr & file,True
        End If
    End If
    
    End Function
    '
    '
    Function registerMof(strFile)
    
    For Each Drv In objFSO.Drives
        If Drv.DriveType=2 Then
            If objFSO.FileExists(Drv.DriveLetter & STR_SYS32PATH & "wbem\mofcomp.exe") Then
                foundComp = True
                strMofExePath = Drv.DriveLetter & STR_SYS32PATH & "wbem\mofcomp.exe"
                If objFSO.FileExists(Drv.DriveLetter & STR_SYS32PATH & "wbem\" & strFile) Then
                    foundMof = True
                    strOWmi = Drv.DriveLetter & STR_SYS32PATH & "wbem\" & strFile
                    Set objScriptExec = WshShell.Exec (strMofExePath & " " & strOWmi)
                    readOut = objScriptExec.StdOut.ReadAll
                    WScript.Echo readOut
                    quitExit()
                End If
            End If
        End If
    Next
    
    If foundComp <> True Then
        globalPopFailure MSG_FILENOTFOUND & Replace(STR_SYS32PATH,":","") & "wbem\mofcomp.exe",True
    Else
        If foundMof <> True Then
            globalPopFailure MSG_FILENOTFOUND & Replace(STR_SYS32PATH,":","") & "wbem\osppwmi.mof",True
        End If
    End If
    
    End Function
    '
    '
    Function pProcessing()
    
    WScript.Echo MSG_PROCESSING
    WScript.Echo MSG_SEPERATE
        
    End Function
    '
    '
    Function getSlui()
    
    For Each Drv In objFSO.Drives
        If Drv.DriveType=2 Then
            If objFSO.FileExists(Drv.DriveLetter & STR_SYS32PATH & "slui.exe") Then
                strSluiPath = Drv.DriveLetter & STR_SYS32PATH & "slui.exe"
                foundSlUi = True
                Exit For
            End If
        End If
    Next
    
    End Function
    '
    '
    ' Returns the encoding for a givven file.
    ' Possible return values: ascii, unicode, unicodeFFFE (big-endian), utf-8
    Function GetFileEncoding(strFileName)
        Dim strData
        Dim strEncoding
    
        Set oStream = CreateObject("ADODB.Stream")
    
        oStream.Type = 1 'adTypeBinary
        oStream.Open
        oStream.LoadFromFile(strFileName)
    
        ' Default encoding is ascii
        strEncoding =  "ascii"
    
        strData = BinaryToString(oStream.Read(2))
    
        ' Check for little endian (x86) unicode preamble
        If (Len(strData) = 2) and strData = (Chr(255) + Chr(254)) Then
            strEncoding = "unicode"
        Else
            oStream.Position = 0
            strData = BinaryToString(oStream.Read(3))
    
            ' Check for utf-8 preamble
            If (Len(strData) >= 3) and strData = (Chr(239) + Chr(187) + Chr(191)) Then
                strEncoding = "utf-8"
            End If
        End If
    
        oStream.Close
    
        GetFileEncoding = strEncoding
        
    End Function
    '
    '
    ' Converts binary data (VT_UI1 | VT_ARRAY) to a string (BSTR)
    Function BinaryToString(dataBinary)  
        Dim i
        Dim str
    
        For i = 1 To LenB(dataBinary)
            str = str & Chr(AscB(MidB(dataBinary, i, 1)))
        Next
    
        BinaryToString = str
        
    End Function
    '
    '
    ' Returns string containing the whole text file data. 
    ' Supports ascii, unicode (little-endian) and utf-8 encoding.
    Function ReadAllTextFile(strFileName)
        Dim strData
        Set oStream = CreateObject("ADODB.Stream")
    
        oStream.Type = 2 'adTypeText
        oStream.Open
        oStream.Charset = GetFileEncoding(strFileName)
        oStream.LoadFromFile(strFileName)
    
        strData = oStream.ReadText(-1) 'adReadAll
    
        oStream.Close
    
        ReadAllTextFile = strData
        
    End Function
    '
    '
    Function sppErrHandle(strCommand)
    
    globalErr = Hex(Err.Number)
    
    Select Case Err.Number
        Case 0
            'Success
            Select Case strCommand
                Case "/act","/tokact"
                    WScript.Echo MSG_ACTSUCCESS
                Case "/inpkey"
                    WScript.Echo MSG_KEYINSTALLSUCCESS
                    quitExit()
                Case "/inslic"
                    WScript.Echo MSG_INSTALLLICSUCCESS
                    quitExit()
                Case "/ckms-domain","/skms-domain","/actype","/sethst","/setprt","/remhst","/stokflag","/ctokflag","/cachst"
                    WScript.Echo MSG_SUCCESS
                    quitExit()
                Case "/rtokil"
                    WScript.Echo MSG_REMILID & UCase(strValue)
                    quitExit()
                Case "/unpkey"
                    WScript.Echo MSG_UNINSTALLKEYSUCCESS
                    quitExit()
                Case Else
            End Select
        Case Else
            verifyFileExists currentDir & "slerror.xml"
            getResource("err" & "0x" & globalErr)
            If globalResource = "" Then
                If Len(globalErr) <> "8" Then
                    WScript.Echo MSG_ERRDESC & MSG_ERRUNKNOWN
                Else
                    If foundSlUi = True Then
                        WScript.Echo MSG_ERRCODE & "0x" & globalErr
                        WScript.Echo MSG_ERRDESC & "Run the following: cscript ospp.vbs /ddescr:0x" & globalErr
                    Else
                        WScript.Echo MSG_ERRCODE & "0x" & globalErr 
                    End If
                End If
                If strCommand <> "/act" Then
                    quitExit()
                End If
            Else
                WScript.Echo MSG_ERRCODE & "0x" & globalErr 
                Wscript.Echo MSG_ERRDESC & globalResource
            End If
            
            If strCommand = "/dtokcerts" Or strCommand = "/ignore" Then
                quitExit()
            End If
    End Select
    
    If globalErr = "C004F074" Then
        WScript.Echo "To view the activation event history run: cscript " & WScript.ScriptName & " /dhistorykms"
    End If
    
    globalResource = ""
    globalErr = ""
    Err.Clear
    
    End Function
    '
    '
    Function wmiErrHandle()
    
    Select Case Err.Number
        Case 0
            'Successs
        Case 424
            globalPopFailure MSG_ERRCODE & Err.Number & vbCr & MSG_ERRDESC & MSG_CREDENTIALFAILURE,True            
        Case Else
            If Err.Description <> "" Then
                globalPopFailure MSG_ERRCODE & Err.Number & vbCr & MSG_ERRDESC & Err.Description,True
            Else
                globalPopFailure "An error occurred while making the connection." & vbCr & MSG_ERRCODE & Err.Number,True
            End If
    End Select
    
    End Function
    '
    '
    Function setRegValue(wmiObject,opsValue,strValueName)
    
    On Error Resume Next
    
    Err.Clear()
    If Win7 = True Then
        strKeyPath = REG_OSPP
    Else
        strKeyPath = REG_SPP
    End If
    
    Select Case strValueName
        Case "UserOperations"
            wmiObject.CreateKey HKEY_LOCAL_MACHINE,strKeyPath
            wmiObject.SetDWORDValue HKEY_LOCAL_MACHINE,_
                strKeyPath,strValueName,opsValue
        Case Else
    End Select
    
    wmiErrHandle()
    WScript.Echo MSG_SUCCESS
    quitExit()
    
    End Function
    '
    '
    Function getResource(resource)
    
    On Error Resume Next
    Set xmlDoc = CreateObject("Msxml2.DOMDocument.6.0") 
    xmlDoc.load(currentDir & "slerror.xml")  
    Set ElemList = xmlDoc.getElementsByTagName(resource) 
    resValue = ElemList.item(0).text
    globalResource = resValue 
    
    End Function
    '
    '
    Function globalPopSuccess(strSuccess,boolQuit)
    
    If boolQuit = True Then
        WshShell.Popup strSuccess,,WScript.ScriptName, wshOK + VALUE_ICON_INFORMATION
        quitExit()
    Else
        WshShell.Popup strSuccess,,WScript.ScriptName, wshOK + VALUE_ICON_INFORMATION
    End If
    
    End Function
    '
    '
    Function globalPopFailure(strFailure,boolQuit)
    
    If boolQuit = True Then
        WshShell.Popup strFailure,,WScript.ScriptName, wshOK + VALUE_ICON_WARNING
        quitExit()
    Else
        WshShell.Popup strFailure,,WScript.ScriptName, wshOK + VALUE_ICON_WARNING
    End If
    
    End Function
    '
    '
    Function connectWMI(strMachine,strUser,strPassword,ctype)
    
    On Error Resume Next
    
    If ctype = "" Then
        If strMachine = "" Or LCase(strMachine) = LCase(strLocal) Then
            Set objWMI = GetObject("winmgmts:" _
                    & "{impersonationLevel=impersonate}!\\" & "." & "\root\cimv2")
        Else
            If strUser = "" And strPassword = "" Then
                Set objWMI = GetObject("winmgmts:" _
                    & "{impersonationLevel=impersonate}!\\" & strMachine & "\root\cimv2")
            Else
                Set objSWbemLocator = CreateObject("WbemScripting.SWbemLocator")
                Set objWMI = objSWbemLocator.ConnectServer _
                    (strMachine, "\root\cimv2", strUser, strPassword)
                wmiErr = CStr(Hex(Err.Number))
                If Len(wmiErr) = "8" Then
                    getDescription "0x" & wmiErr,"wmi"
                End If
                objWMI.Security_.ImpersonationLevel = 3
            End If
        End If
    Else
        If strUser <> "" Then
            globalPopFailure MSG_CREDENTIALERR,True
        End If
    
        If strMachine = "" Or LCase(strMachine) = LCase(strLocal) Then
            Set objWMI1 = GetObject("winmgmts:" _
                & "{impersonationLevel=impersonate}!\\" & "." & "\root\default:StdRegProv")
                
            Set objWMI = GetObject("winmgmts:" _
                    & "{impersonationLevel=impersonate}!\\" & "." & "\root\cimv2")
        Else
            Set objWMI1 = GetObject("winmgmts:" _
                & "{impersonationLevel=impersonate}!\\" & strMachine & "\root\default:StdRegProv")
                
            Set objWMI = GetObject("winmgmts:" _
                    & "{impersonationLevel=impersonate}!\\" & strMachine & "\root\cimv2")
        End If
    End If
    
    wmiErrHandle()
    isWin7OS()
    
    End Function
    '
    '
    Private Function TkaGetSigner()
    
    On Error Resume Next
    
        If Win7 = True Then 
            Set TkaGetSigner = WScript.CreateObject("OSPPWMI.OSppWmiTokenActivationSigner")
        Else
            Set TkaGetSigner = WScript.CreateObject("SPPWMI.SppWmiTokenActivationSigner")
        End If
        
        If Hex(Err.Number) = "80020009" Then
            globalPopFailure MSG_ERRCODE & "0x" & Hex(Err.Number) & vbCr & MSG_ERRDESC & Err.Description,True
        End If
    
    End Function
    '
    '
    Function TkaPrintCertificate(strThumbprint)
    
        arrParams = Split(strThumbprint, "|")
        WScript.Echo "Thumbprint: " & arrParams(0)
        WScript.Echo "Subject: " & arrParams(1)
        WScript.Echo "Issuer: " & arrParams(2)
        vf = FormatDateTime(CDate(arrParams(3)), vbShortDate)
        WScript.Echo "Valid From: " & vf
        vt = FormatDateTime(CDate(arrParams(4)), vbShortDate)
        WScript.Echo "Valid To: " & vt
        WScript.Echo MSG_SEPERATE
        
    End Function
    '
    '
    Function ExecuteQuery(strSelect,strWhere,strClass)
        
    Err.Clear
        
    If strWhere = "" Then
        Set productinstances = objWMI.ExecQuery("SELECT " & strSelect & " FROM " & strClass)
    Else
        Set productinstances = objWMI.ExecQuery("SELECT " & strSelect & " FROM " & strClass & " WHERE " & strWhere)
    End If
        
    sppErrHandle ""
    
    End Function
    '
    '
    Function performLicAction(strCommand,strValue,strMachine)
    
    On Error Resume Next
    
    If strCommand = "/dhistorykms" Or strCommand = "/dhistoryacterr" Then
        verifyFileExists currentDir & "slerror.xml"
        If strCommand = "/dhistorykms" Then
            '12288 = KMS Activation event id
            eventCode = "12288"
            strSrcEvents = MSG_SEARCHEVENTSKMS
            strNoEvents = MSG_NOEVENTSSKMS
        Else
            '8200 = Internet Activation event id
            eventCode = "8200"
            strSrcEvents = MSG_SEARCHEVENTSRET
            strNoEvents = MSG_NOEVENTSRET
        End If
        
        If strMachine <> "" Then
            WScript.Echo strSrcEvents & strMachine
        Else
            WScript.Echo strSrcEvents & strLocal
        End If
        
        WScript.Echo "Event ID: " & eventCode
        WScript.Echo vbCr
        Set objEvents = objWMI.ExecQuery _
            ("Select * from Win32_NTLogEvent Where Logfile = 'Application' and " _
            & "EventCode = '" & eventCode & "'")
            If objEvents.Count > 0 Then
                For each objEvent in objEvents
                    If strCommand = "/dhistoryacterr" Then
                        i = i + 1
                        dtmEventDate = objEvent.TimeWritten
                        strTimeWritten = WMIDateStringToDate(dtmEventDate)
                        WScript.Echo "Coordinated Universal Time Written: " & strTimeWritten
                        strReplCrs = Replace(objEvent.Message,vbCrLf,"")
                        WScript.Echo "MESSAGE: " & strReplCrs
                        strhr10 = Right(strReplCrs,10)
                        getResource("err" & strhr10)
                        If globalResource = "" Then
                            If foundSlUi = True Then
                                WScript.Echo MSG_ERRDESC & "Run the following: cscript ospp.vbs /ddescr:" & strhr10
                            Else
                                WScript.Echo MSG_ERRDESC & "Not available."
                            End If
                        Else
                            Wscript.Echo MSG_ERRDESC & globalResource
                        End If
                        WScript.Echo MSG_SEPERATE        
                    Else
                        strhr10 = Mid(objEvent.Message,90,10)
                        strReplCrs = Replace(objEvent.Message,vbCrLf,"")
                        If Right(strReplCrs,2) = " 5" Then
                            strReplStrs = Replace(strReplCrs,"The client has sent an activation request to the key management service machine.Info:","")
                            dtmEventDate = objEvent.TimeWritten
                            strTimeWritten = WMIDateStringToDate(dtmEventDate)
                            WScript.Echo "Coordinated Universal Time Written: " & strTimeWritten
                            intColon = InStr(strReplStrs,":")
                            strErrHost = Left(strReplStrs,intColon)
                            strErrHost = Trim(strErrHost)
                            strErrHost = Replace(strErrHost,":","")
                            WScript.Echo "ERROR/HOST: " & strErrHost
                            Select Case strhr10
                                Case "0x00000000"
                                    WScript.Echo MSG_ERRDESC & "N/A"
                                Case Else
                                    getResource("err" & strhr10)
                                    If globalResource = "" Then
                                        If foundSlUi = True Then
                                            WScript.Echo MSG_ERRDESC & "Run the following: cscript ospp.vbs /ddescr:" & strhr10
                                        Else
                                            WScript.Echo MSG_ERRDESC & "Not available."
                                        End If
                                    Else
                                        Wscript.Echo MSG_ERRDESC & globalResource
                                    End If
                            End Select
                            WScript.Echo MSG_SEPERATE
                        End If
                    End If
                Next
            Else
                WScript.Echo MSG_SEPERATE
                If strMachine <> "" Then
                    WScript.Echo strNoEvents & strMachine
                Else
                    WScript.Echo strNoEvents & strLocal
                End If
                WScript.Echo MSG_SEPERATE
            End If
            quitExit()
    End If
    
    'Verify osppsvc service is installed for win7 case
    If Win7 = True Then
        Set colListOfServices = objWMI.ExecQuery _
            ("Select * from Win32_Service ")
        For Each objService in colListOfServices
            If objService.Name = "osppsvc" Then
                installed = True
                Exit For
            End If
        Next
            
        If installed <> True Then
            globalPopFailure MSG_OSPPSVC_NOINSTALL,True
        End If
    End If
            
    Select Case strCommand
        'The following operations are performed @ a service level
        Case "/inpkey", "/dcmid", "/inslic", "/cachst", "/stokflag", "/ctokflag", "/dstatus", "/dstatusall" 
            If Win7 = True Then
                For Each objService in objWMI.InstancesOf("OfficeSoftwareProtectionService")
                    Set objOspp = objService
                    Exit For
                Next
            Else
                'Win8 and beyond
                For Each objService in objWMI.InstancesOf("SoftwareLicensingService")
                    Set objOspp = objService
                    Exit For
                Next
            End If
        Case Else
    End Select
    
    sppErrHandle ""
    
    If strCommand = "/inpkey" Then
        i = i + 1
        Err.Clear
        objOspp.InstallProductKey(strValue)
        sppErrHandle(strCommand)
    ElseIf strCommand = "/cachst" Then
        i = i + 1
        If strValue = "true" Then
            objOspp.DisableKeyManagementServiceHostCaching(False)
            sppErrHandle(strCommand)
        ElseIf strValue = "false" Then
            objOspp.DisableKeyManagementServiceHostCaching(True)
            sppErrHandle(strCommand) 
        Else
            globalPopFailure MSG_UNSUPPORTED & " A TRUE or FALSE value is required for: " & strCommand,True
        End If
    ElseIf strCommand = "/dcmid" Then
        If objOspp.ClientMachineID <> "" Or objOspp.ClientMachineID <> Null Then
            WScript.Echo MSG_CMID & objOspp.ClientMachineID
        Else
            WScript.Echo MSG_CMID & "Not found."
        End If
        quitExit()
    ElseIf strCommand = "/inslic" Then
        i = i + 1
        If Right(strValue,7) = ".xrm-ms" Then
            verifyFileExists strValue
            WScript.Echo MSG_INSTALLLICENSE & strValue
        Else
            globalPopFailure MSG_UNRECOGFILE,True
        End If
        LicenseData = ReadAllTextFile(strValue)
        objOSpp.InstallLicense(LicenseData)
        SppErrHandle(strCommand)
    ElseIf strCommand = "/stokflag" Then
        i = i + 1
        If Win7 = True Then
            objOspp.DisableKeyManagementServiceActivation(True)
            sppErrHandle(strCommand)
        Else
            'Unsupported - osppsvc only supports this.
            globalPopFailure MSG_UNSUPPORTEDOPEROS7 & vbCr & strCommand,True
        End If
    ElseIf strCommand = "/ctokflag" Then
        i = i + 1
        If Win7 = True Then
            objOspp.DisableKeyManagementServiceActivation(False)
            SppErrHandle(strCommand)
        Else
            'Unsupported - osppsvc only supports this.
            globalPopFailure MSG_UNSUPPORTEDOPEROS7 & vbCr & strCommand,True
        End If
    ElseIf strCommand = "/dtokils" Then
        Err.Clear
        Set objWmiDate = CreateObject("WBemScripting.SWbemDateTime")
        ExecuteQuery "ILID, ILVID, AuthorizationStatus, ExpirationDate, Description, AdditionalInfo","",tokenClass
        
        For Each instance in productinstances
            sppErrHandle ""
            i = i + 1
            WScript.Echo "License ID (ILID): " & instance.ILID
            WScript.Echo "Version ID (ILvID): " & instance.ILVID
            If Not IsNull(instance.ExpirationDate) Then
                objWmiDate.Value = instance.ExpirationDate
                If (objWmiDate.GetFileTime(false) <> 0) Then
                    WScript.Echo "Expiry Date: " & objWmiDate.GetVarDate
                End If
            End If
            If Not IsNull(instance.AdditionalInfo) Then
                WScript.Echo "Additional Info: " & instance.AdditionalInfo
            End If
            If Not IsNull(instance.AuthorizationStatus) And instance.AuthorizationStatus <> 0 Then
                globalErr = CStr(Hex(instance.AuthorizationStatus))
                WScript.Echo MSG_AUTHERR & globalErr
                quitExit()
            Else            
                WScript.Echo "Description: " & instance.Description
            End If
            WScript.Echo MSG_SEPERATE
        Next
        If i = 0 Then
            WScript.Echo MSG_NOLICENSEFOUND
        End If
        quitExit()
    ElseIf strCommand = "/rtokil" Then
        Err.Clear    
        ExecuteQuery "ILID, ID","",tokenClass
        
        For Each instance in productinstances
            sppErrHandle ""
            i = i + 1
            If LCase(strValue) = LCase(instance.ILID) Then
                instance.Uninstall
                SppErrHandle(strCommand)
            Else
                WScript.Echo MSG_NOTFOUNDILID & strValue & " Run /dtokils to display the ILID for installed licenses."
            End If
        Next
        If i = 0 Then
            WScript.Echo MSG_NOLICENSEFOUND
        End If
        quitExit()
    ElseIf strCommand = "/dtokcerts" Then
        Err.Clear
        Set objSigner = TkaGetSigner()
        sppErrHandle(strCommand)
        ExecuteQuery "ID, Name, ApplicationId, PartialProductKey, Description, LicenseIsAddon ","ApplicationId = '" & OfficeAppId & "' " & "AND PartialProductKey <> NULL " & "AND LicenseIsAddon = FALSE",productClass
        
        For each instance in productinstances
            i = i + 1
            sppErrHandle ""
            iRet = instance.GetTokenActivationGrants(arrGrants)
            If Err.Number = 0 Then
                arrThumbprints = objSigner.GetCertificateThumbprints(arrGrants)
                If Err.Number = 0 Then
                    For Each strThumbprint in arrThumbprints
                        TkaPrintCertificate strThumbprint
                    Next
                Else
                    sppErrHandle ""
                End If
            Else
                sppErrHandle ""
            End If
            WScript.Echo MSG_SEPERATE
            Err.Clear
        Next
    ElseIf strCommand = "/tokact" Then
        Err.Clear
        Set objSigner = TkaGetSigner()
        sppErrHandle "/ignore"
        pos1 = InStr(strValue,":")
        If pos1 = 0 Then
            'PIN not passed
            strThumbprint = strValue
        Else
            'PIN passed
            strThumbprint = Left(strValue,pos1 - 1)
            strPin = Replace(strValue,strThumbprint & ":","")
        End If
        
        ExecuteQuery "ID, Name, ApplicationId, PartialProductKey, Description, LicenseIsAddon ","ApplicationId = '" & OfficeAppId & "' " & "AND PartialProductKey <> NULL " & "AND LicenseIsAddon = FALSE",productClass
        
        For each instance in productinstances
            i = i + 1
            sppErrHandle ""        
            WScript.Echo MSG_TOKACTATTEMPT 
            WScript.Echo MSG_SKUID & instance.ID
            WScript.Echo MSG_LICENSENAME & instance.Name
            WScript.Echo MSG_DESCRIPTION & instance.Description
            WScript.Echo MSG_PARTIALKEY & instance.PartialProductKey
            iRet = instance.GenerateTokenActivationChallenge(strChallenge)
            If Err.Number = 0 Then
                strAuthInfo1 = objSigner.Sign(strChallenge, strThumbprint, strPin, strAuthInfo2)
                If Err.Number = 0 Then
                    iRet = instance.DepositTokenActivationResponse(strChallenge, strAuthInfo1, strAuthInfo2)
                    SppErrHandle(strCommand)
                Else
                    sppErrHandle ""
                End If
            Else
                sppErrHandle ""
            End If
            WScript.Echo MSG_SEPERATE
        Next
    Else
        Err.Clear
        If strCommand = "/dstatus" Or strCommand = "/dstatusall" Then
            If Win7 = True Then
                ExecuteQuery "ID, ApplicationId, EvaluationEndDate, PartialProductKey, Description, Name, LicenseStatus, LicenseStatusReason, ProductKeyID, GracePeriodRemaining, DiscoveredKeyManagementServiceMachineName, DiscoveredKeyManagementServiceMachinePort, VLActivationInterval, VLRenewalInterval, KeyManagementServiceMachine, KeyManagementServicePort","ApplicationId = '" & OfficeAppId & "' ",productClass
            Else
                ExecuteQuery "ID, ApplicationId, EvaluationEndDate, PartialProductKey, Description, Name, LicenseStatus, LicenseStatusReason, ProductKeyID, GracePeriodRemaining, KeyManagementServiceLookupDomain, VLActivationType, ADActivationObjectName, ADActivationObjectDN, ADActivationCsvlkPid, ADActivationCsvlkSkuId, VLActivationTypeEnabled, DiscoveredKeyManagementServiceMachineName, DiscoveredKeyManagementServiceMachinePort, VLActivationInterval, VLRenewalInterval, KeyManagementServiceMachine, KeyManagementServicePort","ApplicationId = '" & OfficeAppId & "' ",productClass    
            End If
        ElseIf strCommand = "/act" Then
            ExecuteQuery "ID, ApplicationId, PartialProductKey, Description, Name","ApplicationId = '" & OfficeAppId & "' " & "AND PartialProductKey <> NULL ",productClass
        ElseIf strCommand = "/unpkey" Then
            ExecuteQuery "ID, ApplicationId, Description, PartialProductKey, Name, ProductKeyID","ApplicationId = '" & OfficeAppId & "' " & "AND PartialProductKey <> NULL ",productClass
            
        ElseIf strCommand = "/dinstid" Or strCommand = "/actcid" Then
            ExecuteQuery "ID, ApplicationId, Description, PartialProductKey, Name, OfflineInstallationId","ApplicationId = '" & OfficeAppId & "' " & "AND PartialProductKey <> NULL ",productClass
        ElseIf strCommand = "/actype" Or strCommand = "/skms-domain" Or strCommand = "/ckms-domain" Then
            If Win7 = True Then
                 'Unsupported - sppsvc only supports this.
                globalPopFailure MSG_UNSUPPORTEDOPEROS8 & vbCr & strCommand,True
            Else
                ExecuteQuery "ID, Description, PartialProductKey, ApplicationId ","ApplicationId = '" & OfficeAppId & "' ",productClass
            End If
        ElseIf strCommand = "/sethst" Or strCommand = "/setprt" Or strCommand = "/remhst" Then
            ExecuteQuery "ID, Description, PartialProductKey, ApplicationId ","ApplicationId = '" & OfficeAppId & "' ",productClass
        End If
                
        For Each instance in productinstances
            sppErrHandle ""
            If (LCase(instance.ApplicationId) = OfficeAppId) Then
                If instance.PartialProductKey <> "" Then
                    i = i + 1
                End If
                intIsKms = InStr(UCase(instance.Description),"KMS")
                If intIsKms <> 0 Then
                    kmsCounter = kmsCounter + 1
                End If
                Select Case strCommand
                    Case "/actype"
                        Select Case strValue
                            Case "0","1","2","3"
                            Case Else
                                globalPopFailure MSG_UNSUPPORTED & " A value of" & vbCr &  _
                                "0  (for all)" & vbCr & "1  (for AD)" & vbCr & "2  (for KMS" & vbCr & _
                                "3  (for Token)" & vbCr & "Is required for: " & strCommand,True
                        End Select
                        If intIsKms <> 0 Then
                            If strValue <> 0 Then                    
                                instance.SetVLActivationTypeEnabled(strValue)
                            Else
                                instance.ClearVLActivationTypeEnabled()
                            End If
                        End If
                        sppErrHandle ""
                    Case "/skms-domain"
                        If intIsKms <> 0 Then
                            instance.SetKeyManagementServiceLookupDomain(strValue)
                        End If
                        sppErrHandle ""
                    Case "/ckms-domain"
                        If intIsKms <> 0 Then
                            instance.ClearKeyManagementServiceLookupDomain()
                        End If
                        sppErrHandle ""
                    Case "/sethst"
                        If intIsKms <> 0 Then
                            instance.SetKeyManagementServiceMachine(strValue)
                        End If
                        sppErrHandle ""
                    Case "/setprt"
                        If intIsKms <> 0 Then
                            instance.SetKeyManagementServicePort(strValue)
                        End If
                        sppErrHandle ""
                    Case "/remhst"
                        If intIsKms <> 0 Then
                            instance.ClearKeyManagementServiceMachine()
                            sppErrHandle ""
                            instance.ClearKeyManagementServicePort()
                            sppErrHandle ""
                        End If
                    Case "/act"
                        WScript.Echo MSG_ACTATTEMPT 
                        WScript.Echo MSG_SKUID & instance.ID
                        WScript.Echo MSG_LICENSENAME & instance.Name
                        WScript.Echo MSG_DESCRIPTION & instance.Description
                        WScript.Echo MSG_PARTIALKEY & instance.PartialProductKey            
                        instance.Activate
                        SppErrHandle(strCommand)
                        WScript.Echo MSG_SEPERATE
                    Case "/unpkey"
                        If Len(strValue) <> "5" Then
                            globalPopFailure MSG_ERRPARTIALKEY,True
                        End If
                        If UCase(strValue) = instance.PartialProductKey Then
                            y = y + 1
                            WScript.Echo MSG_UNINSTALLKEY & instance.Name
                            instance.UninstallProductKey(instance.ProductKeyID)                            
                            SppErrHandle(strCommand)
                        End If
                    Case "/dinstid"
                        WScript.Echo "Installation ID for: " & instance.Name & ": " & instance.OfflineInstallationId
                        WScript.Echo MSG_SEPERATE
                    Case "/actcid"
                        instance.DepositOfflineConfirmationId instance.OfflineInstallationId, strValue
                        If Err.Number = 0 Then
                            If telsuccess <> True Then
                                WScript.Echo MSG_LICENSENAME & instance.Name
                                WScript.Echo MSG_OFFLINEACTSUCCESS
                                telsuccess = True
                            End If
                        Else
                            WScript.Echo MSG_LICENSENAME & instance.Name
                            sppErrHandle ""
                        End If
                        WScript.Echo MSG_SEPERATE
                    Case "/dstatus", "/dstatusall"
                        getInstalled = False
                        verifyFileExists currentDir & "slerror.xml"
                        licSr = Hex(instance.LicenseStatusReason)
                        If strCommand = "/dstatusall" Then
                            getInstalled = True
                            WScript.Echo MSG_SKUID & instance.ID
                            WScript.Echo MSG_LICENSENAME & instance.Name
                            WScript.Echo MSG_DESCRIPTION & instance.Description            
                        Else
                            If instance.ProductKeyID <> "" Then
                                getInstalled = True
                                                                                        
                                WScript.Echo MSG_SKUID & instance.ID
                                WScript.Echo MSG_LICENSENAME & instance.Name
                                WScript.Echo MSG_DESCRIPTION & instance.Description
                                'EvaluationEndDate always returns a value. When an expiry date is not defined "1/1/1601" is returned.
                                'So avoid displaying this against RTM licenses as that date = no expiry defined.
                                If instance.EvaluationEndDate <> "" Then
                                    Set objDate = CreateObject("WBemScripting.SWbemDateTime")
                                    objDate.Value = instance.EvaluationEndDate
                                    If objDate.GetVarDate() <> "1/1/1601" Then
                                        WScript.Echo MSG_LICEXPIRY & objDate.GetVarDate()
                                    End If
                                    Set objDate = Nothing
                                End If
                             End If
                        End If
                        
                        If getInstalled = True Then
                            Select Case instance.LicenseStatus
                                Case 0
                                    WScript.Echo MSG_LICSTATUS & MSG_UNLICENSED
                                Case 1
                                    WScript.Echo MSG_LICSTATUS & MSG_LICENSED
                                Case 2
                                    WScript.Echo MSG_LICSTATUS & MSG_OOBGRACE        
                                Case 3
                                    WScript.Echo MSG_LICSTATUS & MSG_OOTGRACE
                                Case 4
                                    WScript.Echo MSG_LICSTATUS & MSG_NONGENGRACE
                                Case 5
                                    WScript.Echo MSG_LICSTATUS & MSG_NOTIFICATION
                                Case 6
                                    WScript.Echo MSG_LICSTATUS & MSG_EXTENDEDGRACE    
                                Case Else
                                    WScript.Echo MSG_LICSTATUS & MSG_LICUNKNOWN
                            End Select
                                
                            If licSr <> "0" Then
                                If instance.LicenseStatus <> 1 Then
                                    WScript.Echo MSG_ERRCODE & "0x" & licSr
                                Else
                                    WScript.Echo MSG_ERRCODE & "0x" & licSr & MSG_INFO_ONLY
                                End If
                                getResource("err" & "0x" & licSr)
                                If globalResource = "" Then
                                    If foundSlUi <> True Then
                                        WScript.Echo MSG_ERRDESC & "Not available."
                                    Else
                                        WScript.Echo MSG_ERRDESC & "Run the following: cscript ospp.vbs /ddescr:0x" & licSr
                                    End if
                                Else
                                    WScript.Echo MSG_ERRDESC & globalResource
                                End If
                            End If
                            
                            If instance.GracePeriodRemaining <> 0 Then
                                dGrace = instance.GracePeriodRemaining / 60 / 24
                                rndDown = Int(dGrace)
                                WScript.Echo MSG_REMAINGRACE & rndDown & " days " & " (" & instance.GracePeriodRemaining & " minute(s) before expiring" & ")"
                            End If
                                
                            If instance.PartialProductKey <> "" Then
                                WScript.Echo MSG_PARTIALKEY & instance.PartialProductKey
                                'Display additional volume info for KMS licenses
                                If intIsKms <> 0 Then
                                    'Display activation type set (Win8+).
                                    If Win7 <> True Then
                                        Select Case instance.VLActivationTypeEnabled
                                            Case 1
                                                WScript.Echo MSG_VLActivationType & "AD"
                                            Case 2
                                                WScript.Echo MSG_VLActivationType & "KMS"
                                            Case 3
                                                WScript.Echo MSG_VLActivationType & "Token"
                                            Case Else
                                                WScript.Echo MSG_VLActivationType & "ALL"
                                        End Select
                                        
                                        'Check to see if last activated via AD- display object info (Win8+).
                                        If instance.VLActivationType = 1 Then
                                            isAdActivated = True
                                            WScript.Echo MSG_Act_Recent + "AD"
                                            WScript.Echo vbTab & MSG_ADInfoAOName & instance.ADActivationObjectName
                                            WScript.Echo vbTab & MSG_ADInfoAODN & instance.ADActivationObjectDN
                                            WScript.Echo vbTab & MSG_ADInfoExtendedPid & instance.ADActivationCsvlkPid
                                            WScript.Echo vbTab & MSG_ADInfoActID & instance.ADActivationCsvlkSkuId
                                        End If
                                    End If
                                    
                                    If isAdActivated = False Then
                                        strKms = instance.DiscoveredKeyManagementServiceMachineName
                                        strPort = instance.DiscoveredKeyManagementServiceMachinePort
                                            
                                        If IsNull(strKms) Or (strKms = "") Or IsNull(strPort) Or (strPort = 0) Then
                                            WScript.Echo vbTab & MSG_KMS_DNS_ERR
                                        Else
                                            WScript.Echo vbTab & MSG_KMS_DNS & strKMS & ":" & strPort
                                        End If
                                        
                                        'Check to see if registry override is defined
                                        strKms = instance.KeyManagementServiceMachine
                                        If strKms <> "" And Not IsNull(strKms) Then
                                             strPort = instance.KeyManagementServicePort
                                            If (strPort = 0) Then
                                                strPort = MSG_DEFAULT_PORT
                                            End If
                                            WScript.Echo vbTab & MSG_HOST_REG_OVERRIDE & strKms & ":" & strPort
                                        End If
                                            
                                        WScript.Echo vbTab & MSG_ACTIVATION_INTERVAL & instance.VLActivationInterval & " minutes"
                                        WScript.Echo vbTab & MSG_RENEWAL_INTERVAL & instance.VLRenewalInterval & " minutes"
                                            
                                         If (objOspp.KeyManagementServiceHostCaching = True) Then
                                            WScript.Echo vbTab & MSG_HOST_CACHING & "Enabled"
                                        Else
                                            WScript.Echo vbTab & MSG_HOST_CACHING & "Disabled"
                                        End If
                                        
                                        If Win7 <> True Then     
                                            If instance.KeyManagementServiceLookupDomain <> "" Then
                                                WScript.Echo vbTab & MSG_KMSLOOKUP & instance.KeyManagementServiceLookupDomain
                                            End If
                                        End If
                                    End If                               
                                End If
                            End If
                            WScript.Echo MSG_SEPERATE
                        End If
                    Case Else
                End Select
            End If
        Next
    End If
    
    Select Case strCommand
        Case "/unpkey"
            If y = 0 Then
                WScript.Echo MSG_KEYNOTFOUND
                quitExit()
            End If
        Case "/ckms-domain","/skms-domain","/actype","/sethst","/setprt","/remhst"
            If kmsCounter = 0 Then
                WScript.Echo MSG_NOKMSLICS
                quitExit()
            Else
                sppErrHandle(strCommand)
            End If
        Case Else
    End Select
    
    If i = 0 Then
        WScript.Echo MSG_NOKEYSINSTALLED
        WScript.Echo MSG_SEPERATE
    End If
    quitExit()
    
    End Function
    '
    '
    Function performRegAction(strCommand)
    
    On Error Resume Next
    
    If Win7 = True Then
        Set colListOfServices = objWMI.ExecQuery _
            ("Select * from Win32_Service ")
        For Each objService in colListOfServices
            If objService.Name = "osppsvc" Then
                installed = True
                Exit For
            End If
        Next
            
        If installed <> True Then
            globalPopFailure MSG_OSPPSVC_NOINSTALL,True
        End If
        checkRegRights objWMI1,REG_OSPP
    Else
        checkRegRights objWMI1,REG_SPP
    End If
    
    Select Case strCommand
        Case "/puserops"
            setRegValue objWMI1,"1","UserOperations"
        Case "/duserops"
            setRegValue objWMI1,"0","UserOperations"
    End Select
    
    End Function
    '
    '
    Function performServiceAction(strCommand)
    
    On Error Resume Next
    
    Set colListOfServices = objWMI.ExecQuery _
        ("Select * from Win32_Service ")
    For Each objService in colListOfServices
        If objService.Name = "osppsvc" Then
            installed = True
            Exit For
        End If
    Next
        
    If installed <> True Then
        globalPopFailure MSG_OSPPSVC_NOINSTALL,True
    End If
    
    Set objService = Nothing
    Set colListOfServices = Nothing
    
    If strCommand = "/osppsvcauto" Then
        Set colListOfServices = objWMI.ExecQuery _
            ("Select * from Win32_Service where StartMode = 'Manual' or StartMode = 'Disabled'")
            For Each objService in colListOfServices
                If LCase(objService.Name) = "osppsvc" Then
                    foundOsppNonAuto = True
                    objService.Change , , , , "Automatic"
                    WScript.Sleep(15000)
                    Exit For
                End If
            Next
            If foundOsppNonAuto <> True Then
                WScript.Echo "Service startup type already set to automatic: Office Software Protection Platform"
                quitExit()
            End If
            
            Set objService = Nothing
            Set colListOfServices = Nothing
            Set colListOfServices = objWMI.ExecQuery _
            ("Select * from Win32_Service where StartMode = 'Auto'")
            For Each objService in colListOfServices
                If LCase(objService.Name) = "osppsvc" Then
                    foundOsppAuto = True
                    WScript.Echo "Successfully set service startup to automatic:" & objService.DisplayName
                    quitExit()
                End If
            Next
            
            If foundOsppAuto <> True Then
                WScript.Echo "Unsuccessful setting service startup to automatic. " & MSG_ISCMD_ELEVATED
                quitExit()
            End If
    Else
        Set colListOfServices = objWMI.ExecQuery _
            ("Select * from Win32_Service ")
        For Each objService in colListOfServices
            If LCase(objService.Name) = "osppsvc" Then
                Select Case LCase(objService.State)
                    Case "running"
                        objService.StopService()
                        WScript.Sleep(15000)
                        objService.StartService()
                        WScript.Sleep(15000)
                    Case Else
                        objService.StartService()
                        WScript.Sleep(15000)
                End Select
                Exit For
            End If
        Next
        
        Set objService = Nothing
        Set colListOfServices = Nothing
        Set colListOfServices = objWMI.ExecQuery _
            ("Select * from Win32_Service ")
        For Each objService in colListOfServices
            If LCase(objService.Name) = "osppsvc" Then
                If LCase(objService.State) = "running" Then
                    WScript.Echo "Successfully restarted: " & objService.DisplayName
                    quitExit()
                Else
                    WScript.Echo "Unsuccessful restart: " & objService.DisplayName & ". Status: " _
                        & objService.State & ". " & MSG_ISCMD_ELEVATED
                    quitExit()
                End If
                Exit For
            End If
        Next
    End If
    
    End Function
    '
    '
    Function reARM(skuid)
    
    progFiles = WshShell.ExpandEnvironmentStrings("%ProgramFiles%")
    
    If objFSO.FileExists(progFiles & STR_OSPPREARMPATH) Then
        rearmPath = progFiles & STR_OSPPREARMPATH
    ElseIf objFSO.FileExists(progFiles & STR_OSPPREARMPATH_DEBUG) Then
        rearmPath = progFiles & STR_OSPPREARMPATH_DEBUG
    Else
        progFilesX86 = WshShell.ExpandEnvironmentStrings("%ProgramFiles(x86)%")
        If objFSO.FileExists(progFilesX86 & STR_OSPPREARMPATH) Then
            rearmPath = progFilesX86 & STR_OSPPREARMPATH
        ElseIf objFSO.FileExists(progFilesX86 & STR_OSPPREARMPATH_DEBUG) Then
            rearmPath = progFilesX86 & STR_OSPPREARMPATH_DEBUG
        Else
            WScript.Echo MSG_FILENOTFOUND & "OSPPREARM.EXE"
            quitExit()
        End If
    End If
    
    If skuid = "" Then   
        Set objScriptExec = WshShell.Exec (rearmPath)
    Else
        Set objScriptExec = WshShell.Exec (rearmPath & " " & skuid)
    End If
    
    readOut = objScriptExec.StdOut.ReadAll
    WScript.Echo readOut
        
    End Function
    '
    '
    Function isWin7OS()
    
    Set colOperatingSystems = objWMI.ExecQuery _
            ("Select * from Win32_OperatingSystem")
        For Each objOperatingSystem in colOperatingSystems
            Ver = Split(objOperatingSystem.Version, ".", -1, 1) 
            'Win7
             If (Ver(0) = "6" And Ver(1) = "1" And objOperatingSystem.ProductType = 1) Then
                Win7 = True
                Exit For
             End If
                
             'Server2008R2
             If (Ver(0) = "6" And Ver(1) = "1" And (objOperatingSystem.ProductType = 2 Or objOperatingSystem.ProductType = 3)) Then
                Win7 = True
                Exit For
            End If
        Next
    
    setWmiClasses()
    
    End Function
    '
    '
    Function setWmiClasses()
    
    If Win7 = True Then
        productClass = "OfficeSoftwareProtectionProduct"
        tokenClass = "OfficeSoftwareProtectionTokenActivationLicense"
    Else
        productClass = "SoftwareLicensingProduct"
        tokenClass = "SoftwareLicensingTokenActivationLicense"
    End If
    
    End Function
    '
    '
    
    '' SIG '' Begin signature block
    '' SIG '' MIIhkgYJKoZIhvcNAQcCoIIhgzCCIX8CAQExDzANBglg
    '' SIG '' hkgBZQMEAgEFADB3BgorBgEEAYI3AgEEoGkwZzAyBgor
    '' SIG '' BgEEAYI3AgEeMCQCAQEEEE7wKRaZJ7VNj+Ws4Q8X66sC
    '' SIG '' AQACAQACAQACAQACAQAwMTANBglghkgBZQMEAgEFAAQg
    '' SIG '' zEwik1Z5edAj7+sqHGDiJNmSFwExtnAcWrZywByYrk+g
    '' SIG '' ggswMIIEuDCCA6CgAwIBAgITMwAAABYRBLSIOIy+wwAA
    '' SIG '' AAAAFjANBgkqhkiG9w0BAQsFADB+MQswCQYDVQQGEwJV
    '' SIG '' UzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMH
    '' SIG '' UmVkbW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBv
    '' SIG '' cmF0aW9uMSgwJgYDVQQDEx9NaWNyb3NvZnQgQ29kZSBT
    '' SIG '' aWduaW5nIFBDQSAyMDEwMB4XDTEyMDgzMDE3NDkwM1oX
    '' SIG '' DTEzMTEzMDE3NDkwM1owgYMxCzAJBgNVBAYTAlVTMRMw
    '' SIG '' EQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRt
    '' SIG '' b25kMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRp
    '' SIG '' b24xDTALBgNVBAsTBE1PUFIxHjAcBgNVBAMTFU1pY3Jv
    '' SIG '' c29mdCBDb3Jwb3JhdGlvbjCCASIwDQYJKoZIhvcNAQEB
    '' SIG '' BQADggEPADCCAQoCggEBAKBQnx1OlLoHCty+lknhPaAG
    '' SIG '' 75W++b1WKluc7x4RLsbW4S2yb8wzLZ4epLGCFspkMamK
    '' SIG '' JoH04y7yHg4cyOFZ4dQjPWV3/+rlt7ONCPYS129JV6SF
    '' SIG '' 4wQe0EKop7LbMAoV0ck1bX+8hl6lPraQZAUkHD6gcWgK
    '' SIG '' Mfd+1JXpLZvKZQV6FAIMCfaz3XFdJh9aCy8JumcybJwV
    '' SIG '' 2Jw8iehHOu+mFN9CPiEeuzHiLNFU9uqAkiuTNHdtkmcm
    '' SIG '' NsEqMdt4E0mrk5XcbKoMAHHAzc3dY+2RV5evjCqExd4N
    '' SIG '' dWWM4NEfQTu7tZLSaTl1mABMbEw9GEMDzmY7nF1OUXiR
    '' SIG '' Qjt+0FrgX0MCAwEAAaOCAScwggEjMB8GA1UdJQQYMBYG
    '' SIG '' CCsGAQUFBwMDBgorBgEEAYI3PQYBMB0GA1UdDgQWBBRr
    '' SIG '' 2fF2+KN4NKT3Rp4n8bC5bM82pjAfBgNVHSMEGDAWgBTm
    '' SIG '' /F97uyIAWORyTrX0IXQjMubvrDBWBgNVHR8ETzBNMEug
    '' SIG '' SaBHhkVodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtp
    '' SIG '' L2NybC9wcm9kdWN0cy9NaWNDb2RTaWdQQ0FfMjAxMC0w
    '' SIG '' Ny0wNi5jcmwwWgYIKwYBBQUHAQEETjBMMEoGCCsGAQUF
    '' SIG '' BzAChj5odHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20vcGtp
    '' SIG '' L2NlcnRzL01pY0NvZFNpZ1BDQV8yMDEwLTA3LTA2LmNy
    '' SIG '' dDAMBgNVHRMBAf8EAjAAMA0GCSqGSIb3DQEBCwUAA4IB
    '' SIG '' AQBSQvO9uPl8uzKyi9ukLZAQqUK3SJ69+UtczCFgpL2A
    '' SIG '' l2MuKon2m9a8IpIBc56D+/KLa70wWuztMD7uyOF/qDcp
    '' SIG '' 90wfrd4j1yptJQrRMD5D8aq1RTirbkTj0KEDM9daNOUh
    '' SIG '' MSuOKC547WVyB4e1/rwWxKwvZMuizcnqB2p1YuvM5map
    '' SIG '' PMEyOcXRwGxr+gU8K22z+0f9urwcgF0ShtQr2tIsKDJ9
    '' SIG '' VwWEJ4Ef8EFlUgHwaq95DbjtwGOnRNb5ngJVRQ54Xlzb
    '' SIG '' AHrpZSRzEni2UPk2JkiUBO3YQNXhPUM3H5hFnSzjNtpz
    '' SIG '' MFSXah4gXBP5DtiMMLbrPnWEpetjkgotSUu2MIIGcDCC
    '' SIG '' BFigAwIBAgIKYQxSTAAAAAAAAzANBgkqhkiG9w0BAQsF
    '' SIG '' ADCBiDELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hp
    '' SIG '' bmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoT
    '' SIG '' FU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjEyMDAGA1UEAxMp
    '' SIG '' TWljcm9zb2Z0IFJvb3QgQ2VydGlmaWNhdGUgQXV0aG9y
    '' SIG '' aXR5IDIwMTAwHhcNMTAwNzA2MjA0MDE3WhcNMjUwNzA2
    '' SIG '' MjA1MDE3WjB+MQswCQYDVQQGEwJVUzETMBEGA1UECBMK
    '' SIG '' V2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9uZDEeMBwG
    '' SIG '' A1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMSgwJgYD
    '' SIG '' VQQDEx9NaWNyb3NvZnQgQ29kZSBTaWduaW5nIFBDQSAy
    '' SIG '' MDEwMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
    '' SIG '' AQEA6Q5kUHlntcTj/QkATJ6UrPdWaOpE2M/FWE+ppXZ8
    '' SIG '' bUW60zmStKQe+fllguQX0o/9RJwI6GWTzixVhL99COMu
    '' SIG '' K6hBKxi3oktuSUxrFQfe0dLCiR5xlM21f0u0rwjYzIjW
    '' SIG '' axeUOpPOJj/s5v40mFfVHV1J9rIqLtWFu1k/+JC0K4N0
    '' SIG '' yiuzO0bj8EZJwRdmVMkcvR3EVWJXcvhnuSUgNN5dpqWV
    '' SIG '' XqsogM3Vsp7lA7Vj07IUyMHIiiYKWX8H7P8O7YASNUwS
    '' SIG '' pr5SW/Wm2uCLC0h31oVH1RC5xuiq7otqLQVcYMa0Kluc
    '' SIG '' IxxfReMaFB5vN8sZM4BqiU2jamZjeJPVMM+VHwIDAQAB
    '' SIG '' o4IB4zCCAd8wEAYJKwYBBAGCNxUBBAMCAQAwHQYDVR0O
    '' SIG '' BBYEFOb8X3u7IgBY5HJOtfQhdCMy5u+sMBkGCSsGAQQB
    '' SIG '' gjcUAgQMHgoAUwB1AGIAQwBBMAsGA1UdDwQEAwIBhjAP
    '' SIG '' BgNVHRMBAf8EBTADAQH/MB8GA1UdIwQYMBaAFNX2VsuP
    '' SIG '' 6KJcYmjRPZSQW9fOmhjEMFYGA1UdHwRPME0wS6BJoEeG
    '' SIG '' RWh0dHA6Ly9jcmwubWljcm9zb2Z0LmNvbS9wa2kvY3Js
    '' SIG '' L3Byb2R1Y3RzL01pY1Jvb0NlckF1dF8yMDEwLTA2LTIz
    '' SIG '' LmNybDBaBggrBgEFBQcBAQROMEwwSgYIKwYBBQUHMAKG
    '' SIG '' Pmh0dHA6Ly93d3cubWljcm9zb2Z0LmNvbS9wa2kvY2Vy
    '' SIG '' dHMvTWljUm9vQ2VyQXV0XzIwMTAtMDYtMjMuY3J0MIGd
    '' SIG '' BgNVHSAEgZUwgZIwgY8GCSsGAQQBgjcuAzCBgTA9Bggr
    '' SIG '' BgEFBQcCARYxaHR0cDovL3d3dy5taWNyb3NvZnQuY29t
    '' SIG '' L1BLSS9kb2NzL0NQUy9kZWZhdWx0Lmh0bTBABggrBgEF
    '' SIG '' BQcCAjA0HjIgHQBMAGUAZwBhAGwAXwBQAG8AbABpAGMA
    '' SIG '' eQBfAFMAdABhAHQAZQBtAGUAbgB0AC4gHTANBgkqhkiG
    '' SIG '' 9w0BAQsFAAOCAgEAGnTvV08pe8QWhXi4UNMi/AmdrIKX
    '' SIG '' +DT/KiyXlRLl5L/Pv5PI4zSp24G43B4AvtI1b6/lf3mV
    '' SIG '' d+UC1PHr2M1OHhthosJaIxrwjKhiUUVnCOM/PB6T+DCF
    '' SIG '' F8g5QKbXDrMhKeWloWmMIpPMdJjnoUdD8lOswA8waX/+
    '' SIG '' 0iUgbW9h098H1dlyACxphnY9UdumOUjJN2FtB91TGcun
    '' SIG '' 1mHCv+KDqw/ga5uV1n0oUbCJSlGkmmzItx9KGg5pqdfc
    '' SIG '' wX7RSXCqtq27ckdjF/qm1qKmhuyoEESbY7ayaYkGx0aG
    '' SIG '' ehg/6MUdIdV7+QIjLcVBy78dTMgW77Gcf/wiS0mKbhXj
    '' SIG '' pn92W9FTeZGFndXS2z1zNfM8rlSyUkdqwKoTldKOEdqZ
    '' SIG '' Z14yjPs3hdHcdYWch8ZaV4XCv90Nj4ybLeu07s8n07Ve
    '' SIG '' afqkFgQBpyRnc89NT7beBVaXevfpUk30dwVPhcbYC/GO
    '' SIG '' 7UIJ0Q124yNWeCImNr7KsYxuqh3khdpHM2KPpMmRM19x
    '' SIG '' HkCvmGXJIuhCISWKHC1g2TeJQYkqFg/XYTyUaGBS79ZH
    '' SIG '' maCAQO4VgXc+nOBTGBpQHTiVmx5mMxMnORd4hzbOTsNf
    '' SIG '' svU9R1O24OXbC2E9KteSLM43Wj5AQjGkHxAIwlacvyRd
    '' SIG '' UQKdannSF9PawZSOB3slcUSrBmrm1MbfI5qWdcUxghW6
    '' SIG '' MIIVtgIBATCBlTB+MQswCQYDVQQGEwJVUzETMBEGA1UE
    '' SIG '' CBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9uZDEe
    '' SIG '' MBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMSgw
    '' SIG '' JgYDVQQDEx9NaWNyb3NvZnQgQ29kZSBTaWduaW5nIFBD
    '' SIG '' QSAyMDEwAhMzAAAAFhEEtIg4jL7DAAAAAAAWMA0GCWCG
    '' SIG '' SAFlAwQCAQUAoIHAMBkGCSqGSIb3DQEJAzEMBgorBgEE
    '' SIG '' AYI3AgEEMBwGCisGAQQBgjcCAQsxDjAMBgorBgEEAYI3
    '' SIG '' AgEVMC8GCSqGSIb3DQEJBDEiBCD1TJpTGWrIm4napIKJ
    '' SIG '' YhzLZWUWjiXYdz5av5AAR9fYhjBUBgorBgEEAYI3AgEM
    '' SIG '' MUYwRKAigCAATQBpAGMAcgBvAHMAbwBmAHQAIABPAGYA
    '' SIG '' ZgBpAGMAZaEegBxodHRwOi8vb2ZmaWNlLm1pY3Jvc29m
    '' SIG '' dC5jb20gMA0GCSqGSIb3DQEBAQUABIIBAGu21FD/HaKe
    '' SIG '' x/u2c2W5ahMQfqtl1D7pmywem006AtumQmviOOafquMZ
    '' SIG '' mT/jJf9FrrR6tVKN2v8UfTJwIQi1lWlQAyYTA/bOGiI2
    '' SIG '' Uepum9IQyFbbtbqu7RWwqeEGbpugGTHF1H/5nXWTwUfj
    '' SIG '' XGUcySYJhQI20/DcGw0G2TD2xPPT7JfbHviXvH0d2nRW
    '' SIG '' P/10Gi1AmAY7+Koe/jZ6Z7uhzw2TbL1oZpBrvlDzY/0t
    '' SIG '' PopVtLTWf8MMQLD81+oBkj9TcgG684Gu4oYWoXQ2VGxX
    '' SIG '' hxTwJJWmJ/Lk16pxtmfsTDKmbVZQKQq/Kfmot6mBhT+v
    '' SIG '' srzqUZmrI5fj8kmq27NRiYihghMyMIITLgYKKwYBBAGC
    '' SIG '' NwMDATGCEx4wghMaBgkqhkiG9w0BBwKgghMLMIITBwIB
    '' SIG '' AzEPMA0GCWCGSAFlAwQCAQUAMIIBPQYLKoZIhvcNAQkQ
    '' SIG '' AQSgggEsBIIBKDCCASQCAQEGCisGAQQBhFkKAwEwMTAN
    '' SIG '' BglghkgBZQMEAgEFAAQgaPCujLfd+uxBHGfJ4h+nFCAS
    '' SIG '' qeiGNAoy2HNoucsL2xUCBlBkYEUZ2hgTMjAxMjEwMDIw
    '' SIG '' MDA4NTEuMjQ3WjAHAgEBgAIB9KCBuaSBtjCBszELMAkG
    '' SIG '' A1UEBhMCVVMxEzARBgNVBAgTCldhc2hpbmd0b24xEDAO
    '' SIG '' BgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29m
    '' SIG '' dCBDb3Jwb3JhdGlvbjENMAsGA1UECxMETU9QUjEnMCUG
    '' SIG '' A1UECxMebkNpcGhlciBEU0UgRVNOOkI4RUMtMzBBNC03
    '' SIG '' MTQ0MSUwIwYDVQQDExxNaWNyb3NvZnQgVGltZS1TdGFt
    '' SIG '' cCBTZXJ2aWNloIIOxzCCBnEwggRZoAMCAQICCmEJgSoA
    '' SIG '' AAAAAAIwDQYJKoZIhvcNAQELBQAwgYgxCzAJBgNVBAYT
    '' SIG '' AlVTMRMwEQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQH
    '' SIG '' EwdSZWRtb25kMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29y
    '' SIG '' cG9yYXRpb24xMjAwBgNVBAMTKU1pY3Jvc29mdCBSb290
    '' SIG '' IENlcnRpZmljYXRlIEF1dGhvcml0eSAyMDEwMB4XDTEw
    '' SIG '' MDcwMTIxMzY1NVoXDTI1MDcwMTIxNDY1NVowfDELMAkG
    '' SIG '' A1UEBhMCVVMxEzARBgNVBAgTCldhc2hpbmd0b24xEDAO
    '' SIG '' BgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29m
    '' SIG '' dCBDb3Jwb3JhdGlvbjEmMCQGA1UEAxMdTWljcm9zb2Z0
    '' SIG '' IFRpbWUtU3RhbXAgUENBIDIwMTAwggEiMA0GCSqGSIb3
    '' SIG '' DQEBAQUAA4IBDwAwggEKAoIBAQCpHQ28dxGKOiDs/BOX
    '' SIG '' 9fp/aZRrdFQQ1aUKAIKF++18aEssX8XD5WHCdrc+Zitb
    '' SIG '' 8BVTJwQxH0EbGpUdzgkTjnxhMFmxMEQP8WCIhFRDDNdN
    '' SIG '' uDgIs0Ldk6zWczBXJoKjRQ3Q6vVHgc2/JGAyWGBG8lhH
    '' SIG '' hjKEHnRhZ5FfgVSxz5NMksHEpl3RYRNuKMYa+YaAu99h
    '' SIG '' /EbBJx0kZxJyGiGKr0tkiVBisV39dx898Fd1rL2KQk1A
    '' SIG '' UdEPnAY+Z3/1ZsADlkR+79BL/W7lmsqxqPJ6Kgox8NpO
    '' SIG '' BpG2iAg16HgcsOmZzTznL0S6p/TcZL2kAcEgCZN4zfy8
    '' SIG '' wMlEXV4WnAEFTyJNAgMBAAGjggHmMIIB4jAQBgkrBgEE
    '' SIG '' AYI3FQEEAwIBADAdBgNVHQ4EFgQU1WM6XIoxkPNDe3xG
    '' SIG '' G8UzaFqFbVUwGQYJKwYBBAGCNxQCBAweCgBTAHUAYgBD
    '' SIG '' AEEwCwYDVR0PBAQDAgGGMA8GA1UdEwEB/wQFMAMBAf8w
    '' SIG '' HwYDVR0jBBgwFoAU1fZWy4/oolxiaNE9lJBb186aGMQw
    '' SIG '' VgYDVR0fBE8wTTBLoEmgR4ZFaHR0cDovL2NybC5taWNy
    '' SIG '' b3NvZnQuY29tL3BraS9jcmwvcHJvZHVjdHMvTWljUm9v
    '' SIG '' Q2VyQXV0XzIwMTAtMDYtMjMuY3JsMFoGCCsGAQUFBwEB
    '' SIG '' BE4wTDBKBggrBgEFBQcwAoY+aHR0cDovL3d3dy5taWNy
    '' SIG '' b3NvZnQuY29tL3BraS9jZXJ0cy9NaWNSb29DZXJBdXRf
    '' SIG '' MjAxMC0wNi0yMy5jcnQwgaAGA1UdIAEB/wSBlTCBkjCB
    '' SIG '' jwYJKwYBBAGCNy4DMIGBMD0GCCsGAQUFBwIBFjFodHRw
    '' SIG '' Oi8vd3d3Lm1pY3Jvc29mdC5jb20vUEtJL2RvY3MvQ1BT
    '' SIG '' L2RlZmF1bHQuaHRtMEAGCCsGAQUFBwICMDQeMiAdAEwA
    '' SIG '' ZQBnAGEAbABfAFAAbwBsAGkAYwB5AF8AUwB0AGEAdABl
    '' SIG '' AG0AZQBuAHQALiAdMA0GCSqGSIb3DQEBCwUAA4ICAQAH
    '' SIG '' 5ohRDeLG4Jg/gXEDPZ2joSFvs+umzPUxvs8F4qn++ldt
    '' SIG '' GTCzwsVmyWrf9efweL3HqJ4l4/m87WtUVwgrUYJEEvu5
    '' SIG '' U4zM9GASinbMQEBBm9xcF/9c+V4XNZgkVkt070IQyK+/
    '' SIG '' f8Z/8jd9Wj8c8pl5SpFSAK84Dxf1L3mBZdmptWvkx872
    '' SIG '' ynoAb0swRCQiPM/tA6WWj1kpvLb9BOFwnzJKJ/1Vry/+
    '' SIG '' tuWOM7tiX5rbV0Dp8c6ZZpCM/2pif93FSguRJuI57BlK
    '' SIG '' cWOdeyFtw5yjojz6f32WapB4pm3S4Zz5Hfw42JT0xqUK
    '' SIG '' loakvZ4argRCg7i1gJsiOCC1JeVk7Pf0v35jWSUPei45
    '' SIG '' V3aicaoGig+JFrphpxHLmtgOR5qAxdDNp9DvfYPw4Ttx
    '' SIG '' Cd9ddJgiCGHasFAeb73x4QDf5zEHpJM692VHeOj4qEir
    '' SIG '' 995yfmFrb3epgcunCaw5u+zGy9iCtHLNHfS4hQEegPsb
    '' SIG '' iSpUObJb2sgNVZl6h3M7COaYLeqN4DMuEin1wC9UJyH3
    '' SIG '' yKxO2ii4sanblrKnQqLJzxlBTeCG+SqaoxFmMNO7dDJL
    '' SIG '' 32N79ZmKLxvHIa9Zta7cRDyXUHHXodLFVeNp3lfB0d4w
    '' SIG '' wP3M5k37Db9dT+mdHhk4L7zPWAUu7w2gUDXa7wknHNWz
    '' SIG '' fjUeCLraNtvTX4/edIhJEjCCBNEwggO5oAMCAQICCmEH
    '' SIG '' 1FUAAAAAAA4wDQYJKoZIhvcNAQELBQAwfDELMAkGA1UE
    '' SIG '' BhMCVVMxEzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNV
    '' SIG '' BAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBD
    '' SIG '' b3Jwb3JhdGlvbjEmMCQGA1UEAxMdTWljcm9zb2Z0IFRp
    '' SIG '' bWUtU3RhbXAgUENBIDIwMTAwHhcNMTIwMTA5MjEzNTMx
    '' SIG '' WhcNMTMwNDA5MjE0NTMxWjCBszELMAkGA1UEBhMCVVMx
    '' SIG '' EzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcTB1Jl
    '' SIG '' ZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3Jh
    '' SIG '' dGlvbjENMAsGA1UECxMETU9QUjEnMCUGA1UECxMebkNp
    '' SIG '' cGhlciBEU0UgRVNOOkI4RUMtMzBBNC03MTQ0MSUwIwYD
    '' SIG '' VQQDExxNaWNyb3NvZnQgVGltZS1TdGFtcCBTZXJ2aWNl
    '' SIG '' MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
    '' SIG '' weiiiavCaSU5yAO7J7LMoFhyzUv4QGcC85Sl6EdWInsg
    '' SIG '' nJ4/uPz92BPkJqKQ7+S9iEplO1iwcoUEiARNaVXKHaxz
    '' SIG '' g/vjTPVeJrFRZwdt7mDhCISPS/Jmzo1gPxiQ89ySBo5u
    '' SIG '' 9eCyW35wKULrQhWmxVXzHr3ZvcsT2eqwdL97m4xWCbmI
    '' SIG '' ZSSUTMqApPPv8se3fU23u6A/U6J5jWzxubjJ5HXUXttd
    '' SIG '' reRWpTihDFQ7KcsEyB4MrRJP8qXec6sZ9HUC0HTUB+GR
    '' SIG '' WWqbJRiYCyjH13ViaapBfos7kYb/pPTqtveVi5nDphrs
    '' SIG '' i+jxsygf7gyFNBKBUwfIyW9vAqZ86Be0DwIDAQABo4IB
    '' SIG '' GzCCARcwHQYDVR0OBBYEFMbW5nU1U+/wnbjYtEvuXlMB
    '' SIG '' CGPZMB8GA1UdIwQYMBaAFNVjOlyKMZDzQ3t8RhvFM2ha
    '' SIG '' hW1VMFYGA1UdHwRPME0wS6BJoEeGRWh0dHA6Ly9jcmwu
    '' SIG '' bWljcm9zb2Z0LmNvbS9wa2kvY3JsL3Byb2R1Y3RzL01p
    '' SIG '' Y1RpbVN0YVBDQV8yMDEwLTA3LTAxLmNybDBaBggrBgEF
    '' SIG '' BQcBAQROMEwwSgYIKwYBBQUHMAKGPmh0dHA6Ly93d3cu
    '' SIG '' bWljcm9zb2Z0LmNvbS9wa2kvY2VydHMvTWljVGltU3Rh
    '' SIG '' UENBXzIwMTAtMDctMDEuY3J0MAwGA1UdEwEB/wQCMAAw
    '' SIG '' EwYDVR0lBAwwCgYIKwYBBQUHAwgwDQYJKoZIhvcNAQEL
    '' SIG '' BQADggEBAI0KBSOJ6bP7QV7OBc3Qqr9NuRE/A3XEtCto
    '' SIG '' Oz7ZTYBcGswSypS0o+c2jD54GkUSz8eNIK/HNwpipKCv
    '' SIG '' Yqp9KTUgw66SS/r2uF5LX3RmrPKhLXA4cdGYNlu/BuX+
    '' SIG '' LeyJ2KXql1BCgrU1+xB4fxhe7baUWx9o5rN8N2/4P8L5
    '' SIG '' b4Wlw2clhOvZuKCjtO5YJqk6yH0ESwyoE0ZtnsZaYOcI
    '' SIG '' cZEblJidE2CtM702fe0IaCLIMOffLMQr9T+4gVlPq+1s
    '' SIG '' vCAGEQVMMDkoR1BU37nOc9+Q82n/qBMTgnvQG9ogqcFQ
    '' SIG '' 5skb/6SCon+aXmEWujxcUQfTqh0ixjkd346o0uBTH9yh
    '' SIG '' ggN5MIICYQIBATCB46GBuaSBtjCBszELMAkGA1UEBhMC
    '' SIG '' VVMxEzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcT
    '' SIG '' B1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jw
    '' SIG '' b3JhdGlvbjENMAsGA1UECxMETU9QUjEnMCUGA1UECxMe
    '' SIG '' bkNpcGhlciBEU0UgRVNOOkI4RUMtMzBBNC03MTQ0MSUw
    '' SIG '' IwYDVQQDExxNaWNyb3NvZnQgVGltZS1TdGFtcCBTZXJ2
    '' SIG '' aWNloiUKAQEwCQYFKw4DAhoFAAMVAIMU1+AB1G7ZyJUz
    '' SIG '' KxZvn3EmZVMnoIHCMIG/pIG8MIG5MQswCQYDVQQGEwJV
    '' SIG '' UzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMH
    '' SIG '' UmVkbW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBv
    '' SIG '' cmF0aW9uMQ0wCwYDVQQLEwRNT1BSMScwJQYDVQQLEx5u
    '' SIG '' Q2lwaGVyIE5UUyBFU046QjAyNy1DNkY4LTFEODgxKzAp
    '' SIG '' BgNVBAMTIk1pY3Jvc29mdCBUaW1lIFNvdXJjZSBNYXN0
    '' SIG '' ZXIgQ2xvY2swDQYJKoZIhvcNAQEFBQACBQDUFAnFMCIY
    '' SIG '' DzIwMTIxMDAxMTIyMzMzWhgPMjAxMjEwMDIxMjIzMzNa
    '' SIG '' MHcwPQYKKwYBBAGEWQoEATEvMC0wCgIFANQUCcUCAQAw
    '' SIG '' CgIBAAICCfICAf8wBwIBAAICF3EwCgIFANQVW0UCAQAw
    '' SIG '' NgYKKwYBBAGEWQoEAjEoMCYwDAYKKwYBBAGEWQoDAaAK
    '' SIG '' MAgCAQACAxbjYKEKMAgCAQACAwehIDANBgkqhkiG9w0B
    '' SIG '' AQUFAAOCAQEAR/OueYR+g/HRIidEawooT2diG+SL852l
    '' SIG '' aPKtFYpQ2evbBhC6mrWYwfJJh7+so1dptvEQ5oCjx2Ko
    '' SIG '' /MSkTqsyLn2cfgT160PMyOeabh4/jMgUGU/C1YnkM4R2
    '' SIG '' K4ShNBu3H6cGxTJMFv3edD+5tEZjPFJvdfJkewL2u+4T
    '' SIG '' Jzbbo/SZ2Mp0mYYNnYlXBbwXy27ZtKeQqwdZO5oqyNlg
    '' SIG '' NwYktOW1REwe9+1YIHfw9IhLPmAjF+ag7+FmKZG1ou1J
    '' SIG '' R95O7apQeOrLONDdraALCmb4JgNntqwy+x+RgmXdnUgo
    '' SIG '' 7mZF2oiDM/NqIWB/mN1ILdPF/ckEXOtLutVGHcEKpdpb
    '' SIG '' EzGCAuMwggLfAgEBMIGKMHwxCzAJBgNVBAYTAlVTMRMw
    '' SIG '' EQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRt
    '' SIG '' b25kMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRp
    '' SIG '' b24xJjAkBgNVBAMTHU1pY3Jvc29mdCBUaW1lLVN0YW1w
    '' SIG '' IFBDQSAyMDEwAgphB9RVAAAAAAAOMA0GCWCGSAFlAwQC
    '' SIG '' AQUAoIIBKTAaBgkqhkiG9w0BCQMxDQYLKoZIhvcNAQkQ
    '' SIG '' AQQwLwYJKoZIhvcNAQkEMSIEIMVDfBvNNWKr5LBboTVX
    '' SIG '' gRlLtx9uanEUsfPaJoM5/ZbLMIHZBgsqhkiG9w0BCRAC
    '' SIG '' DDGByTCBxjCBwzCBqAQUgxTX4AHUbtnIlTMrFm+fcSZl
    '' SIG '' UycwgY8wgYCkfjB8MQswCQYDVQQGEwJVUzETMBEGA1UE
    '' SIG '' CBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9uZDEe
    '' SIG '' MBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMSYw
    '' SIG '' JAYDVQQDEx1NaWNyb3NvZnQgVGltZS1TdGFtcCBQQ0Eg
    '' SIG '' MjAxMAIKYQfUVQAAAAAADjAWBBRjIEaoyFA06dGB75Ys
    '' SIG '' NATncLtMNDANBgkqhkiG9w0BAQsFAASCAQBvTI/fQJ7r
    '' SIG '' /bKY6hyQc46TuKX4MBG5kc4j3qwYY9hBWAfZtebgojiU
    '' SIG '' N4sDMmAQ9RJo6/tAXqtoc2hh/hn3nwJmXbpDzEj50wmB
    '' SIG '' zMnOyo+YNcTkGhV9z3DfdIzLJ6iglM6y3kyy8ySjdXw3
    '' SIG '' X9b4UlqeEetg6mb4S7FtLRnBGPNB9wXLt2Cw3tSSLWbt
    '' SIG '' hLeGi6Xh5AkWaNMz/2SZZIj7vVj/S01BZsGxGpV6BmXP
    '' SIG '' 0UW1gEJSNbqBKPuUsTD1I6aMH7hp57XL9q3np5DHU/Ae
    '' SIG '' q45jBLGD0mx3n73y//7FnQiFKpoRM8l33KGaUkkYHDIM
    '' SIG '' 5XalKnWa59yf/0L8Ls6Bzflz
    '' SIG '' End signature block
    

     

    展开全文
  • 激活Office2013版)

    千次阅读 2018-10-13 20:12:22
    接下来从网上下载KMSpico安装版软件,该软件包含安装应用程序,使用说明,卸载服务三个部分,激活前一定要仔细阅读使用说明文件,如下图所示。 右键点击【卸载服务】,选择以管理员身份运行,清除已有的...
    1. 接下来从网上下载KMSpico安装版软件,该软件包含安装应用程序,使用说明,卸载服务三个部分,激活前一定要仔细阅读使用说明文件,如下图所示。

      visio 2013如何激活

    2. 右键点击【卸载服务】,选择以管理员身份运行,清除已有的服务,如下图所示。

      visio 2013如何激活

    3. 卸载服务之后再右键点击KMSpico安装应用程序,选择以管理员身份运行,进入软件的安装界面,如下图所示。

      visio 2013如何激活

      visio 2013如何激活

    4. 软件安装完成之后,点击左侧的开始菜单,找到已安装在电脑上的KMSpico程序,如下图所示。

      visio 2013如何激活

    5. 打开该应用程序,点击左下角的红色按钮,该软件开始激活电脑上安装的microsoft软件,当然也包含已安装的visio 2013,如下图所示。

      visio 2013如何激活

      visio 2013如何激活

    6. 激活完毕之后自动退出该界面,接下来在电脑上打开visio 2013界面,进入账户选项,即可发现visio 2013已成功激活,如下图所示。

      visio 2013如何激活

      END

    注意事项

    • KMSpico可激活win7,win8,win10系统软件,功能非常强大。

    展开全文
  • windows7激活信息还原 1.现在“计算机”,右键中的“管理”中的“服务”中禁止Software Protection 2.还原路径C:\Windows\ServiceProfiles\NetworkService\AppData\Roaming\Microsoft\SoftwareProtectionPlatform\...

    windows7激活信息还原

    1.现在“计算机”,右键中的“管理”中的“服务”中禁止Software Protection

    2.还原路径C:\Windows\ServiceProfiles\NetworkService\AppData\Roaming\Microsoft\SoftwareProtectionPlatform\tokens.dat

    3.然后用原来的激活秘钥激活系统,这样就可以激活系统。

     

    office2013激活信息还原

    服务中禁止Office Software Protection Platform,然后转到下面目录进行替换即可。

    C:\ProgramData\Microsoft\OfficeSoftwareProtectionPlatform\tokens.dat

     

    服务里面禁用flashhelper服务

    然后删掉C:\Windows\SysWOW64\Macromed\Flash\FlashHelperService

    转载于:https://www.cnblogs.com/xiaoshi-com/p/5089819.html

    展开全文
  • http://jingyan.baidu.com/article/466506582cf647f549e5f83f.html 转载于:https://www.cnblogs.com/srxhmxx/p/4552389.html
  • 今天使用lync 去登陆office 365的账号的时候,发生了没反映,一直登陆不了的情况,于是就一怒之下就使用 365上面下载的office 了。...最后系统的分析一下问题吧,我使用了office 365的账号下载安装了offic...
  • 最近换了win10,要重装offce,最后选定了office 2013,但是在安装的时候发现一个问题,输入一次激活码以后,就不能再次输入激活码。 后来百度一了一下(其实还是想用google),才知道原来这是微软的版权保护策略。...
  • Office 2013-2019 C2R Install v6.5.6.0最新版,很好用
  • win10升级后怎么激活office2013?朋友们可能发现升级win10正式版后office 2013不能用了,这是什么原因造成的呢?这是因为office 2013需要重新激活。但是很多朋友又开始犯难了,不会激活该怎么办?下面小编就给大家带来...
  • 毫无疑问,Office 2013是现在可以获得的最好的Microsoft Office。当您安装Office 2013时,它要求您使用Microsoft帐户登录,以便您可以将文档保存到SkyDrive。此外,您可以在登录后将文档共享给各种社交网站。但是,...
  • 现在很多人都喜欢安装最新版的OFFICE,但是由于经济实力不允许,都选择使用激活工具激活,但是激活之后为什么过一段时间之后又提示OFFICE没有激活,那是因为使用激活工具激活之后,只能激活一段时间,现在我来告诉...
  • Office 2013-2019 C2R Install 6.4.7 中文版 不需要多说了
  •  KMSpico Win10激活工具 是一款能激活Win8/Win8.1/win10/Office2013强大的激活工具,同时操作也很方便,只需要手动运行一下就不必管它,它会自动激活你的Windows系统,同时也支持Win7及Office 2010。  操作方...
  • 激活office2013

    2014-08-30 14:33:38
    office2013 激活教程及激活工具本文转自http://jingyan.baidu.com/article/d45ad148e6bdfd69552b80b8.html首先下载激活工具,百度一下 microsoft toolkit 2.4.1注意:Office2013不支持win XP系统,仅支持win 7和win 8。...
  • 使用下面这个工具 增加KMS Client数量 首先启动KMS服务器,然后启动工具中的.bat的批处理文件,等其执行完毕之后,便可以使用正常方法进行office2013激活。 我的error是0xC004F038,通过以上两步解决了,希望能帮...
  • 其它亮点还有,支持微软 Office 2013,以及在 macOS 上运行 64 位应用的能力。 具体可以参考其发布公告。 在 Ubuntu 上安装 Wine 2.0 现在可以从 WineHQ 官网下载 Wine 2.0 的源代码了,你可以通过...
  • 成功KMS激活window8,win2012,office2013,visio2013,project2013,测试系统win7+office,win8+office,win2012+office 特此记录 =================== office2013是2003以后又一经典系统office软件 启动速度快,...
  • Win10系统下激活系统和office2013教程

    千次阅读 2015-12-15 09:19:16
    详细教程 下面是工具链接: http://download.csdn.net/my/uploads
  • 如何清除windows&office KMS激活

    千次阅读 2021-05-09 10:29:55
    在windows或office中使用了KMS的180天激活后,就会无法使用MAK KEY永久激活。这里我向大家介绍如何清除KMS激活信息 首先要卸载掉KMS的程序。 方法是在控制面板,卸载程序,找到相应的KMS激活程序就可以了,比如...
  • Visio Professional 2013激活方法

    万次阅读 2019-05-04 16:54:58
    将Microsoft Toolkit.exe放在VISIO.EXE的目录下,点击如图所示按钮进行Office软件的激活。 有的方法是直接点击“EZ-Activator”即可,但是我安装的visio不行,结果如图所示。出现这种情况的原因一般是你的visio是...
  • 彼得·布莱特(Peter Bright)是科技媒体「Ars」的科技编辑。...事实上,包含在Office之中的某些部件的年龄要更大,但微软公司在1990年才发布了第一款Office组合套装。第一款Office套装包含了Word 1....
  • 方法非常简单哦,是网络权限问题,试试自己的手机热点会有惊喜哈哈
  • 最好使用完整版本的 Office 2013-2021 C2R 下载完整版本的 Office 套件。 2、在安装 Office 2019 之前,需要先卸载 Office 2016。它是建议使用 Office 2013-2019 C2R 内置的卸载程序。点击“卸载 Office”按钮,在...
  • Office 2013新特性

    2018-04-11 18:20:21
    //div[@class="con artical-content editor-preview-side"]
  • 2018-08-14 14:52:30一些...可以用office2010激活码,...2018-05-29 09:19:45安装win10系统后处于未激活状态,我们最常用激活激活系统,激活后的系统可以运行更多程序。有些用户询问说win10激活密匙可以反复使用?...
  • 你应该不是安装到C盘吧,你把office安装目录C:\Program Files\Microsoft Office\Office16或者Office15 复制到 你安装的Office目录下或者是kms激活指定的目录下,然后再激活试试。。 我刚刚也遇到一样的问题,随便试...
  • 检查Key是否可用于office2013,2016 windows10激活,可以看到激活次数,如果还有剩余次数则可以联网激活,0次则需要电话激活
  • visio2013激活密匙

    万次阅读 2019-03-21 10:31:50
    KD8CP-DN968-RGQM6-PMFMK-M96YQ   QQ4NR-2Q67B-X9C6R-4B8CH-HXJRD   PBRNH-MY4D4-67BQK-WGM4P-XTKMQ     K6NC7-KMX7G-TC6RR-FDM23-8K6YQ   FN8TT-7WMH6-2D4X9-M337T-2342K   36N9R-JH27...
  • 一直以来,使用惯了office后就给身边的人使劲安利office,但是它有时在部分机器上安装后会出现正在配置的界面,网络上通常可以找到几种解决方案,但都比较零散,今天就将他们集合起来做成一个解决方案集锦,供大家...
  • 如标题所说,在office 2013 的word中,使用IME输入法经常碰到输错之后退格,之后再输入拼音的时候发现第一个输入的字母无故消失,没有打上去。本来以为是自己手轻,没有几次之后发觉这是软件问题。 在网上瞎找...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 18,432
精华内容 7,372
关键字:

office2013激活