Windows Server หมดอายุ ขึ้น License is expired แล้วดับเองทุกชั่วโมง วิธีแก้ด้วย slmgr rearm และ DISM

Windows Server หมดอายุ ดับเองทุกชั่วโมง แก้ยังไงให้ถูกวิธี

ถ้าจู่ ๆ เซิร์ฟเวอร์ของเพื่อน ๆ ขึ้นข้อความ "Windows License is expired" ที่มุมขวาล่าง แล้วเครื่องเริ่มรีสตาร์ตเองทุก ๆ ชั่วโมงแบบไม่มีปี่มีขลุ่ย — ไม่ต้องตกใจ ข้อมูลไม่ได้หาย และเครื่องไม่ได้พัง มันคืออาการปกติของ Windows Server รุ่นทดลองใช้ (Evaluation) ที่ครบ 180 วันแล้ว


บทความนี้จะพาดูตั้งแต่วิธีเช็กว่าเครื่องเราอยู่สถานะไหน วิธีต่ออายุแบบชั่วคราวด้วยคำสั่งเดียว ไปจนถึงทางออกถาวรที่ควรทำจริง ๆ ถ้าเอาเครื่องไปใช้งานจริง


อาการแบบไหนถึงเรียกว่า Windows Expired

เช็กจาก 3 อย่างนี้ ถ้าตรงครบแปลว่าใช่แน่นอน


  • มี ลายน้ำมุมขวาล่าง เขียนว่า "Windows License is expired" หรือ "Your Windows license will expire soon"
  • เครื่องชัตดาวน์/รีบูตเองทุก ๆ 1 ชั่วโมง โดยไม่มีใครสั่ง
  • เปิด Event Viewer ดูที่ System จะเจอ Event ID 1074 ระบุว่า "The license period for this installation of Windows has expired"

ลายน้ำ Windows License is expired ที่มุมขวาล่างของหน้าจอ Windows Server ที่หมดอายุ

ตัวที่สั่งให้เครื่องดับคือเซอร์วิสชื่อ WLMS (Windows Licensing Monitoring Service) มันมีหน้าที่เดียวคือคอยเช็กว่า license ยังใช้ได้อยู่ไหม ถ้าหมดอายุก็จะสั่งปิดเครื่องเป็นรอบ ๆ ไปเรื่อย ๆ จนกว่าจะแก้เรื่อง license ให้เรียบร้อย


ถ้าเป็นเทรดเดอร์ที่รัน EA อยู่บน VPS อาการนี้อันตรายกว่าที่คิด เพราะเครื่องดับตอนตีสองตีสามแล้วออเดอร์ยังค้างอยู่ EA จะหยุดคุมพอร์ตทันที ควรรีบเคลียร์ให้จบ อย่าปล่อยไว้ข้ามคืน (ถ้ายังไม่ได้ตั้งค่าให้ EA รันต่อเนื่อง ดูวิธีวาง VPS สำหรับรัน EA ได้ที่หน้า VPS Forex)


ทำไมถึงหมดอายุ — แยกให้ออกก่อน 3 เคส

1. ติดตั้งจากไฟล์ Evaluation (พบบ่อยที่สุด)
ไฟล์ ISO ที่โหลดจาก Microsoft Evaluation Center ใช้ได้ฟรี 180 วันเพื่อ "ทดสอบ" พอครบกำหนดก็จะเข้าสู่อาการข้างต้น


2. ใช้คีย์ KMS แล้วต่ออายุอัตโนมัติไม่สำเร็จ
คีย์แบบ KMS มีอายุ 180 วันแล้วต่อเองอัตโนมัติ ถ้าเครื่องคุยกับ KMS server ไม่ได้ (เช่น ย้ายเครือข่าย ไฟร์วอลล์บล็อก) ก็หมดอายุได้เหมือนกัน


3. คีย์ที่ใส่ไว้ไม่ถูกต้อง/ถูกเพิกถอน
เจอบ่อยกับเครื่องที่รับช่วงต่อมาจากคนอื่น หรือใช้คีย์ที่หาเจอตามเน็ต


เคสที่ 1 คือเคสที่แก้ง่ายที่สุดและเป็นเคสที่บทความนี้เน้น


ขั้นที่ 1 — เช็กสถานะก่อนลงมือแก้

อย่าเพิ่งพิมพ์คำสั่งต่ออายุ ให้ดูก่อนว่าเครื่องเราเป็นรุ่นอะไรและเหลือโควตาต่ออายุกี่ครั้ง


เปิด Command Prompt แบบ Run as administrator (กด Start พิมพ์ cmd แล้วคลิกขวา → Run as administrator) จากนั้นรัน


slmgr /dlv

ผลลัพธ์คำสั่ง slmgr /dlv แสดง Remaining Windows rearm count บน Windows Server

รอสักครู่จะมีหน้าต่างเด้งขึ้นมา ให้ดู 2 บรรทัดนี้


  • Description — ถ้ามีคำว่า TIMEBASED_EVAL แปลว่าเป็นรุ่น Evaluation แน่นอน
  • Remaining Windows rearm count — คือจำนวนครั้งที่ยัง "ต่ออายุ" ได้ ถ้าเป็น 0 ข้ามไปอ่านหัวข้อทางออกถาวรได้เลย

อยากดูแค่วันหมดอายุเฉย ๆ ใช้คำสั่งสั้นกว่านี้ได้


slmgr /xpr

ขั้นที่ 2 — ต่ออายุชั่วคราวด้วย slmgr /rearm

ถ้า rearm count ยังเหลือ ให้รันคำสั่งนี้ใน Command Prompt (Administrator) ตัวเดิม


slmgr /rearm

ข้อความแจ้งว่า slmgr /rearm สำเร็จ ต้องรีสตาร์ตเครื่องเพื่อให้มีผล

จะมีหน้าต่างแจ้งว่าคำสั่งสำเร็จ และให้รีสตาร์ตเครื่องเพื่อให้มีผล


shutdown /r /t 0

พอเครื่องบูตกลับมา ลายน้ำจะหายไปและเครื่องจะหยุดดับเอง ลองรัน slmgr /xpr ซ้ำอีกรอบจะเห็นวันหมดอายุถูกดันออกไปอีก 180 วัน


ข้อควรรู้ที่บทความส่วนใหญ่ไม่บอก: คำสั่งนี้ ไม่ได้ต่อได้ไม่จำกัด โดยทั่วไป Windows Server อนุญาตให้ rearm ได้ประมาณ 6 ครั้ง รวมแล้วราว 3 ปี พอเต็มโควตาจะขึ้น error


Error: 0xC004D307
The maximum allowed number of re-arms has been exceeded.

เจอข้อความนี้เมื่อไหร่แปลว่าหมดทางต่อชั่วคราวแล้ว ต้องไปทางถาวรอย่างเดียว


ขั้นที่ 3 — ทางออกถาวร แปลง Evaluation เป็นรุ่นมีลิขสิทธิ์

ถ้าเครื่องนี้ใช้งานจริง ไม่ใช่เครื่องทดสอบ นี่คือสิ่งที่ควรทำตั้งแต่แรก และดีกว่าการไล่ rearm ไปเรื่อย ๆ ข้อดีคือ ไม่ต้องลง Windows ใหม่ ไม่ต้องย้ายข้อมูล ทุกอย่างในเครื่องอยู่ครบเหมือนเดิม


1. ดูว่าตอนนี้เป็นรุ่นอะไร


DISM /online /Get-CurrentEdition

ถ้าได้ผลลัพธ์ลงท้ายด้วย Eval เช่น ServerStandardEval แปลว่าเป็นรุ่นทดลองใช้


2. ดูว่าแปลงเป็นรุ่นไหนได้บ้าง


DISM /online /Get-TargetEditions

3. แปลงรุ่นพร้อมใส่คีย์ที่ซื้อมาถูกต้อง


DISM /online /Set-Edition:ServerStandard /ProductKey:XXXXX-XXXXX-XXXXX-XXXXX-XXXXX /AcceptEula

ขั้นตอนนี้ใช้เวลาหลายนาทีและเครื่องจะรีสตาร์ตเอง 1–2 รอบ อย่าไปกดปิดกลางคัน


4. ยืนยันการ activate


slmgr /ato
slmgr /xpr

ถ้าได้ข้อความว่า "The machine is permanently activated" ก็จบงาน


ข้อจำกัดที่ต้องรู้ก่อนทำ (อ้างอิงจากเอกสารของ Microsoft)


  • เครื่องที่เป็น Domain Controller อยู่แล้ว แปลงไม่ได้ ต้อง demote ออกจากการเป็น DC ก่อน แล้วค่อย promote กลับทีหลัง
  • แปลงจาก Datacenter Evaluation ลงมาเป็น Standard ไม่ได้ (ขึ้นได้อย่างเดียว)
  • แปลงจาก Desktop Experience ไปเป็น Core ไม่ได้
  • รองรับตั้งแต่ Windows Server 2016, 2019, 2022 และ 2025

ถ้ามีคีย์อยู่แล้วและเครื่องไม่ใช่รุ่น Eval (แค่ activate ไม่ผ่าน) ใช้สองคำสั่งนี้ตรง ๆ ได้เลย


slmgr /ipk XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
slmgr /ato

วิธีที่หาเจอตามเน็ต แต่เราไม่แนะนำ

ค้นเรื่องนี้แล้วจะเจอทริคอยู่ 2–3 แบบ ทั้งการสั่งปิดเซอร์วิสที่ทำให้เครื่องดับ และการแก้เรจิสทรีเพื่อรีเซ็ตตัวนับ rearm ให้ต่ออายุได้ไม่รู้จบ


เราขอไม่ลงคำสั่งพวกนี้ให้ เพราะทั้งหมดคือการ หลบเลี่ยงเงื่อนไขสิทธิ์การใช้งานของ Microsoft ซึ่ง license แบบ Evaluation เขียนไว้ชัดว่าให้ใช้เพื่อ "ทดสอบและประเมินผล" เท่านั้น ห้ามใช้ในงานจริง (production) นอกจากเรื่องถูกผิดแล้ว ยังมีผลตามมาที่เจอจริงบ่อย ๆ คือเครื่องอัปเดตความปลอดภัยไม่ผ่าน ติดปัญหาตอนต่อกับระบบอื่น และถ้าเป็นเครื่องที่ใช้ทำธุรกิจก็ตรวจสอบย้อนหลังไม่ได้ว่าถูกต้องตามกฎหมาย


ถ้าเครื่องนั้นมีงานจริงรันอยู่ ซื้อคีย์ให้ถูกต้องแล้วแปลงรุ่นตามหัวข้อที่แล้วจะสบายใจกว่าเยอะ และไม่ต้องมาคอยลุ้นทุก 180 วัน


แล้วถ้าใช้ VPS ที่เช่าอยู่ล่ะ

กรณีนี้ขึ้นอยู่กับผู้ให้บริการแต่ละเจ้าว่าวางเงื่อนไขเรื่อง license ไว้ยังไง บางเจ้าคิดค่า license Windows รวมไปในแพ็กเกจแล้ว บางเจ้าให้ลูกค้าเตรียมคีย์มาเอง แนะนำให้ถามผู้ให้บริการก่อนจะไปลงมือแก้เอง จะได้ไม่ทำซ้ำซ้อนกัน


สำหรับ VPS ของ PTNK — เราให้ลูกค้าเป็นผู้จัดการ license ของ Windows เอง เพราะแต่ละคนมีคีย์และเงื่อนไขการใช้งานต่างกัน แต่ถ้าติดปัญหาตอนทำตามขั้นตอนข้างบน ทักหาทีมซัพพอร์ตคนไทยของเราได้ เราช่วยดูให้ว่าติดตรงไหน รันคำสั่งตรงไหนผิด หรือควรแปลงรุ่นแบบไหน (ถ้ายังต่อเครื่องไม่เป็น ดูวิธีที่บทความ วิธีเข้าใช้งาน VPS ผ่าน Remote Desktop · อยากเปลี่ยนรหัสเครื่องดูที่ วิธีเปลี่ยนรหัสผ่าน Windows Server · ต่อ Remote แล้วเจอ CredSSP ดูที่ แก้ Remote Desktop ขึ้น CredSSP)


ส่วนใครที่กำลังมองหา VPS สำหรับเปิดทิ้งไว้ 24 ชั่วโมง ไม่ว่าจะรันระบบงานธุรกิจหรือรัน EA เทรด Forex เรามีทั้งแพ็กเกจ VPS Business และ VPS Forex บนเครื่องที่ตั้งอยู่ในไทย ดูแลโดยทีมคนไทย


ดูแพ็กเกจ VPS


คำถามที่พบบ่อย (FAQ)

รัน slmgr /rearm แล้วข้อมูลในเครื่องหายไหม?

ไม่หาย คำสั่งนี้แตะแค่ส่วนของ license เท่านั้น ไฟล์ โปรแกรม และการตั้งค่าทุกอย่างอยู่ครบเหมือนเดิม แค่ต้องรีสตาร์ตเครื่องหนึ่งรอบ


slmgr /rearm ต่ออายุได้กี่ครั้ง?

โดยทั่วไป Windows Server ให้ rearm ได้ประมาณ 6 ครั้ง ครั้งละ 180 วัน รวมแล้วราว 3 ปี เช็กจำนวนที่เหลือได้ด้วย slmgr /dlv ที่บรรทัด Remaining Windows rearm count


ขึ้น error 0xC004D307 แปลว่าอะไร ทำยังไงต่อ?

แปลว่าใช้โควตา rearm ครบแล้ว ต่อชั่วคราวไม่ได้อีก ทางออกคือซื้อคีย์แล้วแปลงรุ่นด้วย DISM /Set-Edition หรือลง Windows ใหม่จากไฟล์ที่มี license ถูกต้อง


แปลง Evaluation เป็นรุ่นเต็มต้องลง Windows ใหม่ไหม?

ไม่ต้อง ใช้ DISM /Set-Edition แปลงทับได้เลย ข้อมูลและโปรแกรมอยู่ครบ ยกเว้นกรณีที่เครื่องเป็น Domain Controller ต้อง demote ก่อน


Windows Server 2025 ใช้วิธีเดียวกันไหม?

ใช้ได้เหมือนกัน ทั้ง slmgr /rearm และการแปลงรุ่นด้วย DISM รองรับตั้งแต่ Windows Server 2016 เป็นต้นมา รวมถึง 2022 และ 2025


เครื่องยังดับทุกชั่วโมงอยู่ ทั้งที่ rearm ผ่านแล้ว

เช็กว่ารีสตาร์ตเครื่องหลังรันคำสั่งแล้วหรือยัง ถ้ารีสตาร์ตแล้วยังเป็นอยู่ ให้รัน slmgr /xpr ดูว่าวันหมดอายุขยับจริงไหม ถ้าไม่ขยับแปลว่า rearm ไม่สำเร็จ (อาจไม่ได้เปิด Command Prompt แบบ Administrator)


สรุป

Windows Server ที่ขึ้น expired แล้วดับเองทุกชั่วโมง เกือบทั้งหมดคือรุ่น Evaluation ที่ครบ 180 วัน แก้เฉพาะหน้าได้ด้วย slmgr /rearm แล้วรีสตาร์ต ซึ่งซื้อเวลาให้อีก 180 วัน แต่ทำได้จำกัดจำนวนครั้ง ถ้าเป็นเครื่องที่มีงานจริงรันอยู่ ทางที่คุ้มกว่าคือหาคีย์ให้ถูกต้องแล้วแปลงเป็นรุ่นมีลิขสิทธิ์ด้วย DISM จบในครั้งเดียว ไม่ต้องกลับมานั่งแก้ทุกครึ่งปี


ใครกำลังมองหาเครื่องเปิดทิ้งไว้ 24 ชั่วโมง PTNK มีทั้ง VPS Business สำหรับงานธุรกิจ และ VPS Forex สำหรับรัน EA ตั้งอยู่ใน Data Center ในไทย ดูแลโดยทีมคนไทย