Compare Function ifisserial ()
Dim owsh
Dim strserial
Dim arrserial
Dim Strchar
Dim IDX
Dim isummary
On Error Resume Next
Set WshShell = Server.CreateObject ("Wscript.Shell")
Strserial = WshShell.RegRead ("Hklm\software\asong\wjdh\productid")
Set WshShell = Nothing
If Len (strserial) <>23 Then
Ifisserial = False
Exit function
End If
arrserial = Split (Strserial, "-")
if (UBound (arrserial)-lbound (arrserial)) <>3 Then
Ifisserial = False
Exit function
End If
Isummary = 0
strserial = arrserial (0)
IDX = 1
Do While IDX <= 5
Strchar = Mid (strserial, IDX, 1)
Isummary = Isummary + (ASC (strchar) * 4)
IDX = idx + 1
Loop
Strserial = arrserial (1)
IDX = 1
Do While IDX <= 5
Strchar = Mid (strserial, IDX, 1)
Isummary = isummary + ASC (strchar) * 3
IDX = idx + 1
Loop
Strserial = arrserial (2)
IDX = 1
Do While IDX <= 5
Strchar = Mid (strserial, IDX, 1)
Isummary = isummary + ASC (strchar) * 2
IDX = idx + 1
Loop
Strserial = arrserial (3)
IDX = 1
Do While IDX <= 5
Strchar = Mid (strserial, IDX, 1)
Isummary = isummary + ASC (strchar)
IDX = idx + 1
Loop
If isummary <> 3364 Then
Ifisserial = False
Else
Ifisserial = True
End If
End Function