|
Postada em 22/12/2004 11:33 hs
Estou colocando uma chamada de função dentro de um loop Do While e quando rodo o sistema me ocorre um erro. quando coloco a função fora do Loop funciona, mas preciso que ela esteja dentro do loop para rodar a cada registro do banco. A função é a seguinte: Private Function AuxShr(Numero, BShr) AuxShr = Int(Numero / (2 ^ BShr)) End Function O que fazer para não ocorrer erro no loop ? Desde já agradeço a ajuda. Bilbo.
|
|
|
|
|
Postada em 22/12/2004 13:15 hs
Private Function AuxShr(Numero, BShr) if (2 ^ BShr) <> 0 then 'não deixa dividir por zero AuxShr = Int(Numero / (2 ^ BShr)) else AuxShr = 0 end if End Function
|
|
|
|
Postada em 22/12/2004 14:29 hs
O erro não é na divisão e sim no Private Function. Veja a seguir: Error Type: Microsoft VBScript compilation (0x800A03EA) Syntax error /online/cadastro/mudasenha.asp, line 41, column 8 Private Function AuxShr(Numero, BShr) -------^
|
|
|
|
Postada em 22/12/2004 16:17 hs
Remova a cláusula Private, toda funcção em ASP já é privada, a menos que você faça um include do arquivo.
VBWEB - O Portal do Desenvolvedor
Agora o VBWEB também hospeda sites! isto mesmo! conheçam os planos do VBWEB Hosting
|
|
|
|
Postada em 22/12/2004 16:18 hs
Manda tb o código do loop.
|
|
|
|
Postada em 22/12/2004 16:23 hs
Ok, segue abaixo: <% Do while X = 0 X = X +1 'CRIPTOGRAFANDO -------------------- TempStr = UCASE("Senha") TempResult = "" TempKey = ((EncKey * EncC1) + EncC2) Mod 65536 For i = 1 To Len(TempStr) TempNum = (Asc(Mid(TempStr, i, 1)) Xor (AuxShr(TempKey, 8))) Mod 256 TempChar = Chr(TempNum) TempKey = (((Asc(TempChar) + TempKey) * EncC1) + EncC2) Mod 65536 TempResult = TempResult & TempChar Next '--------------------------------------------FIM DA CRIPTOGRAFIA Response.write "<BR>Nova Senha: " & TempResult & "<hr>" Private Function AuxShr(ByVal Numero, ByVal BShr) if (2 ^ BShr) <> 0 then 'não deixa dividir por zero AuxShr = Int(Numero / (2 ^ BShr)) else AuxShr = 0 end if End Function Loop %> Repare que se remover o Private Function do Loop o programa funciona. Um grande abraço, Bilbo
|
|
|