Some strange behavior with this script modified just a bit. Riddle me this...
This returns 8 chars as specified:
code:
udfPWGen(8,"vfewgc000v") ?
Function udfPWGen($iLength,Optional $sSeed)
Dim $sTerminal,$sNonTerminal,$iIndex,$iSeed
$sTerminal=$sTerminal+"BCDFGHJKLMNPQRSTVWXYZ"
$sTerminal=$sTerminal+"bcdfghjklmnpqrstvwxyz"
$sNonTerminal="0123456789"
For $iIndex=1 To Len($sSeed)
$iSeed=$iSeed+Asc(SubStr($sSeed,$iIndex,1))
Next
Srnd($iSeed*@monthno)
For $iIndex=1 to $iLength
$sSelectFrom=IIF($iIndex=1 OR $iIndex=$iLength,$sTerminal,$sTerminal+$sNonTerminal)
$udfPWGen=$udfPWGEn+Cstr(Substr($sSelectFrom,(Rnd(Len($sSelectFrom))+1),1))
Next
EndFunction
This also returns 8 even though I specified 9
code:
udfPWGen(9,"vfewgc000v") ?
Function udfPWGen($iLength,Optional $sSeed)
Dim $sTerminal,$sNonTerminal,$iIndex,$iSeed
$sTerminal=$sTerminal+"BCDFGHJKLMNPQRSTVWXYZ"
$sTerminal=$sTerminal+"bcdfghjklmnpqrstvwxyz"
$sNonTerminal="0123456789"
For $iIndex=1 To Len($sSeed)
$iSeed=$iSeed+Asc(SubStr($sSeed,$iIndex,1))
Next
Srnd($iSeed*@monthno)
For $iIndex=1 to $iLength
$sSelectFrom=IIF($iIndex=1 OR $iIndex=$iLength,$sTerminal,$sTerminal+$sNonTerminal)
$udfPWGen=$udfPWGEn+Cstr(Substr($sSelectFrom,(Rnd(Len($sSelectFrom))+1),1))
Next
EndFunction
This returns only 9 even though 10 specified.
code:
udfPWGen(10,"vfewgc000v") ?
Function udfPWGen($iLength,Optional $sSeed)
Dim $sTerminal,$sNonTerminal,$iIndex,$iSeed
$sTerminal=$sTerminal+"BCDFGHJKLMNPQRSTVWXYZ"
$sTerminal=$sTerminal+"bcdfghjklmnpqrstvwxyz"
$sNonTerminal="0123456789"
For $iIndex=1 To Len($sSeed)
$iSeed=$iSeed+Asc(SubStr($sSeed,$iIndex,1))
Next
Srnd($iSeed*@monthno)
For $iIndex=1 to $iLength
$sSelectFrom=IIF($iIndex=1 OR $iIndex=$iLength,$sTerminal,$sTerminal+$sNonTerminal)
$udfPWGen=$udfPWGEn+Cstr(Substr($sSelectFrom,(Rnd(Len($sSelectFrom))+1),1))
Next
EndFunction
I cannot replicate the error with any other input besides 'vfewgc000v', but this input certainly doesn't work right.