function IsSSD(optional $Letter)
Dim $oWMI, $Instances, $Instance, $DiskNumber
if val(@dos)>=6.2 ; Windows 8 or Higher
if $letter=""
$letter="C"
endif
if right($letter,1)=":"
$letter=left($letter,1)
endif
$letter=ucase($letter)
$oWMI = GetObject("WINMGMTS:\\.\ROOT\Microsoft\Windows\Storage")
$Instances = $oWMI.InstancesOf("MSFT_PhysicalDisk", 1)
$DiskNumber = GetObject("WINMGMTS:\\.\ROOT\Microsoft\Windows\Storage").ExecQuery("Select * from MSFT_Partition WHERE DriveLetter='" + $Letter + "'").ItemIndex(0).DiskNumber
For Each $Instance In $Instances
if $instance.DeviceID=$DiskNumber
if $instance.Mediatype=4 and $instance.SpindleSpeed=0
$IsSSD=1
endif
endif
Next
endif
EndFunction