Visualizzazione post con etichetta Product Key. Mostra tutti i post
Visualizzazione post con etichetta Product Key. Mostra tutti i post

domenica 5 marzo 2023

Windows Server 2022: Attivazione prodotto

Una delle prime cose da fare dopo l'installazione del sistema operativo Windows Server è attivarlo con un codice prodotto valido. È possibile farlo attraverso l'interfaccia desktop, tramite PowerShell o tramite SConfig nel caso di versioni Core. 

Attivazione tramite GUI

Nelle versioni Windows Server 2022 con desktop experience, l'attivazione può essere eseguita tramite interfaccia grafica con pochi click.

Da Server Manager, cliccare sul link Server locale presente nel riquadro di navigazione. Cliccare sul link Non attivato accanto a ID prodotto.
ID prodotto, non attivato
FIG 1 - ID prodotto, non attivato
Si aprirà automaticamente una finestra di dialogo che richiede l'immissione di un Product Key. Immettere il codice prodotto e fare clic su Successivo.
Immetti un codice Product Key
FIG 2 - Immetti un codice Product Key
Cliccare su Attiva per attivare il prodotto con il Product Key specificato.
Attiva Windows
FIG 3 - Attiva Windows

Attivazione tramite PowerShell

L'attivazione tramite PowerShell può essere eseguita sia su versioni di Windows Server 2022 dotati di desktop experience sia su versioni Core. L'attivazione avviene mediante l'utilizzo dello script Windows Server License Manager (slmgr.vbs).

Avviare una finestra PowerShell. Nelle versioni Core digitare 15 seguito da invio per selezionare l'opzione Esci dalla riga di comando (PowerShell).

Lo script slmgr.vbs può essere utilizzato con diversi parametri. I parametri utilizzati in quest'articolo sono -ipk e -ato. Il parametro -ipk viene utilizzato per l'installazione dei codici prodotto, mentre il parametro -ato viene utilizzato per specificare l'attivazione online. Per installare il product key necessario per la propria versione di Windows Server 2022, utilizzate il seguente comando con il parametro -ipk. Sostituire <productkey> con il codice di licenza di 25 caratteri, compresi i trattini.
slmgr.vbs -ipk <productkey>
Una finestra di dialogo indicherà se il codice prodotto è stato installato correttamente. Fare clic su OK.
Installazione Product Key
FIG 4 - Installazione Product Key

Dopo l'installazione della chiave di licenza, si utilizza lo stesso script con il parametro -ato per eseguire l'attivazione online della copia di Windows. Il comando seguente consente di effettuare l'attivazione online della copia di Windows:
slmgr.vbs -ato
Se l'attivazione è andata a buon fine, viene visualizzata una finestra di dialogo che indica la corretta attivazione del prodotto.


Attivazione tramite SConfig

L'attivazione tramite SConfig può essere eseguita sulle versioni Core di Windows Server 2022.

Da SConfig digitare 11 e premere invio per selezionare l'opzione Attivazione di Windows.
Sconfig, Attivazione di Windows
FIG 5 - Sconfig, Attivazione di Windows
Nel menu successivo, digitare 3 seguito da invio per Installa il codice Product Key
Installa il codice Product Key
FIG 6 - Installa il codice Product Key

Immettere il Product Key di 25 caratteri (inclusi i trattini) e premere invio.
Immetti il codice Product Key
FIG 7 - Immetti il codice Product Key
Un messaggio avvisa della corretta installazione del codice prodotto. Premere invio per ritornare alla schermata principale (FIG 5).
Codice Product Key Installato
FIG 8 - Codice Product Key Installato

Selezionare nuovamente 11 quindi 2 Attiva Windows. Dopo qualche secondo un messaggio avvisa della corretta attivazione di Windows Server 2022.





martedì 12 luglio 2022

PowerShell: Visualizzare il Product Key di Windows 10

Un modo semplice per visualizzare il Product Key di Windows 10 consiste nell'utilizzare il seguente comando da PowerShell
(Get-CimInstance -ClassName SoftwareLicensingService).OA3xOriginalProductKey 

Se il comando non restituisce alcun risultato allora il Product Key non è memorizzato sulla macchina.




lunedì 9 marzo 2020

Windows Quick Tip: Visualizzare il product key del sistema operativo tramite wmic

In passato abbiamo già visto le potenzialità di WMIC (Windows Management Instrumentation Command-line) nella gestione dei sistemi da riga di comando. Tale strumento può anche essere utilizzato per visualizzare il product key di Windows eseguendo il comando
wmic path softwarelicensingservice get OA3xOriginalProductKey

Se è stato effettuato l'aggiornamento a Windows 10 da una versione antecedente del sistema operativo tale comando non funziona.








lunedì 3 novembre 2014

VBS: Recuperare il product key di Windows tramite VBS


Esistono diversi tool di terze parti che permettono il recupero del product key del sistema operativo e di altre applicazioni, tra questi segnalo l'ottimo ProduKey della NirSoft (www.nirsoft.net) scaricabile gratuitamente ed eseguibile senza alcuna installazione.
In questo articolo verrà mostrato come recuperare il product key di Windows tramite uno script VBS.
Il Product Key di Windows è una sequenza di 25 caratteri (lettere e numeri) divisi in 5 gruppi da 5 caratteri ognuno. I caratteri utilizzati all'interno di un product key sono BCDFGHJKMPQRTVWXY2346789 mentre non vengono utilizzati i caratteri AEILNOSUZ015. Il product key è memorizzato all'interno del registro di sistema e codificato in un valore DWORD all'interno della chiave HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\DigitalProductId.
Nella decodifica del valore DWORD DigitalProductId bisogna fare attenzione alla versione di Windows infatti, a partire da Windows 8, il metodo di codifica del product key è cambiato.

Lo script che ho creato visualizza le informazioni relative al nome del prodotto, il Product ID e il Product Key permettendo, inoltre, di salvare le informazioni trovate all'interno di un file di testo (.txt).
Di seguito il sorgente dello script VBS


Option Explicit 

Dim strComputer, objWMIService, objItem, Caption, colItems
Dim ProductName,ProductID,ProductKey,ProductInfo, Version, Win8Version, WinOlderVersion
Win8Version = "6.2 6.3"
WinOlderVersion ="6.1 6.0 5.2 5.1 5.0"

'Di seguito i valori della stringa CurrentVersion presente all'interno della chiave HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion che indica la versione di Windows
'Windows 8.1                 6.3
'Windows Server 2012 R2      6.3
'Windows 8                   6.2
'Windows Server 2012         6.2
'Windows 7                   6.1
'Windows Server 2008 R2      6.1
'Windows Server 2008         6.0
'Windows Vista               6.0
'Windows Server 2003 R2      5.2
'Windows Server 2003         5.2
'Windows XP 64-Bit Edition   5.2
'Windows XP                  5.1
'Windows 2000                5.0
'Crea oggetto wscript.shell
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_OperatingSystem",,48)
' in Caption memorizzo la Versione di Windows
For Each objItem in colItems
    Caption = objItem.Caption  
Next
 Dim objshell,path,DigitalID, Result 
 Set objshell = CreateObject("WScript.Shell")
 'Recupero le informazioni dalle chiavi di registro"
 DigitalID = objshell.RegRead("HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\DigitalProductId")
 ProductName = "Product Name: " & objshell.RegRead("HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProductName")
 ProductID = "Product ID: " & objshell.RegRead("HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProductID")
 Version= objshell.RegRead("HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\CurrentVersion")
 
 If InStr(Win8Version,Version) Then
  'Windows 8 o Windows 8.1
  ProductKey = "Product Key: " & GetKeyWindows8(DigitalID) 
 Else
  If InStr(WinOlderVersion,Version) Then
     ' Windows 7 o antecedente
  ProductKey = "Product Key: " & GetKeyWindows7(DigitalID) 
  Else
     msgBox "Versione di Windows non supportata." & vblf &"Il presente Script è stato testato per versioni di Windows comprese tra Windows 2000 e Windows 8.1" , vbOKOnly+vbCritical, "Versione Windows non supportata"
  ProductKey ="Product Key: Non Rilevato"
     End If   
  
 End If
 
 ProductInfo = ProductName  & vbNewLine & ProductID  & vbNewLine & ProductKey
 'Mostra i dati e chiedi se si intende salvare in un file
 If vbYes = MsgBox(ProductInfo  & vblf & vblf & "Vuoi salvare le informazioni in un file?", vbYesNo + vbQuestion, "Windows Product Key") then
    Save ProductInfo
 End If


'Convert i valori binari della chiave "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\DigitalProductId" in caratteri per Windows 8
Function GetKeyWindows8(Key)
    Const KeyOffset = 52
    Dim isWin8, Maps, i, j, Current, KeyOutput, Last, keypart1, insert
    'Check if OS is Windows 8
    isWin8 = (Key(66) \ 6) And 1
    Key(66) = (Key(66) And &HF7) Or ((isWin8 And 2) * 4)
    i = 24
    Maps = "BCDFGHJKMPQRTVWXY2346789"
    Do
        Current= 0
        j = 14
        Do
           Current = Current* 256
           Current = Key(j + KeyOffset) + Current
           Key(j + KeyOffset) = (Current \ 24)
           Current=Current Mod 24
            j = j -1
        Loop While j >= 0
        i = i -1
        KeyOutput = Mid(Maps,Current+ 1, 1) & KeyOutput
        Last = Current
    Loop While i >= 0 
    keypart1 = Mid(KeyOutput, 2, Last)
    insert = "N"
    KeyOutput = Replace(KeyOutput, keypart1, keypart1 & insert, 2, 1, 0)
    If Last = 0 Then KeyOutput = insert & KeyOutput
    GetKeyWindows8 = Mid(KeyOutput, 1, 5) & "-" & Mid(KeyOutput, 6, 5) & "-" & Mid(KeyOutput, 11, 5) & "-" & Mid(KeyOutput, 16, 5) & "-" & Mid(KeyOutput, 21, 5)
 
End Function
'Converte i valori binari della chiave "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\DigitalProductId" in caratteri per Windows 7
Function GetKeyWindows7(ProductID)
    Const KeyOffset = 52
 Dim i, Cur, x, Maps
    i = 0
    Maps = "BCDFGHJKMPQRTVWXY2346789"
    Do
        Cur = 0
        x = 14
  i=i+1
        Do
            Cur = Cur * 256
            Cur = ProductID(x + KeyOffset) + Cur
            ProductID(x + KeyOffset) = (Cur \ 24) And 255
            Cur = Cur Mod 24
            x = x -1
        Loop While x >= 0
  if (i Mod 6) = 0 Then
   ProductKey = "-" & ProductKey
   i = i + 1
  End If  
  ProductKey = Mid(Maps, Cur + 1, 1) & ProductKey   
    Loop While i < 29
    GetKeyWindows7 = ProductKey
End Function

'Salva i dati in un file
Function Save(Data)
    Dim fso, fName, txt,objshell,UserName
    Set objshell = CreateObject("wscript.shell")
    'Crea un file di testo con nome WindowsKeyInfo.txt, nello stesso percorso del vbs, contenente le informazioni
    fName = "WindowsKeyInfo.txt"
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set txt = fso.CreateTextFile(fName)
    txt.Writeline Data
    txt.Close
End Function

Per chi volesse scaricare il file VBS può utilizzare il link di seguito
DOWNLOAD