Common Issues

Common Windows Server Issues

Solutions to frequent Windows VPS errors - expired license, missing DLLs, locked account, firewall and more

Windows license expired ("The default license has expired")

This error appears when trial license or KMS license is not renewed.

Check license status

slmgr /xpr          # expiration date
slmgr /dli          # basic license info
slmgr /dlv          # detailed info

If you have KMS license (enterprise/datacenter)

# Activate via KMS server
slmgr /skms kms.server.com:1688
slmgr /ato

# Verify activation
slmgr /xpr

If you have OEM/Retail license

Enter the product key:

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

Grace period

If license expired recently you can reset the timer (up to 3 times):

slmgr /rearm
Restart-Computer

User account locked

"Your account has been locked out": too many failed login attempts.

# Unlock a specific account
Unlock-ADAccount -Identity "username"

# For local accounts (not domain)
net user username /active:yes

# See all locked accounts
Search-ADAccount -LockedOut | Select-Object Name, SamAccountName

# See account lockout policy
net accounts

To change lockout threshold (reduce false positives):

secpol.msc → Account Policies → Account Lockout Policy
→ Account lockout threshold: increase from 3 to 10
→ Account lockout duration: 15 minutes
→ Reset account lockout counter: 15 minutes

Missing DLL problems

"The program can't start because X.dll is missing"

Basic solutions

# Repair Windows system files
sfc /scannow

# Update Windows store components (often resolves DLL runtime issues)
Get-AppXPackage -AllUsers | Foreach {Add-AppxPackage -DisableDevelopmentMode -Register "$($_.InstallLocation)\AppXManifest.xml" -ErrorAction SilentlyContinue}

# Restore Windows image
DISM /Online /Cleanup-Image /RestoreHealth

Visual C++ Redistributable DLL

Many DLLs (vcruntime140.dll, msvcp140.dll, etc.) require Visual C++ Redistributable:

# Install via winget (all common runtimes)
winget install Microsoft.VCRedist.2015+.x64
winget install Microsoft.VCRedist.2015+.x86
winget install Microsoft.VCRedist.2013.x64
winget install Microsoft.VCRedist.2012.x64
winget install Microsoft.VCRedist.2010.x64

Missing .NET Runtime

# Check installed .NET versions
dotnet --list-runtimes

# Install specific .NET Runtime
winget install Microsoft.DotNet.Runtime.8
winget install Microsoft.DotNet.Runtime.6

Disable Windows Firewall

Disable firewall only if you use an external firewall (hardware or network-level). On a server exposed to internet without alternative protection, never disable the firewall.

# Disable all profiles (Domain, Private, Public)
Set-NetFirewallProfile -Profile Domain,Public,Private -Enabled False

# Only public profile
Set-NetFirewallProfile -Profile Public -Enabled False

# Re-enable
Set-NetFirewallProfile -Profile Domain,Public,Private -Enabled True

Restore firewall rules to defaults

# Complete reset (removes all custom rules)
netsh advfirewall reset

# Or via GUI: wf.msc → Restore Default Policy

Generic Windows internal errors

Check Event Viewer

# Last 20 critical errors
Get-WinEvent -LogName Application -MaxEvents 100 | Where-Object {$_.Level -le 2} | Select-Object TimeCreated, Id, Message | Select-Object -First 20

# System errors
Get-WinEvent -LogName System -MaxEvents 100 | Where-Object {$_.Level -le 2} | Select-Object TimeCreated, Id, ProviderName, Message | Select-Object -First 20

Via GUI: eventvwr.msc → Windows Logs → Application/System → filter for "Critical" and "Error".

Check crash logs (BSOD, minidump)

# See latest crashes
Get-WinEvent -LogName System | Where-Object {$_.Id -eq 41} | Select-Object -First 5

# Minidump path
ls C:\Windows\Minidump\ | Sort-Object LastWriteTime -Descending | Select-Object -First 5

Speed up Google Drive / MEGA downloads on Windows VPS

Downloads from Google Drive and MEGA via browser on RDP are slow because they go through the browser "Open" button.

For Google Drive:

# Install gdown (Python)
pip install gdown
gdown "https://drive.google.com/uc?id=FILE_ID" -O output.zip

# Or with rclone
winget install Rclone.Rclone
rclone copy gdrive:/ C:\download\ --drive-shared-with-me

For MEGA:

# MEGAcmd (official MEGA command-line tool)
# Download from: https://mega.io/cmd
mega-get "https://mega.nz/file/..." C:\download\

Install WMIC on Windows Server 2025

WMIC was removed from Windows Server 2025. Use PowerShell alternatives:

# Old: wmic cpu get name
# New:
(Get-CimInstance Win32_Processor).Name

# Old: wmic os get Caption
(Get-CimInstance Win32_OperatingSystem).Caption

# Old: wmic computersystem get TotalPhysicalMemory
(Get-CimInstance Win32_ComputerSystem).TotalPhysicalMemory / 1GB

# Compatibility script: create a wmic-like function
function wmic-info {
    $cpu = (Get-CimInstance Win32_Processor).Name
    $os = (Get-CimInstance Win32_OperatingSystem).Caption
    $ram = [math]::Round((Get-CimInstance Win32_ComputerSystem).TotalPhysicalMemory / 1GB, 2)
    "CPU: $cpu | OS: $os | RAM: $ram GB"
}
wmic-info

On this page