|
Postada em 22/12/2004 17:03 hs
Vc não teria q chamar a function? pq colocou ela dentro lo loop? tipo: AuxShr(100, 2) ai vc pode usar a variavel AuxShr acho q eh isso... naum testei... falow...
|
|
|
|
|
Postada em 22/12/2004 17:07 hs
Bom, eu acho q vc tinha q chamar a Function, neh? e não colocar ela dentro do lop... se for pra chamar eu acho q eh assim: AuxShr(100, 2) ai vc usa a variavel AuxShr se naum cara, coloca logo os codigos da função dentro do lop, so q sem a linha "private function aux..." acho q eh isso,,, naum testei... falow...
|
|
|
|
Postada em 22/12/2004 17:09 hs
Se eu remover toda a cláusula Private ocorre o seguinte erro: Error Type: Microsoft VBScript runtime (0x800A000D) Type mismatch: 'AuxShr' /online/cadastro/mudasenha.asp, line 37
|
|
|
|
Postada em 22/12/2004 17:11 hs
Companheiro, Retire a função do loop e tire tb o private. Se preocupa não que a chamada da função ainda vai continuar no loop por isso ela vai ser executada para cada registro. Tenta isso: <% 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>" Loop 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 %>
|
|
|
|
Postada em 22/12/2004 17:49 hs
GRANDE ERICO !!! MEUS PARABÉNS !!! VOCÊ ACERTOU. MUITO OBRIGADO MEU AMIGO. E TENHA UM FELIZ NATAL E UM PRÓSPERO ANO NOVO. DESEJO À TODOS QUE TAMBÉM TENTARAM ME AJUDAR. ABRAÇOS, BILBO.
|
|
|
|
Postada em 22/12/2004 18:39 hs
Olá! Dá erro, pois você tem que colocar a função fora do laço e apenas chamá-la dentro dele. <% 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 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>" Loop %> Abraço!
|
|
|