我們最近購買了一台已經使用了一段時間的伺服器,但沒有關聯的軟體、登入等。我們也嘗試對密碼進行一些更深入的編輯,但也無濟於事。
現在我想做的是使用伺服器上現有的註冊表項重新安裝 Windows。我讀到您可以存取註冊表中的產品金鑰,並且使用密碼工具(Linux 啟動光碟)我們可以查看註冊表。當我嘗試這個時,我得到了 ProductId(哪個版本的 Windows),而不是註冊表項。
我嘗試在 Windows Server 2003 R2 中讀取的作業系統。
答案1
好的,我可以使用以下命令檢索它:
下載 AC2T KeyViewer (http://www.ac2tech.com/tools/keyviewer/keyviewer.zip)
我使用了一個密碼重設工具(不確定它是什麼,這只是我多年來一直使用的一個),它在啟動 CD 上有一個註冊表檢視器。我導航到
Microsoft->Windows NT->Current Version->DigitalProductId
一旦我得到這個值(它真的很長,大約 12 行十六進位),將整個內容輸入到 KeyViewer 應用程式的「原始金鑰」標籤中。它應該會輸出您的產品金鑰。請注意,這在某些版本的 Windows Server 中不起作用。
我發現的另一個替代方案是以下 powershell 腳本:
# create table to convert in base 24
$map="BCDFGHJKMPQRTVWXY2346789"
# Read registry Key
$value = (get-itemproperty "HKLM:\\SOFTWARE\Microsoft\Windows NT\CurrentVersion").digitalproductid[0x34..0x42]
# Convert in Hexa to show you the Raw Key
$hexa = ""
$value | foreach {
$hexa = $_.ToString("X2") + $hexa
}
"Raw Key Big Endian: $hexa"
# find the Product Key
$ProductKey = ""
for ($i = 24; $i -ge 0; $i--) {
$r = 0
for ($j = 14; $j -ge 0; $j--) {
$r = ($r * 256) -bxor $value[$j]
$value[$j] = [math]::Floor([double]($r/24))
$r = $r % 24
}
$ProductKey = $map[$r] + $ProductKey
if (($i % 5) -eq 0 -and $i -ne 0) {
$ProductKey = "-" + $ProductKey
}
}
"Product Key: $ProductKey"
在此腳本中,您可以將 $value 變數替換為以下內容:
- 在無法啟動的電腦上找到上述登錄值中的記憶體位置 34 到 42。
- 將每對數字轉換為十進位(即 A1=161)
- 使用這些值建立一個數組,例如。 $值 = (161,...)
運行腳本然後返回您的產品金鑰。
答案2
如果包裝盒上沒有 OEM 授權標籤(肯定沒有,否則您就不會在這裡),則可以從 Microsoft 取得產品金鑰大量許可服務網站,甚至可能是您的經銷商。
答案3
我不完全清楚您是否成功清除了管理員密碼。
這個網站 -> http://www.petri.co.il/forgot_administrator_password.htm
<- 必須是我發現的最有用的網站,用於解決密碼遺失的舊伺服器和機器的問題。
您可以在那裡下載一個出色的可啟動 Linux 映像,它可以讓您輕鬆重置管理員密碼。我已經使用過很多次並且一直有效。
完成後,您可以登入 Windows,我們可以解決您的 Windows 金鑰問題。
您可以使用 BelArc 或 Magical Jellybean 鑰匙查找器等工具輕鬆獲得它。
答案4
您應該能夠從 winPE 磁碟運行 Magic Jellybean Keyfinder 之類的東西。