Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

gandalf.nho

em ASP .NET com Delphi

Recommended Posts

Estou desenvolvendo um sistema em ASP .NET 1.1 usando o BDS 2006 e como é meu primeiro sistema em ASP .NET estou com alguns problemas que não acho solução e já estou atrasada com o sistema.

 

1 - Alguém sabe se existe algum componente que facilite a entrada de datas que seja compatível com ASP .NET 1.1 e que não seja o Calendar? Pode ser um MaskEdit, DatePicker, qualquer coisa no estilo. Tudo o que achei até o momento é pago e/ou para ASP .NET 2.0 (o único 1.1 gratuito que achei dá erro na execução do aplicativo)

 

2 - Estou implementando um sistema para gravar senhas criptografadas no banco de dados, mas estou tendo dificuldades para encontrar exemplos de como fazer isso. O pouco que encontro está em VB .NET ou C# e geralmente não é exatamente o que preciso, o máximo que encontrei em Delphi .NET foi para usar hashes, mas eu preciso de criptografia simétrica, já que será necessário recuperar as senhas depois. Também fui atrás de componentes que facilitassem o serviço, mas novamente só encontro pagos e/ou para .NET 2.0. O único gratuito que encontrei está gerando a criptografia direitinho, mas dependendo da string gerada essa é gravada de forma incorreta no banco (até CTRL+C, CTRL+V dá problemas) impedindo que seja descriptografada.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu achei o conversor C# para Delphi .NET (no próprio site da Codegear) e converti um exemplo em C#, mas está dando um erro e não sei pq:

 

Trecho original em C#

private byte[] GetLegalKey(string Key)
		{
			string sTemp;
			if (mobjCryptoService.LegalKeySizes.Length > 0)
			{
				int lessSize = 0, moreSize = mobjCryptoService.LegalKeySizes[0].MinSize;
				// key sizes are in bits
				while (Key.Length * 8 > moreSize)
				{
					lessSize = moreSize;
					moreSize += mobjCryptoService.LegalKeySizes[0].SkipSize;
				}
				sTemp = Key.PadRight(moreSize / 8, ' ');
			}
			else
				sTemp = Key;

			// convert the secret key to byte array
			return ASCIIEncoding.ASCII.GetBytes(sTemp);
		}

Convertido pela ferramenta:

function SymmCrypto.GetLegalKey(Key: string): TArrayOfByte;
var
  moreSize: Integer;
  lessSize: Integer;
  sTemp: string;
begin
  if (Self.mobjCryptoService.LegalKeySizes.Length > 0) then
  begin
	lessSize := 0;
	moreSize := Self.mobjCryptoService.LegalKeySizes[0].MinSize;
	while (Key.Length * (8 > moreSize)) do
	begin
	  Self.lessSize := moreSize;
	end;
	sTemp := Key.PadRight((moreSize / 8), ' ');
  end
  else
	sTemp := Key;
  Result := ASCIIEncoding.ASCII.GetBytes(sTemp);
end;

Estão aparecendo 2 erros na hora de compilar. Nessa linha:

if (Self.mobjCryptoService.LegalKeySizes.Length > 0) then
acusa "Record ou classe type required"

 

e nessa aqui:

while (Key.Length * (8 > moreSize)) do
acusa "Operator not applicable to this operand type"

 

 

 

Eu preciso resolver esse problema da criptografia. Será que ninguém aqui já trabalhou com isso em Delphi .NET?

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.